public StatementExecutor(List <VariableInfo> variables, MathStatement statement, ITcpCommunicator communicator, ILocalVariables localVariables) { IsRunning = false; _cancel = false; _nan = false; Communicator = communicator; LocalVariables = localVariables; _localAssignees = new List <string>(); _localVariables = new List <string>(); _remoteAssignees = new Dictionary2D <IPAddress, string>(); _remoteVariables = new Dictionary2D <IPAddress, string>(); _ms = statement; foreach (var v in variables) { if (v.IsAssignee) { if (v.IsRemote) { _remoteAssignees.Add(v.Ip, v.LocalName); } else { _localAssignees.Add(v.LocalName); } } else if (v.IsRemote) { _remoteVariables.Add(v.Ip, v.LocalName); } else { _localVariables.Add(v.LocalName); } } }
public StatementExecutor(List <VariableInfo> variables, MathStatement statement) : this(variables, statement, null, null) { }