private QuantifierStackFrame(StackFrame parent, IConsList<BasePattern> remainingChildren, bool isGreedy, int lastPosition) : base(parent, remainingChildren) { IsGreedy = isGreedy; LastPosition = lastPosition; }
public BacktrackPoint(BacktrackPoint previous, StackFrame callStack, Result<char, int> partialResult) { Previous = previous; CallStack = callStack; PartialResult = partialResult; }
public GroupStackFrame(StackFrame parent, IConsList<BasePattern> remainingChildren) : base(parent, remainingChildren) { }
public GroupStackFrame(StackFrame parent, params BasePattern[] remainingChildren) : this(parent, new ArrayConsList<BasePattern>(remainingChildren)) { }
protected StackFrame(StackFrame parent, IConsList<BasePattern> remainingChildren) { Parent = parent; RemainingChildren = remainingChildren; }
private StackFrame unwindEmptyFrames(StackFrame callStack) { while (callStack != null && callStack.RemainingChildren.IsEmpty) callStack = callStack.Parent; return callStack; }
public QuantifierStackFrame(StackFrame parent, QuantifierPattern quant) : this(parent, new RepeaterConsList<BasePattern>(quant.ChildPattern, quant.MaxOccurrences), quant.IsGreedy, -1) { if (quant.MinOccurrences != 0) quant.AssertCanonicalForm(); }