Class DeclaredReturnFrame

java.lang.Object
dev.frostlake.executor.DeclaredReturnFrame

public final class DeclaredReturnFrame extends Object
The declared RETURNS type of the procedure whose body is running, with the block and compound depths its body started at — what tells a RETURN written directly in that body (the one live converts to the declared type) from one nested in an IF, a loop, a handler or an inner block (kept as it is). A CALL pushes a frame and puts the caller's back afterwards, so nested calls each see their own.
  • Constructor Details

    • DeclaredReturnFrame

      public DeclaredReturnFrame(DataType type, int blockDepth, int compoundDepth, Set<String> parameterNames)
  • Method Details

    • getType

      public DataType getType()
      The declared RETURNS type, or null for a table-returning or untyped body.
    • getBlockDepth

      public int getBlockDepth()
      The block depth outside the body: the body's own block is one deeper.
    • getCompoundDepth

      public int getCompoundDepth()
      The compound-statement depth outside the body.
    • getParameterNames

      public Set<String> getParameterNames()
      The names the procedure's signature declares, as its parameters store them.