Package org.sonar.python.metrics
Class CognitiveComplexityVisitor
- java.lang.Object
-
- org.sonar.plugins.python.api.tree.BaseTreeVisitor
-
- org.sonar.python.metrics.CognitiveComplexityVisitor
-
- All Implemented Interfaces:
TreeVisitor
public class CognitiveComplexityVisitor extends BaseTreeVisitor
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static interfaceCognitiveComplexityVisitor.SecondaryLocationConsumer
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description static intcomplexity(Tree tree, CognitiveComplexityVisitor.SecondaryLocationConsumer secondaryLocationConsumer)intgetComplexity()voidvisitBinaryExpression(BinaryExpression pyBinaryExpressionTree)voidvisitClassDef(ClassDef pyClassDefTree)voidvisitConditionalExpression(ConditionalExpression pyConditionalExpressionTree)voidvisitElseClause(ElseClause pyElseClauseTree)voidvisitExceptClause(ExceptClause exceptClause)voidvisitForStatement(ForStatement pyForStatementTree)voidvisitFunctionDef(FunctionDef pyFunctionDefTree)voidvisitIfStatement(IfStatement pyIfStatementTree)voidvisitStatementList(StatementList statementList)voidvisitWhileStatement(WhileStatement pyWhileStatementTree)-
Methods inherited from class org.sonar.plugins.python.api.tree.BaseTreeVisitor
scan, scan, visitAliasedName, visitAnnotatedAssignment, visitArgumentList, visitAssertStatement, visitAssignmentExpression, visitAssignmentStatement, visitAwaitExpression, visitBreakStatement, visitCallExpression, visitCompoundAssignment, visitComprehensionFor, visitComprehensionIf, visitContinueStatement, visitDecorator, visitDelStatement, visitDictCompExpression, visitDictionaryLiteral, visitDottedName, visitEllipsis, visitExecStatement, visitExpressionList, visitExpressionStatement, visitFileInput, visitFinallyClause, visitFormattedExpression, visitGlobalStatement, visitImportFrom, visitImportName, visitKeyValuePair, visitLambda, visitListLiteral, visitName, visitNone, visitNonlocalStatement, visitNumericLiteral, visitParameter, visitParameterList, visitParenthesizedExpression, visitPassStatement, visitPrintStatement, visitPyListOrSetCompExpression, visitQualifiedExpression, visitRaiseStatement, visitRegularArgument, visitRepr, visitReturnStatement, visitSetLiteral, visitSliceExpression, visitSliceItem, visitSliceList, visitStringElement, visitStringLiteral, visitSubscriptionExpression, visitToken, visitTryStatement, visitTuple, visitTupleParameter, visitTypeAnnotation, visitUnaryExpression, visitUnpackingExpression, visitWithItem, visitWithStatement, visitYieldExpression, visitYieldStatement
-
-
-
-
Method Detail
-
complexity
public static int complexity(Tree tree, @Nullable CognitiveComplexityVisitor.SecondaryLocationConsumer secondaryLocationConsumer)
-
getComplexity
public int getComplexity()
-
visitIfStatement
public void visitIfStatement(IfStatement pyIfStatementTree)
- Specified by:
visitIfStatementin interfaceTreeVisitor- Overrides:
visitIfStatementin classBaseTreeVisitor
-
visitElseClause
public void visitElseClause(ElseClause pyElseClauseTree)
- Specified by:
visitElseClausein interfaceTreeVisitor- Overrides:
visitElseClausein classBaseTreeVisitor
-
visitWhileStatement
public void visitWhileStatement(WhileStatement pyWhileStatementTree)
- Specified by:
visitWhileStatementin interfaceTreeVisitor- Overrides:
visitWhileStatementin classBaseTreeVisitor
-
visitForStatement
public void visitForStatement(ForStatement pyForStatementTree)
- Specified by:
visitForStatementin interfaceTreeVisitor- Overrides:
visitForStatementin classBaseTreeVisitor
-
visitExceptClause
public void visitExceptClause(ExceptClause exceptClause)
- Specified by:
visitExceptClausein interfaceTreeVisitor- Overrides:
visitExceptClausein classBaseTreeVisitor
-
visitBinaryExpression
public void visitBinaryExpression(BinaryExpression pyBinaryExpressionTree)
- Specified by:
visitBinaryExpressionin interfaceTreeVisitor- Overrides:
visitBinaryExpressionin classBaseTreeVisitor
-
visitFunctionDef
public void visitFunctionDef(FunctionDef pyFunctionDefTree)
- Specified by:
visitFunctionDefin interfaceTreeVisitor- Overrides:
visitFunctionDefin classBaseTreeVisitor
-
visitClassDef
public void visitClassDef(ClassDef pyClassDefTree)
- Specified by:
visitClassDefin interfaceTreeVisitor- Overrides:
visitClassDefin classBaseTreeVisitor
-
visitStatementList
public void visitStatementList(StatementList statementList)
- Specified by:
visitStatementListin interfaceTreeVisitor- Overrides:
visitStatementListin classBaseTreeVisitor
-
visitConditionalExpression
public void visitConditionalExpression(ConditionalExpression pyConditionalExpressionTree)
- Specified by:
visitConditionalExpressionin interfaceTreeVisitor- Overrides:
visitConditionalExpressionin classBaseTreeVisitor
-
-