public MethodResult ProcessMethod(MethodDefinition methodDefinition)
 {
     MethodResult methodResult = new MethodResult();
     methodResult.MethodName = methodDefinition.FriendlyName();
     methodResult.Result = algorithm.Compute(methodDefinition.Body);
     return methodResult;
 }
        public MethodResult Calculate(MethodDefinition methodDefinition)
        {
            int cc = 1;

            foreach (Instruction instruction in methodDefinition.Body.Instructions)
            {
                if (isAnotherPath(instruction.OpCode))
                    cc++;
            }
            var friendlyName = methodDefinition.FriendlyName ();
            return new MethodResult(friendlyName,cc, isAcceptableComplexity(cc));
        }
        private MethodResult Calculate(MethodDefinition methodDefinition)
        {
            var friendlyName = methodDefinition.FriendlyName();
            if (methodDefinition.Body == null)
                return new MethodResult(friendlyName, 0);

            int cc = 1;

            foreach (Instruction instruction in methodDefinition.Body.Instructions)
            {
                if (isAnotherPath(instruction.OpCode))
                    cc++;
            }

            return new MethodResult(friendlyName, cc);
        }
        public MethodResult Calculate(MethodDefinition methodDefinition)
        {
            _lineNumberCounted = new List<int>();

            foreach (Instruction ins in methodDefinition.Body.Instructions.WithSequencePoint())
            {
                if (IsBracketOrReturnOpCode(ins.OpCode))
                    continue;

                if (hasLineBeenCounted(ins.SequencePoint.StartLine))
                    continue;

                addLine(ins.SequencePoint.StartLine);
            }

               var lines = getLineCount();
               var pass = isLessThanRecommended(lines);

               var friendlyName = methodDefinition.FriendlyName ();
               return new MethodResult(friendlyName, lines, pass);
        }
        private MethodResult Calculate(MethodDefinition methodDefinition)
        {
            var friendlyName = methodDefinition.FriendlyName();
            if (methodDefinition.Body == null)
                return new MethodResult(friendlyName, 0);

            _lineNumberCounted = new List<int>();

            foreach (Instruction ins in methodDefinition.Body.Instructions.WithSequencePoint())
            {
                if (IsBracketOrReturnOpCode(ins.OpCode))
                    continue;

                if (hasLineBeenCounted(ins.SequencePoint.StartLine))
                    continue;

                addLine(ins.SequencePoint.StartLine);
            }

            var lines = getLineCount();

            return new MethodResult(friendlyName, lines);
        }