public class AbstractAstVisitor
extends org.codehaus.groovy.ast.ClassCodeVisitorSupport
implements org.codenarc.rule.AstVisitor
Constructor and Description |
---|
AbstractAstVisitor() |
Modifier and Type | Method and Description |
---|---|
protected void |
addViolation(org.codehaus.groovy.ast.ASTNode node,
java.lang.String message)
Add a new Violation to the list of violations found by this visitor.
|
protected void |
addViolation(org.codenarc.rule.Violation violation)
Add a new Violation to the list of violations found by this visitor.
|
protected java.lang.String |
getCurrentClassName() |
protected org.codehaus.groovy.ast.ClassNode |
getCurrentClassNode() |
Rule |
getRule() |
org.codenarc.source.SourceCode |
getSourceCode() |
protected org.codehaus.groovy.control.SourceUnit |
getSourceUnit() |
java.util.List<org.codenarc.rule.Violation> |
getViolations() |
java.util.Set<java.lang.Object> |
getVisited() |
protected boolean |
isFirstVisit(java.lang.Object expression)
Return true if the AST expression has not already been visited.
|
protected java.lang.String |
lastSourceLine(org.codehaus.groovy.ast.ASTNode node)
Return the last raw source line corresponding to the specified AST node
|
protected java.lang.String |
lastSourceLineTrimmed(org.codehaus.groovy.ast.ASTNode node)
Return the trimmed last source line corresponding to the specified AST node
|
void |
setRule(Rule rule) |
void |
setSourceCode(org.codenarc.source.SourceCode sourceCode) |
void |
setVisited(java.util.Set<java.lang.Object> visited) |
protected boolean |
shouldVisitMethod(org.codehaus.groovy.ast.MethodNode node) |
protected java.lang.String |
sourceLine(org.codehaus.groovy.ast.ASTNode node)
Return the raw source line corresponding to the specified AST node
|
protected java.lang.String |
sourceLineTrimmed(org.codehaus.groovy.ast.ASTNode node)
Return the trimmed source line corresponding to the specified AST node
|
void |
visitClass(org.codehaus.groovy.ast.ClassNode node) |
protected void |
visitClassComplete(org.codehaus.groovy.ast.ClassNode node) |
protected void |
visitClassEx(org.codehaus.groovy.ast.ClassNode node) |
void |
visitMethod(org.codehaus.groovy.ast.MethodNode node) |
protected void |
visitMethodComplete(org.codehaus.groovy.ast.MethodNode node) |
protected void |
visitMethodEx(org.codehaus.groovy.ast.MethodNode node) |
addError, visitAnnotations, visitAssertStatement, visitBlockStatement, visitBreakStatement, visitCaseStatement, visitCatchStatement, visitClassCodeContainer, visitConstructor, visitConstructorOrMethod, visitContinueStatement, visitDeclarationExpression, visitDoWhileLoop, visitExpressionStatement, visitField, visitForLoop, visitIfElse, visitImports, visitObjectInitializerStatements, visitPackage, visitProperty, visitReturnStatement, visitStatement, visitSwitch, visitSynchronizedStatement, visitThrowStatement, visitTryCatchFinally, visitWhileLoop
visitArgumentlistExpression, visitArrayExpression, visitAttributeExpression, visitBinaryExpression, visitBitwiseNegationExpression, visitBooleanExpression, visitBytecodeExpression, visitCastExpression, visitClassExpression, visitClosureExpression, visitClosureListExpression, visitConstantExpression, visitConstructorCallExpression, visitEmptyStatement, visitFieldExpression, visitGStringExpression, visitListExpression, visitListOfExpressions, visitMapEntryExpression, visitMapExpression, visitMethodCallExpression, visitMethodPointerExpression, visitNotExpression, visitPostfixExpression, visitPrefixExpression, visitPropertyExpression, visitRangeExpression, visitShortTernaryExpression, visitSpreadExpression, visitSpreadMapExpression, visitStaticMethodCallExpression, visitTernaryExpression, visitTupleExpression, visitUnaryMinusExpression, visitUnaryPlusExpression, visitVariableExpression
protected boolean isFirstVisit(java.lang.Object expression)
expression
- - the AST expression to checkprotected java.lang.String sourceLineTrimmed(org.codehaus.groovy.ast.ASTNode node)
node
- - the Groovy AST nodeprotected java.lang.String sourceLine(org.codehaus.groovy.ast.ASTNode node)
node
- - the Groovy AST nodeprotected java.lang.String lastSourceLine(org.codehaus.groovy.ast.ASTNode node)
node
- - the Groovy AST nodeprotected java.lang.String lastSourceLineTrimmed(org.codehaus.groovy.ast.ASTNode node)
node
- - the Groovy AST nodeprotected void addViolation(org.codehaus.groovy.ast.ASTNode node, java.lang.String message)
node
- - the Groovy AST Nodemessage
- - the message for the violation; defaults to nullprotected void addViolation(org.codenarc.rule.Violation violation)
violation
- - the violation to addprotected org.codehaus.groovy.control.SourceUnit getSourceUnit()
getSourceUnit
in class org.codehaus.groovy.ast.ClassCodeVisitorSupport
public final void visitClass(org.codehaus.groovy.ast.ClassNode node)
visitClass
in interface org.codehaus.groovy.ast.GroovyClassVisitor
visitClass
in class org.codehaus.groovy.ast.ClassCodeVisitorSupport
protected void visitClassEx(org.codehaus.groovy.ast.ClassNode node)
protected void visitClassComplete(org.codehaus.groovy.ast.ClassNode node)
public final void visitMethod(org.codehaus.groovy.ast.MethodNode node)
visitMethod
in interface org.codehaus.groovy.ast.GroovyClassVisitor
visitMethod
in class org.codehaus.groovy.ast.ClassCodeVisitorSupport
protected boolean shouldVisitMethod(org.codehaus.groovy.ast.MethodNode node)
protected void visitMethodComplete(org.codehaus.groovy.ast.MethodNode node)
protected void visitMethodEx(org.codehaus.groovy.ast.MethodNode node)
public void setRule(Rule rule)
setRule
in interface org.codenarc.rule.AstVisitor
public void setSourceCode(org.codenarc.source.SourceCode sourceCode)
setSourceCode
in interface org.codenarc.rule.AstVisitor
public java.util.List<org.codenarc.rule.Violation> getViolations()
getViolations
in interface org.codenarc.rule.AstVisitor
public java.util.Set<java.lang.Object> getVisited()
public Rule getRule()
public org.codenarc.source.SourceCode getSourceCode()
public void setVisited(java.util.Set<java.lang.Object> visited)
protected java.lang.String getCurrentClassName()
protected org.codehaus.groovy.ast.ClassNode getCurrentClassNode()