public EarleStackFrame(EarleRuntime runtime, EarleFunction function, IEarleStackFrameExecutor executor, int callerIp, EarleStackFrame superFrame, EarleThread thread) { if (runtime == null) throw new ArgumentNullException(nameof(runtime)); if (thread == null) throw new ArgumentNullException(nameof(thread)); Runtime = runtime; ParentFrame = superFrame; Executor = executor; CallerIP = callerIp; Function = function; Thread = thread; }
internal EarleStackFrame SpawnChild(EarleFunction function, IEarleStackFrameExecutor executor, int callerIp) { return new EarleStackFrame(Runtime, function, executor, callerIp, this, Thread); }