How to use the @glimmer/vm.Op.Enter function in @glimmer/vm

To help you get started, we’ve selected a few @glimmer/vm examples, based on popular ways it is used in public projects.

Secure your code as it's written. Use Snyk Code to scan source code in minutes - no build needed - and fix issues immediately.

github glimmerjs / glimmer-vm / packages / @glimmer / runtime / lib / compiled / opcodes / vm.ts View on Github external
let names = vm.constants.getArray(_names);
  vm.bindDynamicScope(names);
});

APPEND_OPCODES.add(Op.PushFrame, vm => {
  vm.pushFrame();

  check(vm.stack.peek(), CheckNumber);
  check(vm.stack.peek(1), CheckNumber);
});

APPEND_OPCODES.add(Op.PopFrame, vm => {
  vm.popFrame();
});

APPEND_OPCODES.add(Op.Enter, (vm, { op1: args }) => {
  vm.enter(args);
});

APPEND_OPCODES.add(Op.Exit, vm => {
  vm.exit();
});

APPEND_OPCODES.add(Op.PushSymbolTable, (vm, { op1: _table }) => {
  let stack = vm.stack;
  stack.push(vm.constants.getSymbolTable(_table));
});

APPEND_OPCODES.add(Op.CompileBlock, vm => {
  let stack = vm.stack;
  let block = stack.pop | 0>();
  stack.push(block ? block.compile() : null);
github glimmerjs / glimmer-vm / packages / @glimmer / runtime / lib / compiled / opcodes / vm.ts View on Github external
vm.fetch(register);
  },
  OpcodeKind.Mut
);

APPEND_OPCODES.add(
  Op.BindDynamicScope,
  (vm, { op1: _names }) => {
    let names = vm[CONSTANTS].getArray(_names);
    vm.bindDynamicScope(names);
  },
  OpcodeKind.Mut
);

APPEND_OPCODES.add(
  Op.Enter,
  (vm, { op1: args }) => {
    vm.enter(args);
  },
  OpcodeKind.Mut
);

APPEND_OPCODES.add(
  Op.Exit,
  vm => {
    vm.exit();
  },
  OpcodeKind.Mut
);

APPEND_OPCODES.add(
  Op.PushSymbolTable,