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); }
internal override AssignmentTarget CopyTarget(Dictionary <SequenceVariable, SequenceVariable> originalToCopy, IGraphProcessingEnvironment procEnv) { AssignmentTargetAttribute copy = (AssignmentTargetAttribute)MemberwiseClone(); copy.DestVar = DestVar.Copy(originalToCopy, procEnv); return(copy); }
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); }
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); }