feat(tvix/eval): add local identifier access

This makes basic `let ... in ...` statements work correctly. It does
not yet account for the call frames pushed into the VM during function
application.

Change-Id: I67155171daf1a43011b96716dd9d1ab04b27db33
Reviewed-on: https://cl.tvl.fyi/c/depot/+/6190
Tested-by: BuildkiteCI
Reviewed-by: grfn <grfn@gws.fyi>
This commit is contained in:
Vincent Ambo 2022-08-13 20:17:25 +03:00 committed by tazjin
parent 2d401a32e5
commit 342b233a0a
4 changed files with 31 additions and 1 deletions

View file

@ -62,6 +62,9 @@ pub enum OpCode {
// Type assertion operators
OpAssertBool,
// Access local identifiers with statically known positions.
OpGetLocal(usize),
// Close scopes while leaving their expression value around.
OpCloseScope(usize), // number of locals to pop
}