Interpreter
The interpreter: the one Evaluator this engine has. It runs the icode CodeGenerator emits, one call frame per script function, with the frames linked so an exception or a yield can unwind them without touching the host stack.
Upstream keeps a table of one object per opcode; this port dispatches with a when over the same opcodes, which is what older Rhino did. The cases are the same code (D-30).
Continuations (NativeContinuation, captureContinuation) are not ported (D-31).
Functions
Records where in the script ex was thrown.
Compiles tree into a runnable form.
Wraps compiled bytecode as a runnable script.
There is no host stack trace to patch off the JVM, so the trace comes back as given.
The script-level stack for ex, one entry per frame.
Reads the current source position off the interpreter stack. The line number is written to linep[0]; the return value is the source name.
Marks script as having come from eval or the Function constructor.