public object VisitAlternation(AlternationNode alt) { tabWrite("Alt"); level++; tabWrite("Left"); level++; alt.Left.Visit(this); level--; tabWrite("Right"); level++; alt.Right.Visit(this); level--; level--; return(null); }
public override AstNode VisitAlternation(AlternationNode alt) { var left = alt.Left.Visit(this); var right = alt.Right.Visit(this); var nodes = new List <AstNode>(); nodes.Add(left); if (right is AlternationListNode) { nodes.AddRange((right as AlternationListNode).Nodes); } else { nodes.Add(right); } return(new AlternationListNode(nodes)); }
public Tuple <State, State> VisitAlternation(AlternationNode alt) { throw new NotSupportedException("You should use the SimplifyingRewriter in Program."); }
public virtual AstNode VisitAlternation(AlternationNode alt) { return(new AlternationNode(alt.Left.Visit(this), alt.Right.Visit(this))); }
public virtual T VisitAlternation(AlternationNode alt) { return(default(T)); }