org.gmetrics.metric.linecount
Class MethodLineCountAstVisitor

java.lang.Object
  extended by org.codehaus.groovy.ast.CodeVisitorSupport
      extended by org.codehaus.groovy.ast.ClassCodeVisitorSupport
          extended by org.gmetrics.metric.AbstractAstVisitor
              extended by org.gmetrics.metric.linecount.MethodLineCountAstVisitor
All Implemented Interfaces:
groovy.lang.GroovyObject, org.codehaus.groovy.ast.GroovyClassVisitor, org.codehaus.groovy.ast.GroovyCodeVisitor, AstVisitor

public class MethodLineCountAstVisitor
extends AbstractAstVisitor
implements groovy.lang.GroovyObject

AST Visitor for calculating the lines of code for a method or closure field.

Version:
$Revision: 31 $ - $Date: 2009-12-15 20:50:40 -0500 (Tue, 15 Dec 2009) $
Author:
Chris Mair

Field Summary
 
Fields inherited from class org.gmetrics.metric.AbstractAstVisitor
MAX_SOURCE_LINE_LENGTH, SOURCE_LINE_LAST_SEGMENT_LENGTH
 
Constructor Summary
MethodLineCountAstVisitor()
           
 
Method Summary
 groovy.lang.MetaClass getMetaClass()
           
 int getNumberOfLinesInClosure()
           
 int getNumberOfLinesInMethod()
           
 java.lang.Object getProperty(java.lang.String name)
           
 java.lang.Object invokeMethod(java.lang.String name, java.lang.Object args)
           
 void setMetaClass(groovy.lang.MetaClass metaClass)
           
 void setNumberOfLinesInClosure(int value)
           
 void setNumberOfLinesInMethod(int value)
           
 void setProperty(java.lang.String name, java.lang.Object value)
           
 void visitClosureExpression(org.codehaus.groovy.ast.expr.ClosureExpression expression)
           
 void visitMethod(org.codehaus.groovy.ast.MethodNode methodNode)
           
 
Methods inherited from class org.gmetrics.metric.AbstractAstVisitor
getSourceCode, getSourceUnit, isFirstVisit, isSyntheticNonRunMethod, setSourceCode, sourceLine
 
Methods inherited from class org.codehaus.groovy.ast.ClassCodeVisitorSupport
addError, visitAnnotations, visitAssertStatement, visitBlockStatement, visitBreakStatement, visitCaseStatement, visitCatchStatement, visitClass, visitClassCodeContainer, visitConstructor, visitConstructorOrMethod, visitContinueStatement, visitDoWhileLoop, visitExpressionStatement, visitField, visitForLoop, visitIfElse, visitProperty, visitReturnStatement, visitStatement, visitSwitch, visitSynchronizedStatement, visitThrowStatement, visitTryCatchFinally, visitWhileLoop
 
Methods inherited from class org.codehaus.groovy.ast.CodeVisitorSupport
visitArgumentlistExpression, visitArrayExpression, visitAttributeExpression, visitBinaryExpression, visitBitwiseNegationExpression, visitBooleanExpression, visitBytecodeExpression, visitCastExpression, visitClassExpression, visitClosureListExpression, visitConstantExpression, visitConstructorCallExpression, visitDeclarationExpression, visitFieldExpression, visitGStringExpression, visitListExpression, visitListOfExpressions, visitMapEntryExpression, visitMapExpression, visitMethodCallExpression, visitMethodPointerExpression, visitNotExpression, visitPostfixExpression, visitPrefixExpression, visitPropertyExpression, visitRangeExpression, visitRegexExpression, visitShortTernaryExpression, visitSpreadExpression, visitSpreadMapExpression, visitStaticMethodCallExpression, visitTernaryExpression, visitTupleExpression, visitUnaryMinusExpression, visitUnaryPlusExpression, visitVariableExpression
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 
Methods inherited from interface org.codehaus.groovy.ast.GroovyClassVisitor
visitClass, visitConstructor, visitField, visitProperty
 

Constructor Detail

MethodLineCountAstVisitor

public MethodLineCountAstVisitor()
Method Detail

getNumberOfLinesInMethod

public int getNumberOfLinesInMethod()

setNumberOfLinesInMethod

public void setNumberOfLinesInMethod(int value)

getNumberOfLinesInClosure

public int getNumberOfLinesInClosure()

setNumberOfLinesInClosure

public void setNumberOfLinesInClosure(int value)

visitMethod

public void visitMethod(org.codehaus.groovy.ast.MethodNode methodNode)
Specified by:
visitMethod in interface org.codehaus.groovy.ast.GroovyClassVisitor
Overrides:
visitMethod in class org.codehaus.groovy.ast.ClassCodeVisitorSupport

visitClosureExpression

public void visitClosureExpression(org.codehaus.groovy.ast.expr.ClosureExpression expression)
Specified by:
visitClosureExpression in interface org.codehaus.groovy.ast.GroovyCodeVisitor
Overrides:
visitClosureExpression in class org.codehaus.groovy.ast.CodeVisitorSupport

getMetaClass

public groovy.lang.MetaClass getMetaClass()
Specified by:
getMetaClass in interface groovy.lang.GroovyObject
Overrides:
getMetaClass in class AbstractAstVisitor

setMetaClass

public void setMetaClass(groovy.lang.MetaClass metaClass)
Specified by:
setMetaClass in interface groovy.lang.GroovyObject
Overrides:
setMetaClass in class AbstractAstVisitor

invokeMethod

public java.lang.Object invokeMethod(java.lang.String name,
                                     java.lang.Object args)
Specified by:
invokeMethod in interface groovy.lang.GroovyObject
Overrides:
invokeMethod in class AbstractAstVisitor

getProperty

public java.lang.Object getProperty(java.lang.String name)
Specified by:
getProperty in interface groovy.lang.GroovyObject
Overrides:
getProperty in class AbstractAstVisitor

setProperty

public void setProperty(java.lang.String name,
                        java.lang.Object value)
Specified by:
setProperty in interface groovy.lang.GroovyObject
Overrides:
setProperty in class AbstractAstVisitor


Copyright © 2010. All Rights Reserved.