示例#1
0
        public SequenceInvocationParameterBindings Copy(Dictionary <SequenceVariable, SequenceVariable> originalToCopy, IGraphProcessingEnvironment procEnv)
        {
            SequenceInvocationParameterBindings copy = (SequenceInvocationParameterBindings)MemberwiseClone();

            copy.ArgumentExpressions = new SequenceExpression[ArgumentExpressions.Length];
            for (int i = 0; i < ArgumentExpressions.Length; ++i)
            {
                copy.ArgumentExpressions[i] = ArgumentExpressions[i].CopyExpression(originalToCopy, procEnv);
            }
            copy.ReturnVars = new SequenceVariable[ReturnVars.Length];
            for (int i = 0; i < ReturnVars.Length; ++i)
            {
                copy.ReturnVars[i] = ReturnVars[i].Copy(originalToCopy, procEnv);
            }
            copy.Arguments = new object[Arguments.Length];
            for (int i = 0; i < Arguments.Length; ++i)
            {
                copy.Arguments[i] = Arguments[i];
            }
            if (copy.Subgraph != null)
            {
                copy.Subgraph = Subgraph.Copy(originalToCopy, procEnv);
            }
            return(copy);
        }
示例#2
0
        internal override AssignmentTarget CopyTarget(Dictionary <SequenceVariable, SequenceVariable> originalToCopy, IGraphProcessingEnvironment procEnv)
        {
            AssignmentTargetAttribute copy = (AssignmentTargetAttribute)MemberwiseClone();

            copy.DestVar = DestVar.Copy(originalToCopy, procEnv);
            return(copy);
        }
示例#3
0
        internal override AssignmentTarget CopyTarget(Dictionary <SequenceVariable, SequenceVariable> originalToCopy, IGraphProcessingEnvironment procEnv)
        {
            AssignmentTargetVisited copy = (AssignmentTargetVisited)MemberwiseClone();

            copy.GraphElementVar       = GraphElementVar.Copy(originalToCopy, procEnv);
            copy.VisitedFlagExpression = VisitedFlagExpression.CopyExpression(originalToCopy, procEnv);
            return(copy);
        }
示例#4
0
        internal override AssignmentTarget CopyTarget(Dictionary <SequenceVariable, SequenceVariable> originalToCopy, IGraphProcessingEnvironment procEnv)
        {
            AssignmentTargetIndexedVar copy = (AssignmentTargetIndexedVar)MemberwiseClone();

            copy.DestVar       = DestVar.Copy(originalToCopy, procEnv);
            copy.KeyExpression = KeyExpression.CopyExpression(originalToCopy, procEnv);
            return(copy);
        }