Exemplo n.º 1
0
        /// <summary>
        /// Processes the given statement container.
        /// </summary>
        /// <param name="element">The statement container element to process.</param>
        /// <param name="validPrefixes">The list of acceptable Hungarian-type prefixes.</param>
        private void ProcessStatementContainer(Element element, Dictionary<string, string> validPrefixes)
        {
            Param.AssertNotNull(element, "element");
            Param.AssertNotNull(validPrefixes, "validPrefixes");

            // Check the statement container's variables.
            VariableCollection variables = element.Variables;

            if (variables != null)
            {
                foreach (IVariable variable in variables)
                {
                    if (!variable.Generated)
                    {
                        this.CheckMethodVariablePrefix(variable, element, validPrefixes);
                        this.CheckUnderscores(element, variables);
                    }
                }
            }

            // Check each of the statements under this container.
            if (element.Children.StatementCount > 0)
            {
                for (Statement statement = element.FindFirstChildStatement(); statement != null; statement = statement.FindNextSiblingStatement())
                {
                    this.ProcessStatement(statement, element, validPrefixes);
                }
            }
        }