class Nydp::InterpretedFunctionWithClosure
Public Instance Methods
execute(vm)
click to toggle source
# File lib/nydp/interpreted_function.rb, line 199 def execute vm Closure.new(self, vm.current_context) # vm.push_arg Closure.new(self, vm.current_context) end
invoke(vm, ctx, arg_values)
click to toggle source
# File lib/nydp/interpreted_function.rb, line 190 def invoke vm, ctx, arg_values cc = vm.current_context vm.current_context = set_args(ctx, arg_values) res = run_body(vm) vm.current_context = cc res # vm.push_instructions self.body, set_args(ctx, arg_values) end
invoke_1(vm, ctx)
click to toggle source
# File lib/nydp/interpreted_function.rb, line 154 def invoke_1 vm, ctx cc = vm.current_context vm.current_context = set_args_0(ctx) res = run_body(vm) vm.current_context = cc res # vm.push_instructions self.body, set_args_0(ctx) end
invoke_2(vm, ctx, arg)
click to toggle source
# File lib/nydp/interpreted_function.rb, line 163 def invoke_2 vm, ctx, arg cc = vm.current_context vm.current_context = set_args_1(ctx, arg) res = run_body(vm) vm.current_context = cc res # vm.push_instructions self.body, set_args_1(ctx, arg) end
invoke_3(vm, ctx, arg_0, arg_1)
click to toggle source
# File lib/nydp/interpreted_function.rb, line 172 def invoke_3 vm, ctx, arg_0, arg_1 cc = vm.current_context vm.current_context = set_args_2(ctx, arg_0, arg_1) res = run_body(vm) vm.current_context = cc res # vm.push_instructions self.body, set_args_2(ctx, arg_0, arg_1) end
invoke_4(vm, ctx, arg_0, arg_1, arg_2)
click to toggle source
# File lib/nydp/interpreted_function.rb, line 181 def invoke_4 vm, ctx, arg_0, arg_1, arg_2 cc = vm.current_context vm.current_context = set_args_3(ctx, arg_0, arg_1, arg_2) res = run_body(vm) vm.current_context = cc res # vm.push_instructions self.body, set_args_3(ctx, arg_0, arg_1, arg_2) end