diff options
| author | Mel <einebeere@gmail.com> | 2022-08-31 14:22:28 +0000 |
|---|---|---|
| committer | Mel <einebeere@gmail.com> | 2022-08-31 14:22:28 +0000 |
| commit | aeb63ade341572bb307f23ff7c501c48957cc7d4 (patch) | |
| tree | 93cea2e714a212a4a93cc567951a18e6dff4e2f3 /pkg/lang/vm/exec.go | |
| parent | c935cde4c4ec65192d51933202e270da1e4d2050 (diff) | |
| download | jinx-aeb63ade341572bb307f23ff7c501c48957cc7d4.tar.zst jinx-aeb63ade341572bb307f23ff7c501c48957cc7d4.zip | |
Remove temporary array operations
Diffstat (limited to 'pkg/lang/vm/exec.go')
| -rw-r--r-- | pkg/lang/vm/exec.go | 53 |
1 files changed, 0 insertions, 53 deletions
diff --git a/pkg/lang/vm/exec.go b/pkg/lang/vm/exec.go index 0ace13a..bca4e03 100644 --- a/pkg/lang/vm/exec.go +++ b/pkg/lang/vm/exec.go @@ -1077,56 +1077,3 @@ func (vm *VM) execRet() error { vm.setPos(pos) return nil } - -func (vm *VM) execTempArrLen() error { - a, err := vm.stack.Pop() - if err != nil { - return err - } - - switch a.Type() { - case value.ArrayType: - arr := a.Data().(value.ArrayData) - len, err := arr.Len(vm.memory) - if err != nil { - return err - } - res := value.NewInt(int64(len)) - vm.stack.Push(res) - - if err := a.Drop(vm.memory); err != nil { - return err - } - default: - return ErrInvalidOperandTypes{ - Op: code.OpTempArrLen, - X: a.Type(), - } - } - - return nil -} - -func (vm *VM) execTempArrPush() error { - e, err := vm.popAndDrop() - if err != nil { - return err - } - a, err := vm.popAndDrop() - if err != nil { - return err - } - - switch a.Type() { - case value.ArrayType: - arr := a.Data().(value.ArrayData) - arr.Push(vm.memory, e) - default: - return ErrInvalidOperandType{ - Op: code.OpTempArrPush, - X: a.Type(), - } - } - - return nil -} |
