internal REProgState previous; // previous state in stack #endregion Fields #region Constructors internal REProgState(REProgState previous, int min, int max, int index, REBackTrackData backTrack, int continuation_pc, int continuation_op) { this.previous = previous; this.min = min; this.max = max; this.index = index; this.continuation_op = continuation_op; this.continuation_pc = continuation_pc; this.backTrack = backTrack; }
internal REProgState stateStackTop; /* state of op that backtracked */ #endregion Fields #region Constructors internal REBackTrackData(REGlobalData gData, int op, int pc) { previous = gData.backTrackStackTop; continuation_op = op; continuation_pc = pc; lastParen = gData.lastParen; if (gData.parens != null) { parens = new long [gData.parens.Length]; gData.parens.CopyTo (parens, 0); } cp = gData.cp; stateStackTop = gData.stateStackTop; }