public override void ExtractVariables(IDictionary <string, ExtractedVariable> variables) { var vPart = Element.Condition as VariableConditionPart; if (vPart != null) { var xV = new ExtractedVariable(vPart.VariableName); xV.AddValue(true.ToString()); variables.Add(xV.Name, xV); } var opPart = Element.Condition as OperationConditionPart; if (opPart != null) { ExtractVars(opPart, variables); } foreach (var elem in Element.ConditionTrueElements) { VariableExtractionFactory.ExtractVariables(elem, variables, Parms); } if (Element.ConditionFalseElements != null) { foreach (var elem in Element.ConditionFalseElements) { VariableExtractionFactory.ExtractVariables(elem, variables, Parms); } } }
public override void ExtractVariables(IDictionary <string, ExtractedVariable> variables) { var itVar = GetVar(variables, Element.Variable.VariableName); itVar.AddValue("0"); ExtractVar(variables, Element.Minimum, itVar); var minL = Element.Minimum as LiteralConditionPart; if (minL != null) { itVar.AddValue(minL.Value); } ExtractVar(variables, Element.Maximum, itVar); var maxL = Element.Maximum as LiteralConditionPart; if (maxL != null) { itVar.AddValue(maxL.Value); } foreach (var elem in Element.Elements) { VariableExtractionFactory.ExtractVariables(elem, variables, Parms); } variables.Remove(itVar.Name); foreach (var extractedVariable in variables.Values) { extractedVariable.ConvertVarNameToLink(itVar); itVar.ConvertVarNameToLink(extractedVariable); } }
public override void ExtractVariables(IDictionary <string, ExtractedVariable> variables) { string variable; var opCond = Element.EnumerationCondition as OperationConditionPart; if (opCond != null) { variable = ((VariableConditionPart)opCond.LeftSide).VariableName; NoteVars((VariableConditionPart)opCond.LeftSide, opCond.RightSide, variables); } else { variable = ((VariableConditionPart)Element.EnumerationCondition).VariableName; NoteArrayVar(variables, variable); } foreach (var elem in Element.Elements) { VariableExtractionFactory.ExtractVariables(elem, variables, Parms); } if (opCond != null) { var v = GetVar(variables, variable); variables.Remove(variable); foreach (var extractedVariable in variables.Values.ToArray()) { extractedVariable.ConvertVarNameToLink(v); v.ConvertVarNameToLink(extractedVariable); } } }
public override void ExtractVariables(IDictionary <string, ExtractedVariable> variables) { var v = GetVar(variables, Element.Variable.VariableName); v.IsLocal = true; foreach (var elem in Element.Elements) { VariableExtractionFactory.ExtractVariables(elem, variables, Parms); } }
public override void ExtractVariables(IDictionary <string, ExtractedVariable> variables) { foreach (var elem in Element.Elements) { VariableExtractionFactory.ExtractVariables(elem, variables, Parms); } foreach (var v in variables.Values.ToArray()) { foreach (var extractedVariable in variables.Values.ToArray()) { extractedVariable.ConvertVarNameToLink(v); v.ConvertVarNameToLink(extractedVariable); } } foreach (var v in variables.Values.ToArray()) { v.ExpandLinks(); v.GuessType(); } }