public static DynValue upvaluejoin(ScriptExecutionContext executionContext, CallbackArguments args) { DynValue f1 = args.AsType(0, "upvaluejoin", DataType.Function, false); DynValue f2 = args.AsType(2, "upvaluejoin", DataType.Function, false); int n1 = args.AsInt(1, "upvaluejoin") - 1; int n2 = args.AsInt(3, "upvaluejoin") - 1; Closure c1 = f1.Function; Closure c2 = f2.Function; if (n1 < 0 || n1 >= c1.ClosureContext.Count) { throw ScriptRuntimeException.BadArgument(1, "upvaluejoin", "invalid upvalue index"); } if (n2 < 0 || n2 >= c2.ClosureContext.Count) { throw ScriptRuntimeException.BadArgument(3, "upvaluejoin", "invalid upvalue index"); } var d = c1.ClosureContext[n1]; c2.ClosureContext.ReplaceWith(n2, c1.ClosureContext[n1]); return(DynValue.Void); }
private static int[] BuildArrayIndices(CallbackArguments args, int count) { int[] indices = new int[count]; for (int i = 0; i < count; i++) indices[i] = args.AsInt(i, "userdata_array_indexer"); return indices; }
private static int[] BuildArrayIndices(CallbackArguments args, int count) { var indices = new int[count]; for (int i = 0; i < count; i++) { indices[i] = args.AsInt(i, "userdata_array_indexer"); } return(indices); }
public static DynValue upvaluejoin(ScriptExecutionContext executionContext, CallbackArguments args) { var f1 = args.AsType(0, "upvaluejoin", DataType.Function); var f2 = args.AsType(2, "upvaluejoin", DataType.Function); int n1 = args.AsInt(1, "upvaluejoin") - 1; int n2 = args.AsInt(3, "upvaluejoin") - 1; var c1 = f1.Function; var c2 = f2.Function; if (n1 < 0 || n1 >= c1.ClosureContext.Count) { throw ScriptRuntimeException.BadArgument(1, "upvaluejoin", "invalid upvalue index"); } if (n2 < 0 || n2 >= c2.ClosureContext.Count) { throw ScriptRuntimeException.BadArgument(3, "upvaluejoin", "invalid upvalue index"); } c2.ClosureContext[n2] = c1.ClosureContext[n1]; return(DynValue.Void); }
public static DynValue upvaluejoin(ScriptExecutionContext executionContext, CallbackArguments args) { var f1 = args.AsType(0, "upvaluejoin", DataType.Function, false); var f2 = args.AsType(2, "upvaluejoin", DataType.Function, false); var n1 = args.AsInt(1, "upvaluejoin") - 1; var n2 = args.AsInt(3, "upvaluejoin") - 1; var c1 = f1.Function; var c2 = f2.Function; if (n1 < 0 || n1 >= c1.ClosureContext.Count) throw ScriptRuntimeException.BadArgument(1, "upvaluejoin", "invalid upvalue index"); if (n2 < 0 || n2 >= c2.ClosureContext.Count) throw ScriptRuntimeException.BadArgument(3, "upvaluejoin", "invalid upvalue index"); c2.ClosureContext[n2] = c1.ClosureContext[n1]; return DynValue.Void; }