Пример #1
0
        public override void Apply(IReport report, IDocument document, IContext context)
        {
            if (document.ComponentType != ComponentType.Function)
            {
                return;
            }

            var linesCount   = 0;
            var functionText = document.Text;

            for (var i = 0; i < functionText.Length; i++)
            {
                if (functionText[i] == '\n')
                {
                    linesCount++;
                }
            }
            if (linesCount > 0)
            {
                linesCount++;
            }
            if (linesCount > MaxFunctionLinesCount)
            {
                report.AddInformation(Code, string.Format(Resources.FunctionTooBig, MaxFunctionLinesCount), document, new TextPosition());
            }
        }
        public override void Apply(IReport report, IDocument document, IContext context)
        {
            var tree     = document.GetSyntaxTree();
            var walker   = new ParseTreeWalker();
            var listener = new ExceptionClassNotSpecifiedRuleListener();

            walker.Walk(listener, tree);
            foreach (var emptyExceptionClassParam in listener.EmptyExceptionClassParams)
            {
                report.AddInformation(Code, Resources.ExceptionClassNotSpecified, document, emptyExceptionClassParam.GetTextPosition());
            }
        }
        public override void Apply(IReport report, IDocument document, IContext context)
        {
            var tree     = document.GetSyntaxTree();
            var walker   = new ParseTreeWalker();
            var listener = new SingleFormatArgumentRuleListener();

            walker.Walk(listener, tree);
            foreach (var argument in listener.SingleArgumentEntries)
            {
                var description = Resources.SingleArgumentForFormatFunction;
                report.AddInformation(Code, description, document, argument.GetTextPosition());
            }
        }