Exemple #1
0
        internal async Task EnterStep(UserProcess process, Step step)
        {
            if (frames.Count >= MaxStackSize)
            {
                throw new CursiveRunException(this, $"The maximum call depth ({MaxStackSize}) has been exceeded. Possible infinite loop detected.");
            }

            var frame = CreateFrame(process, step);

            await Push(frame);
        }
Exemple #2
0
 internal virtual StackFrame CreateFrame(UserProcess process, Step step)
 {
     return(new StackFrame(process, step, CurrentVariables));
 }
Exemple #3
0
        internal async Task EnterNewProcess(UserProcess process, StartStep step, ValueSet variables)
        {
            CurrentVariables = variables;

            await EnterStep(process, step);
        }