Groovy Documentation

org.gmetrics.metric.cyclomatic
Class CyclomaticComplexityAstVisitor

java.lang.Object
  org.codehaus.groovy.ast.CodeVisitorSupport
      org.codehaus.groovy.ast.ClassCodeVisitorSupport
          org.gmetrics.metric.AbstractAstVisitor
              org.gmetrics.metric.cyclomatic.CyclomaticComplexityAstVisitor

class CyclomaticComplexityAstVisitor
extends AbstractAstVisitor

AST Visitor for calculating the Cyclomatic Complexity for a method or closure field.

see:
CyclomaticComplexityMetric
author:
Chris Mair
version:
$Revision: 97 $ - $Date: 2010-03-09 21:25:30 -0500 (Tue, 09 Mar 2010) $


Property Summary
Integer complexity

 
Constructor Summary
CyclomaticComplexityAstVisitor()

 
Method Summary
void visitBinaryExpression(BinaryExpression expression)

void visitCatchStatement(CatchStatement statement)

void visitForLoop(ForStatement forLoop)

void visitIfElse(IfStatement ifElse)

void visitMethod(MethodNode methodNode)

void visitPropertyExpression(PropertyExpression expression)

void visitSwitch(SwitchStatement statement)

void visitTernaryExpression(TernaryExpression expression)

void visitWhileLoop(WhileStatement loop)

 
Methods inherited from class AbstractAstVisitor
getSourceUnit, isFirstVisit, isSyntheticNonRunMethod, sourceLine
 
Methods inherited from class org.codehaus.groovy.ast.ClassCodeVisitorSupport
visitReturnStatement, visitProperty, visitField, visitConstructor, visitMethod, visitClass, visitAnnotations, visitPackage, visitImports, visitVariableExpression, visitAssertStatement, visitBlockStatement, visitBreakStatement, visitCaseStatement, visitCatchStatement, visitContinueStatement, visitDoWhileLoop, visitExpressionStatement, visitForLoop, visitIfElse, visitSwitch, visitSynchronizedStatement, visitThrowStatement, visitTryCatchFinally, visitWhileLoop, visitConstantExpression, visitClassExpression, visitListExpression, visitPropertyExpression, visitMethodCallExpression, visitStaticMethodCallExpression, visitConstructorCallExpression, visitBinaryExpression, visitTernaryExpression, visitShortTernaryExpression, visitPostfixExpression, visitPrefixExpression, visitBooleanExpression, visitNotExpression, visitClosureExpression, visitTupleExpression, visitArrayExpression, visitMapExpression, visitMapEntryExpression, visitRangeExpression, visitSpreadExpression, visitSpreadMapExpression, visitMethodPointerExpression, visitUnaryMinusExpression, visitUnaryPlusExpression, visitBitwiseNegationExpression, visitCastExpression, visitDeclarationExpression, visitAttributeExpression, visitFieldExpression, visitRegexExpression, visitGStringExpression, visitArgumentlistExpression, visitClosureListExpression, visitBytecodeExpression, wait, wait, wait, equals, toString, hashCode, getClass, notify, notifyAll
 
Methods inherited from class org.codehaus.groovy.ast.CodeVisitorSupport
visitConstantExpression, visitReturnStatement, visitClassExpression, visitListExpression, visitPropertyExpression, visitVariableExpression, visitAssertStatement, visitBlockStatement, visitBreakStatement, visitCaseStatement, visitCatchStatement, visitContinueStatement, visitDoWhileLoop, visitExpressionStatement, visitForLoop, visitIfElse, visitSwitch, visitSynchronizedStatement, visitThrowStatement, visitTryCatchFinally, visitWhileLoop, visitMethodCallExpression, visitStaticMethodCallExpression, visitConstructorCallExpression, visitBinaryExpression, visitTernaryExpression, visitShortTernaryExpression, visitPostfixExpression, visitPrefixExpression, visitBooleanExpression, visitNotExpression, visitClosureExpression, visitTupleExpression, visitArrayExpression, visitMapExpression, visitMapEntryExpression, visitRangeExpression, visitSpreadExpression, visitSpreadMapExpression, visitMethodPointerExpression, visitUnaryMinusExpression, visitUnaryPlusExpression, visitBitwiseNegationExpression, visitCastExpression, visitDeclarationExpression, visitAttributeExpression, visitFieldExpression, visitRegexExpression, visitGStringExpression, visitArgumentlistExpression, visitClosureListExpression, visitBytecodeExpression, wait, wait, wait, equals, toString, hashCode, getClass, notify, notifyAll
 
Methods inherited from class Object
wait, wait, wait, equals, toString, hashCode, getClass, notify, notifyAll
 

Property Detail

complexity

Integer complexity


 
Constructor Detail

CyclomaticComplexityAstVisitor

CyclomaticComplexityAstVisitor()


 
Method Detail

visitBinaryExpression

void visitBinaryExpression(BinaryExpression expression)


visitCatchStatement

public void visitCatchStatement(CatchStatement statement)


visitForLoop

void visitForLoop(ForStatement forLoop)


visitIfElse

void visitIfElse(IfStatement ifElse)


visitMethod

void visitMethod(MethodNode methodNode)


visitPropertyExpression

void visitPropertyExpression(PropertyExpression expression)


visitSwitch

void visitSwitch(SwitchStatement statement)


visitTernaryExpression

void visitTernaryExpression(TernaryExpression expression)


visitWhileLoop

void visitWhileLoop(WhileStatement loop)


 

Groovy Documentation