public override void VisitDefineVarNode(DefineVarNode node) { node.Type.Visit(this); var type = expressions.Pop(); var defineVar = VariableDeclaration(type as TypeSyntax); foreach (var variable in node.Variables) { variable.Expression?.Visit(this); var id = IdentifierName(variable.ID.Text); id = GetNodeWithAnnotation(id, variable.ID.Location) as IdentifierNameSyntax; var identifer = GetNodeWithAnnotation(id.Identifier, variable.ID.Location); var variableNode = VariableDeclarator(identifer); if (variable.Expression != null) { variableNode = variableNode.WithInitializer(EqualsValueClause(expressions.Pop())); } variableNode = GetNodeWithAnnotation(variableNode, variable.Location) as VariableDeclaratorSyntax; defineVar = defineVar.AddVariables(variableNode); } defineVar = GetNodeWithAnnotation(defineVar, node.Location) as VariableDeclarationSyntax; AddVariableToCurrentBlock(defineVar); }
public virtual void VisitDefineVarNode(DefineVarNode node) { }