Ejemplo n.º 1
0
            public override void VisitGenericForStatement(GenericForStatementSyntax node)
            {
                foreach (var expression in node.Expressions)
                {
                    Visit(expression);
                }
                var scope = CreateBlockScope(node);

                try
                {
                    foreach (var typedIdentifierName in node.Identifiers)
                    {
                        var identifierName = typedIdentifierName.IdentifierName;
                        if (identifierName.IsMissing || string.IsNullOrWhiteSpace(identifierName.Name))
                        {
                            continue;
                        }
                        var variable = scope.CreateVariable(VariableKind.Iteration, identifierName.Name, node);
                        _variables.Add(typedIdentifierName, variable);
                        _variables.Add(identifierName, variable);
                    }
                    Visit(node.Body);
                }
                finally
                {
                    PopScope(scope);
                }
            }
Ejemplo n.º 2
0
            public override void VisitGenericForStatement(GenericForStatementSyntax node)
            {
                foreach (var expression in node.Expressions)
                {
                    Visit(expression);
                }
                var scope = CreateBlockScope(node);

                try
                {
                    foreach (var identifierName in node.Identifiers)
                    {
                        var variable = scope.CreateVariable(VariableKind.Iteration, identifierName.Name, node);
                        _variables[identifierName] = variable;
                    }
                    Visit(node.Body);
                }
                finally
                {
                    PopScope(scope);
                }
            }