Exemple #1
0
 public abstract TResult Visit <TContext, TResult>(IRegexVisitor <TLetter, TContext, TResult> visitor, TContext context);
 public override TResult Visit <TContext, TResult>(IRegexVisitor <TContext, TResult> visitor, TContext context)
 {
     return(visitor.Alternation(this, context));
 }
 public override TResult Visit <TContext, TResult>(IRegexVisitor <TContext, TResult> visitor, TContext context)
 {
     return(visitor.MatchSet(this, context));
 }
 public static IEnumerable <TResult> VisitBinary <TLetter, TBinaryNode, TContext, TResult>(this RxNode <TLetter> node, IRegexVisitor <TLetter, TContext, TResult> visitor, TContext context)
     where TBinaryNode : RxBinaryNode <TLetter>
     where TLetter : IEquatable <TLetter>, IComparable <TLetter>
 {
     if (node is TBinaryNode binaryNode)
     {
         return(binaryNode.Left.VisitBinary <TLetter, TBinaryNode, TContext, TResult>(visitor, context)
                .Concat(binaryNode.Right.VisitBinary <TLetter, TBinaryNode, TContext, TResult>(visitor, context)));
     }
     return(new[] { node.Visit(visitor, context) });
 }
 public override TResult Visit <TContext, TResult>(IRegexVisitor <TLetter, TContext, TResult> visitor, TContext context)
 {
     return(visitor.Empty(this, context));
 }
 public override TResult Visit <TContext, TResult>(IRegexVisitor <TContext, TResult> visitor, TContext context)
 {
     return(visitor.CaseGroup(this, context));
 }
Exemple #7
0
 public override TResult Visit <TContext, TResult>(IRegexVisitor <TContext, TResult> visitor, TContext context)
 {
     return(visitor.Quantified(this, context));
 }