public void ApplyPrematchData(Pred pred, DList <Prematched> path) { _path = path; _index = 0; _reachedInnerAlts = false; pred.Call(this); }
new public void Visit(Pred pred) { var old = _currentPred; _currentPred = pred; pred.Call(this); _currentPred = old; }
private bool VisitAndReplace(ref Pred p) { Debug.Assert(Replacement == null); p.Call(this); if (Replacement != null) { p = Replacement; Replacement = null; return(true); } return(false); }
new public void Visit(Pred pred) { if (pred.PreAction != null && !_recognizerMode) { AddUserAction(pred.PreAction); } var old = _currentPred; _currentPred = pred; pred.Call(this); _currentPred = old; if (pred.PostAction != null && !_recognizerMode) { AddUserAction(pred.PostAction); } }
public void Visit(Pred pred) { pred.Call(this); }