Beispiel #1
0
 private ExplicitBorrowNode(Node parentNode, ExplicitBorrowNode copyFrom, NodeCopyInfo copyInfo)
     : base(parentNode, copyFrom, copyInfo)
 {
     BorrowMode            = copyFrom.BorrowMode;
     AlwaysBeginLifetime   = copyFrom.AlwaysBeginLifetime;
     AlwaysCreateReference = copyFrom.AlwaysCreateReference;
 }
Beispiel #2
0
 private AwaitNode(Node newParentNode, AwaitNode nodeToCopy, NodeCopyInfo copyInfo)
     : base(newParentNode, nodeToCopy, copyInfo)
 {
     InputTerminal      = copyInfo.GetMappingFor(nodeToCopy.InputTerminal);
     OutputTerminal     = copyInfo.GetMappingFor(nodeToCopy.OutputTerminal);
     PollResultVariable = nodeToCopy.PollResultVariable;
 }
Beispiel #3
0
 private FunctionalNode(Node parentNode, FunctionalNode nodeToCopy, NodeCopyInfo nodeCopyInfo)
     : base(parentNode, nodeToCopy, nodeCopyInfo)
 {
     Signature              = nodeToCopy.Signature;
     FunctionType           = nodeToCopy.FunctionType;
     RequiredFeatureToggles = nodeToCopy.RequiredFeatureToggles;
 }
        /// <inheritdoc />
        protected override Node CopyNodeInto(Node newParentNode, NodeCopyInfo copyInfo)
        {
            OptionPatternStructure copiedOptionPatternStructure = new OptionPatternStructure((Diagram)newParentNode, this, copyInfo);

            copiedOptionPatternStructure.CloneDiagrams(this, copyInfo);
            copiedOptionPatternStructure.CloneBorderNodes(this, copyInfo);
            copiedOptionPatternStructure.CopyContents(this, copyInfo);
            return(copiedOptionPatternStructure);
        }
Beispiel #5
0
        /// <inheritdoc />
        protected override Node CopyNodeInto(Node newParentNode, NodeCopyInfo copyInfo)
        {
            Loop copiedLoop = new Loop((Diagram)newParentNode, this, copyInfo);

            copiedLoop.CloneDiagrams(this, copyInfo);
            copiedLoop.CloneBorderNodes(this, copyInfo);
            copiedLoop.CopyContents(this, copyInfo);
            return(copiedLoop);
        }
        /// <inheritdoc />
        protected override Node CopyNodeInto(Node newParentNode, NodeCopyInfo copyInfo)
        {
            var copiedVariantMatchStructure = new VariantMatchStructure((Diagram)newParentNode, this, copyInfo);

            copiedVariantMatchStructure.CloneDiagrams(this, copyInfo);
            copiedVariantMatchStructure.CloneBorderNodes(this, copyInfo);
            copiedVariantMatchStructure.CopyContents(this, copyInfo);
            return(copiedVariantMatchStructure);
        }
Beispiel #7
0
        private IterateTunnel(Structure parentStructure, IterateTunnel toCopy, NodeCopyInfo copyInfo)
            : base(parentStructure, toCopy, copyInfo)
        {
            Node mappedTunnel;

            if (copyInfo.TryGetMappingFor(toCopy.TerminateLifetimeTunnel, out mappedTunnel))
            {
                TerminateLifetimeTunnel = (TerminateLifetimeTunnel)mappedTunnel;
                TerminateLifetimeTunnel.BeginLifetimeTunnel = this;
            }
        }
Beispiel #8
0
        private IterateTunnel(Structure parentStructure, IterateTunnel toCopy, NodeCopyInfo copyInfo)
            : base(parentStructure, toCopy, copyInfo)
        {
            IteratorNextFunctionType = toCopy.IteratorNextFunctionType;
            Node mappedTunnel;

            if (copyInfo.TryGetMappingFor(toCopy.TerminateLifetimeTunnel, out mappedTunnel))
            {
                TerminateLifetimeTunnel = (TerminateLifetimeTunnel)mappedTunnel;
                TerminateLifetimeTunnel.BeginLifetimeTunnel = this;
            }
            IntermediateValueVariable = toCopy.IntermediateValueVariable;
        }
Beispiel #9
0
 protected override Node CopyNodeInto(Node newParentNode, NodeCopyInfo copyInfo)
 {
     return(new ExplicitBorrowNode(newParentNode, this, copyInfo));
 }
        /// <summary>
        /// Makes a copy of this node and adds it to the specified parent
        /// </summary>
        /// <param name="newParentNode">parent node for the new node</param>
        /// <param name="copyInfo">Copy information to forward</param>
        /// <returns>The newly created copy</returns>
        protected override Node CopyNodeInto(Node newParentNode, NodeCopyInfo copyInfo)
        {
            var copiedNode = new CalculateTotalLengthDfirNode(newParentNode, this, copyInfo);

            return(copiedNode);
        }
Beispiel #11
0
 private Loop(Diagram parentDiagram, Loop nodeToCopy, NodeCopyInfo nodeCopyInfo)
     : base(parentDiagram, nodeToCopy, nodeCopyInfo)
 {
 }
 private OptionPatternStructureSelector(Structure parentStructure, OptionPatternStructureSelector toCopy, NodeCopyInfo copyInfo)
     : base(parentStructure, toCopy, copyInfo)
 {
 }
 /// <summary>
 /// Constructor used when making a copy of this node
 /// </summary>
 /// <param name="parentNode">The parent node of this node (the diagram)</param>
 /// <param name="nodeToCopy">The source node</param>
 /// <param name="nodeCopyInfo">Information to forward to the copy</param>
 public CalculateTotalLengthDfirNode(Node parentNode, CalculateTotalLengthDfirNode nodeToCopy, NodeCopyInfo nodeCopyInfo)
     : base(parentNode, nodeToCopy, nodeCopyInfo)
 {
 }
Beispiel #14
0
 private DropNode(Node newParentNode, Node nodeToCopy, NodeCopyInfo copyInfo)
     : base(newParentNode, nodeToCopy, copyInfo)
 {
 }
Beispiel #15
0
        private TerminateLifetimeTunnel(Structure parentStructure, TerminateLifetimeTunnel toCopy, NodeCopyInfo copyInfo)
            : base(parentStructure, toCopy, copyInfo)
        {
            Node mappedTunnel;

            if (copyInfo.TryGetMappingFor((BorderNode)toCopy.BeginLifetimeTunnel, out mappedTunnel))
            {
                BeginLifetimeTunnel = (IBeginLifetimeTunnel)mappedTunnel;
                BeginLifetimeTunnel.TerminateLifetimeTunnel = this;
            }
        }
Beispiel #16
0
 /// <inheritdoc />
 protected override Node CopyNodeInto(Node newParentNode, NodeCopyInfo copyInfo)
 {
     return(new IterateTunnel((Structure)newParentNode, this, copyInfo));
 }
Beispiel #17
0
 private UnwrapOptionTunnel(Structure parentStructure, UnwrapOptionTunnel toCopy, NodeCopyInfo copyInfo)
     : base(parentStructure, toCopy, copyInfo)
 {
 }
Beispiel #18
0
 private SelfTypeNode(Node newParentNode, SelfTypeNode nodeToCopy, NodeCopyInfo copyInfo)
     : base(newParentNode, nodeToCopy, copyInfo)
 {
     Mode = nodeToCopy.Mode;
 }
 private TerminateLifetimeNode(Node parentNode, TerminateLifetimeNode nodeToCopy, NodeCopyInfo nodeCopyInfo)
     : base(parentNode, nodeToCopy, nodeCopyInfo)
 {
     UnificationState = nodeToCopy.UnificationState;
 }
 private CreateMethodCallPromise(Node newParentNode, CreateMethodCallPromise nodeToCopy, NodeCopyInfo copyInfo)
     : base(newParentNode, nodeToCopy, copyInfo)
 {
     PromiseTerminal = copyInfo.GetMappingFor(nodeToCopy.PromiseTerminal);
     Signature       = nodeToCopy.Signature;
     TargetName      = nodeToCopy.TargetName;
 }
 private VariantMatchStructure(Diagram parentDiagram, VariantMatchStructure nodeToCopy, NodeCopyInfo nodeCopyInfo)
     : base(parentDiagram, nodeToCopy, nodeCopyInfo)
 {
 }
 /// <inheritdoc />
 protected override Node CopyNodeInto(Node newParentNode, NodeCopyInfo copyInfo)
 {
     return(new OptionPatternStructureSelector((Structure)newParentNode, this, copyInfo));
 }
Beispiel #23
0
 /// <summary>
 /// Constructor used when making a copy of this node
 /// </summary>
 /// <param name="parentNode">The parent node of this node (the diagram)</param>
 /// <param name="nodeToCopy">The source node</param>
 /// <param name="nodeCopyInfo">Information to forward to the copy</param>
 /// <param name="multiplier">The multiplier to use</param>
 public MultiplyByXDfirNode(Node parentNode, MultiplyByXDfirNode nodeToCopy, NodeCopyInfo nodeCopyInfo, double multiplier)
     : base(parentNode, nodeToCopy, nodeCopyInfo)
 {
     _multiplier = multiplier;
 }
Beispiel #24
0
 /// <inheritdoc />
 protected override Node CopyNodeInto(Node newParentNode, NodeCopyInfo copyInfo)
 {
     return(new UnwrapOptionTunnel((Structure)newParentNode, this, copyInfo));
 }
Beispiel #25
0
        /// <summary>
        /// Makes a copy of this node and adds it to the specified parent
        /// </summary>
        /// <param name="newParentNode">parent node for the new node</param>
        /// <param name="copyInfo">Copy information to forward</param>
        /// <returns>The newly created copy</returns>
        protected override Node CopyNodeInto(Node newParentNode, NodeCopyInfo copyInfo)
        {
            var copiedNode = new MultiplyByXDfirNode(newParentNode, this, copyInfo, _multiplier);

            return(copiedNode);
        }
Beispiel #26
0
 private PanicOrContinueNode(Node newParentNode, PanicOrContinueNode nodeToCopy, NodeCopyInfo copyInfo)
     : base(newParentNode, nodeToCopy, copyInfo)
 {
     InputTerminal  = copyInfo.GetMappingFor(nodeToCopy.InputTerminal);
     OutputTerminal = copyInfo.GetMappingFor(nodeToCopy.OutputTerminal);
 }
Beispiel #27
0
 protected override Node CopyNodeInto(Node newParentNode, NodeCopyInfo copyInfo)
 {
     return(new DropNode(newParentNode, this, copyInfo));
 }
Beispiel #28
0
 protected override Node CopyNodeInto(Node newParentNode, NodeCopyInfo copyInfo)
 {
     return(new PanicOrContinueNode(newParentNode, this, copyInfo));
 }
Beispiel #29
0
 protected override Node CopyNodeInto(Node newParentNode, NodeCopyInfo copyInfo)
 {
     return(new TerminateLifetimeTunnel((Structure)newParentNode, this, copyInfo));
 }
 protected override Node CopyNodeInto(Node newParentNode, NodeCopyInfo copyInfo)
 {
     return(new CreateMethodCallPromise(newParentNode, this, copyInfo));
 }