示例#1
0
 public override void Accept(ExprNodeVisitor visitor)
 {
     base.Accept(visitor);
     if (ChildNodes.Length == 0) {
         ExpressionBodyCopy.Accept(visitor);
     }
 }
示例#2
0
 public override void Accept(ExprNodeVisitor visitor)
 {
     AcceptNoVisitParams(visitor);
     if (WalkParams(visitor)) {
         ExprNodeUtilityQuery.AcceptParams(visitor, ChainParameters);
     }
 }
示例#3
0
 public void Accept(ExprNodeVisitor visitor)
 {
     foreach (var parameter in parameters)
     {
         parameter.Accept(visitor);
     }
 }
示例#4
0
 public override void Accept(ExprNodeVisitor visitor)
 {
     if (visitor.IsVisit(this)) {
         visitor.Visit(this);
         inner.Accept(visitor);
     }
 }
示例#5
0
 public static void AcceptParams(
     ExprNodeVisitor visitor,
     IList<ExprNode> @params)
 {
     foreach (var param in @params) {
         param.Accept(visitor);
     }
 }
示例#6
0
 public static void AcceptChain(
     ExprNodeVisitor visitor,
     IList<ExprChainedSpec> chainSpec)
 {
     foreach (var chain in chainSpec) {
         AcceptParams(visitor, chain.Parameters);
     }
 }
示例#7
0
 public static void AcceptChain(
     ExprNodeVisitor visitor,
     IList<Chainable> chainSpec)
 {
     foreach (var chain in chainSpec) {
         chain.Accept(visitor);
     }
 }
示例#8
0
        public virtual void Accept(ExprNodeVisitor visitor)
        {
            if (visitor.IsVisit(this)) {
                visitor.Visit(this);

                foreach (var childNode in ChildNodes) {
                    childNode.Accept(visitor);
                }
            }
        }
示例#9
0
 public override void Accept(ExprNodeVisitor visitor)
 {
     base.Accept(visitor);
     ExprNodeUtilityQuery.AcceptParams(visitor, Parameters);
 }
 public override void Accept(ExprNodeVisitor visitor)
 {
     // no action
 }
示例#11
0
 public override void Accept(ExprNodeVisitor visitor)
 {
     base.Accept(visitor);
     ExprNodeUtility.AcceptChain(visitor, _chainSpec);
 }
示例#12
0
 public override void Accept(ExprNodeVisitor visitor)
 {
     Lhs.Accept(visitor);
     Rhs.Accept(visitor);
 }
示例#13
0
 public override void Accept(ExprNodeVisitor visitor)
 {
     AcceptParams(visitor, Indexes);
 }
示例#14
0
 public override void Accept(ExprNodeVisitor visitor)
 {
     AcceptParams(visitor, Parameters);
 }
示例#15
0
 public void AcceptNoVisitParams(ExprNodeVisitor visitor) {
     base.Accept(visitor);
     if (ChildNodes.Length == 0) {
         ExpressionBodyCopy.Accept(visitor);
     }
 }
示例#16
0
 public override void Accept(ExprNodeVisitor visitor)
 {
     // no parameters
 }
 public override void Accept(ExprNodeVisitor visitor)
 {
     base.Accept(visitor);
     forge.Accept(visitor);
 }
示例#18
0
 public abstract void Accept(ExprNodeVisitor visitor);
示例#19
0
 private bool WalkParams(ExprNodeVisitor visitor)
 {
     // we do not walk parameters when all stream ids match and the visitor skips declared-expression parameters
     // this is because parameters are streams and don't need to be collected by some visitors
     return visitor.IsWalkDeclExprParam || !allStreamIdsMatch;
 }
示例#20
0
 public override void Accept(ExprNodeVisitor visitor)
 {
     Expression.Accept(visitor);
 }
示例#21
0
 public override void Accept(ExprNodeVisitor visitor)
 {
     foreach (var node in _indexExpressions) {
         node.Accept(visitor);
     }
 }