Ejemplo n.º 1
0
        public static T VisitRebarNode <T>(this IDfirNodeVisitor <T> visitor, Node node)
        {
            var dfirNode     = node as DfirNode;
            var borderNode   = node as BorderNode;
            var constant     = node as Constant;
            var dataAccessor = node as DataAccessor;
            var tunnel       = node as Tunnel;
            var wire         = node as Wire;

            if (dfirNode != null)
            {
                return(dfirNode.AcceptVisitor(visitor));
            }
            else if (borderNode != null)
            {
                return(borderNode.AcceptVisitor(visitor));
            }
            else if (constant != null)
            {
                return(visitor.VisitConstant(constant));
            }
            else if (dataAccessor != null)
            {
                return(visitor.VisitDataAccessor(dataAccessor));
            }
            else if (tunnel != null)
            {
                return(visitor.VisitTunnel(tunnel));
            }
            else if (wire != null)
            {
                return(visitor.VisitWire(wire));
            }
            throw new NotImplementedException();
        }
Ejemplo n.º 2
0
        public override T AcceptVisitor <T>(IDfirNodeVisitor <T> visitor)
        {
            var internalVisitor = visitor as IInternalDfirNodeVisitor <T>;

            if (internalVisitor != null)
            {
                return(internalVisitor.VisitPanicOrContinueNode(this));
            }
            throw new NotSupportedException("Only accepts IInternalDfirNodeVisitors");
        }
Ejemplo n.º 3
0
        public override T AcceptVisitor <T>(IDfirNodeVisitor <T> visitor)
        {
            var internalVisitor = visitor as IInternalDfirNodeVisitor <T>;

            if (internalVisitor != null)
            {
                return(internalVisitor.VisitCreateMethodCallPromise(this));
            }
            throw new NotSupportedException("Only accepts IInternalDfirNodeVisitors");
        }
Ejemplo n.º 4
0
 /// <inheritdoc />
 public override T AcceptVisitor <T>(IDfirNodeVisitor <T> visitor)
 {
     return(visitor.VisitUnwrapOptionTunnel(this));
 }
Ejemplo n.º 5
0
 /// <inheritdoc />
 public override T AcceptVisitor <T>(IDfirNodeVisitor <T> visitor)
 {
     return(visitor.VisitFunctionalNode(this));
 }
Ejemplo n.º 6
0
 /// <inheritdoc />
 public override T AcceptVisitor <T>(IDfirNodeVisitor <T> visitor)
 {
     return(visitor.VisitBorrowTunnel(this));
 }
 /// <inheritdoc />
 public override T AcceptVisitor <T>(IDfirNodeVisitor <T> visitor)
 {
     return(visitor.VisitOptionPatternStructureSelector(this));
 }
Ejemplo n.º 8
0
 /// <inheritdoc />
 public override T AcceptVisitor <T>(IDfirNodeVisitor <T> visitor)
 {
     return(visitor.VisitLoopConditionTunnel(this));
 }
Ejemplo n.º 9
0
 public override T AcceptVisitor <T>(IDfirNodeVisitor <T> visitor)
 {
     throw new NotImplementedException();
 }
Ejemplo n.º 10
0
 /// <inheritdoc />
 public override T AcceptVisitor <T>(IDfirNodeVisitor <T> visitor)
 {
     return(visitor.VisitExplicitBorrowNode(this));
 }
 /// <inheritdoc />
 public override T AcceptVisitor <T>(IDfirNodeVisitor <T> visitor)
 {
     return(visitor.VisitVariantMatchStructureSelector(this));
 }
Ejemplo n.º 12
0
 public override T AcceptVisitor <T>(IDfirNodeVisitor <T> visitor)
 {
     return(visitor.VisitVariantConstructorNode(this));
 }
Ejemplo n.º 13
0
 public override T AcceptVisitor <T>(IDfirNodeVisitor <T> visitor)
 {
     return(visitor.VisitMethodCallNode(this));
 }
Ejemplo n.º 14
0
 public abstract T AcceptVisitor <T>(IDfirNodeVisitor <T> visitor);
Ejemplo n.º 15
0
 public override T AcceptVisitor <T>(IDfirNodeVisitor <T> visitor)
 {
     return(visitor.VisitDecomposeTupleNode(this));
 }
Ejemplo n.º 16
0
 /// <inheritdoc />
 public override T AcceptVisitor <T>(IDfirNodeVisitor <T> visitor)
 {
     return(visitor.VisitDropNode(this));
 }
Ejemplo n.º 17
0
 /// <inheritdoc />
 public override T AcceptVisitor <T>(IDfirNodeVisitor <T> visitor)
 {
     return(visitor.VisitTerminateLifetimeTunnel(this));
 }
Ejemplo n.º 18
0
 /// <inheritdoc />
 public override T AcceptVisitor<T>(IDfirNodeVisitor<T> visitor)
 {
     return visitor.VisitStructFieldAccessorNode(this);
 }