Groovy Documentation

org.gmetrics.metric.abc
Class AbcAstVisitor

java.lang.Object
  org.codehaus.groovy.ast.CodeVisitorSupport
      org.codehaus.groovy.ast.ClassCodeVisitorSupport
          org.gmetrics.metric.AbstractAstVisitor
              org.gmetrics.metric.abc.AbcAstVisitor

class AbcAstVisitor
extends AbstractAstVisitor

AST Visitor for calculating the ABC Metric for a class/method.

see:
AbcMetric See http://www.softwarerenovation.com/ABCMetric.pdf
author:
Chris Mair
version:
$Revision: 107 $ - $Date: 2010-06-05 07:23:27 -0400 (Sat, 05 Jun 2010) $


Property Summary
int numberOfAssignments

int numberOfBranches

int numberOfConditions

boolean visited

 
Constructor Summary
AbcAstVisitor()

 
Method Summary
void visitBinaryExpression(org.codehaus.groovy.ast.expr.BinaryExpression expression)

void visitBooleanExpression(org.codehaus.groovy.ast.expr.BooleanExpression booleanExpression)

void visitConstructorCallExpression(org.codehaus.groovy.ast.expr.ConstructorCallExpression call)

void visitIfElse(org.codehaus.groovy.ast.stmt.IfStatement ifElse)

void visitMethod(MethodNode methodNode)

void visitMethodCallExpression(org.codehaus.groovy.ast.expr.MethodCallExpression call)

void visitNotExpression(org.codehaus.groovy.ast.expr.NotExpression notExpression)

void visitPostfixExpression(org.codehaus.groovy.ast.expr.PostfixExpression expression)

void visitPrefixExpression(org.codehaus.groovy.ast.expr.PrefixExpression expression)

void visitPropertyExpression(org.codehaus.groovy.ast.expr.PropertyExpression expression)

void visitSwitch(org.codehaus.groovy.ast.stmt.SwitchStatement statement)

void visitTernaryExpression(org.codehaus.groovy.ast.expr.TernaryExpression expression)

void visitTryCatchFinally(org.codehaus.groovy.ast.stmt.TryCatchStatement statement)

 
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

numberOfAssignments

int numberOfAssignments


numberOfBranches

int numberOfBranches


numberOfConditions

int numberOfConditions


visited

final boolean visited


 
Constructor Detail

AbcAstVisitor

AbcAstVisitor()


 
Method Detail

visitBinaryExpression

void visitBinaryExpression(org.codehaus.groovy.ast.expr.BinaryExpression expression)


visitBooleanExpression

void visitBooleanExpression(org.codehaus.groovy.ast.expr.BooleanExpression booleanExpression)


visitConstructorCallExpression

void visitConstructorCallExpression(org.codehaus.groovy.ast.expr.ConstructorCallExpression call)


visitIfElse

void visitIfElse(org.codehaus.groovy.ast.stmt.IfStatement ifElse)


visitMethod

void visitMethod(MethodNode methodNode)


visitMethodCallExpression

void visitMethodCallExpression(org.codehaus.groovy.ast.expr.MethodCallExpression call)


visitNotExpression

void visitNotExpression(org.codehaus.groovy.ast.expr.NotExpression notExpression)


visitPostfixExpression

void visitPostfixExpression(org.codehaus.groovy.ast.expr.PostfixExpression expression)


visitPrefixExpression

void visitPrefixExpression(org.codehaus.groovy.ast.expr.PrefixExpression expression)


visitPropertyExpression

void visitPropertyExpression(org.codehaus.groovy.ast.expr.PropertyExpression expression)


visitSwitch

void visitSwitch(org.codehaus.groovy.ast.stmt.SwitchStatement statement)


visitTernaryExpression

void visitTernaryExpression(org.codehaus.groovy.ast.expr.TernaryExpression expression)


visitTryCatchFinally

void visitTryCatchFinally(org.codehaus.groovy.ast.stmt.TryCatchStatement statement)


 

Groovy Documentation