Exemple #1
0
        public virtual void Return(Scope returningFromScope, ActionSet returningSet)
        {
            if (returningSet.IsRecursive)
            {
                returningFromScope.EndScope(returningSet, true);

                foreach (var recursiveIndexReference in AdditionalPopOnReturn)
                {
                    returningSet.AddAction(recursiveIndexReference.Pop());
                }
            }

            SkipStartMarker returnSkipStart = new SkipStartMarker(returningSet);

            returningSet.AddAction(returnSkipStart);
            _skips.Add(returnSkipStart);
        }