public static SetCorrectColumn ( List |
||
refVar | List |
list of variables |
type | statement type | |
line | int | line index |
return | void |
private Statement(Node parsedNode) { StartLine = parsedNode.line; EndLine = parsedNode.endLine; CurrentType = GetStatementType(parsedNode); AstNode = parsedNode; if (parsedNode is BinaryExpressionNode) { //First get all the defined variables while (parsedNode is BinaryExpressionNode) { IdentifierNode assignedVar = GetDefinedIdentifier((parsedNode as BinaryExpressionNode).LeftNode); if (assignedVar != null) { definedVariables.Add(new Variable(assignedVar)); } parsedNode = (parsedNode as BinaryExpressionNode).RightNode; } //Then get the referenced variables List <Variable> refVariableList = new List <Variable>(); GetReferencedVariables(parsedNode, refVariableList); referencedVariables = refVariableList; } else if (parsedNode is FunctionDefinitionNode) { // Handle function definitions in CBN } else { throw new ArgumentException("Must be func def or assignment"); } Variable.SetCorrectColumn(referencedVariables, CurrentType, StartLine); }