Home ⌂Doc Index ◂Up ▴

eric6.Plugins.CheckerPlugins.CodeStyleChecker.AnnotationsChecker

Module implementing a checker for function type annotations.

Global Attributes

None

Classes

AnnotationsChecker Class implementing a checker for function type annotations.
FunctionVisitor Class implementing a node visitor to check function annotations.

Functions

getAnnotationComplexity Function to determine the annotation complexity.
hasTypeAnnotations Function to check for type annotations.


AnnotationsChecker

Class implementing a checker for function type annotations.

Derived from

object

Class Attributes

Codes

Class Methods

None

Methods

AnnotationsChecker Constructor
__checkAnnotationComplexity Private method to check the type annotation complexity.
__checkAnnotationsCoverage Private method to check for function annotation coverage.
__checkFunctionAnnotations Private method to check for function annotation issues.
__error Private method to record an issue.
__generateTree Private method to generate an AST for our source.
__ignoreCode Private method to check if the message code should be ignored.
__reportInvalidSyntax Private method to report a syntax error.
run Public method to check the given source against annotation issues.

Static Methods

None

AnnotationsChecker (Constructor)

AnnotationsChecker(source, filename, select, ignore, expected, repeat, args)

Constructor

source (list of str)
source code to be checked
filename (str)
name of the source file
select (list of str)
list of selected codes
ignore (list of str)
list of codes to be ignored
expected (list of str)
list of expected codes
repeat (bool)
flag indicating to report each occurrence of a code
args (dict)
dictionary of arguments for the annotation checks

AnnotationsChecker.__checkAnnotationComplexity

__checkAnnotationComplexity()

Private method to check the type annotation complexity.

AnnotationsChecker.__checkAnnotationsCoverage

__checkAnnotationsCoverage()

Private method to check for function annotation coverage.

AnnotationsChecker.__checkFunctionAnnotations

__checkFunctionAnnotations()

Private method to check for function annotation issues.

AnnotationsChecker.__error

__error(lineNumber, offset, code, *args)

Private method to record an issue.

lineNumber (int)
line number of the issue
offset (int)
position within line of the issue
code (str)
message code
args (list)
arguments for the message

AnnotationsChecker.__generateTree

__generateTree()

Private method to generate an AST for our source.

Returns:
generated AST
Return Type:
ast.Module

AnnotationsChecker.__ignoreCode

__ignoreCode(code)

Private method to check if the message code should be ignored.

code (str)
message code to check for
Returns:
flag indicating to ignore the given code
Return Type:
bool

AnnotationsChecker.__reportInvalidSyntax

__reportInvalidSyntax()

Private method to report a syntax error.

AnnotationsChecker.run

run()

Public method to check the given source against annotation issues.

Up


FunctionVisitor

Class implementing a node visitor to check function annotations.

Note: this class is modelled after flake8-annotations checker.

Derived from

ast.NodeVisitor

Class Attributes

None

Class Methods

None

Methods

FunctionVisitor Constructor
__checkFunctionNode Private method to check an individual function definition node.
__classifyArgumentError Private method to classify and record an argument annotation issue.
__classifyReturnError Private method to classify and record a return annotation issue.
visit_AsyncFunctionDef Public method to handle an async function or method definition.
visit_ClassDef Public method to handle class definitions.
visit_FunctionDef Public method to handle a function or method definition.

Static Methods

None

FunctionVisitor (Constructor)

FunctionVisitor(sourceLines)

Constructor

sourceLines (list of str)
lines of source code

FunctionVisitor.__checkFunctionNode

__checkFunctionNode(node, classMethod=False)

Private method to check an individual function definition node.

node (ast.FunctionDef or ast.AsyncFunctionDef)
reference to the node to be processed
classMethod (bool)
flag indicating a class method

FunctionVisitor.__classifyArgumentError

__classifyArgumentError(argNode, argType, methodType)

Private method to classify and record an argument annotation issue.

argNode (ast.arguments)
reference to the argument node
argType (str)
type of the argument node
methodType (str)
type of method/function the argument belongs to

FunctionVisitor.__classifyReturnError

__classifyReturnError(methodType, visibilityType, lineno, colOffset)

Private method to classify and record a return annotation issue.

methodType (str)
type of method/function the argument belongs to
visibilityType (str)
visibility of the function
lineno (int)
line number
colOffset (int)
column number

FunctionVisitor.visit_AsyncFunctionDef

visit_AsyncFunctionDef(node)

Public method to handle an async function or method definition.

node (ast.AsyncFunctionDef)
reference to the node to be processed

FunctionVisitor.visit_ClassDef

visit_ClassDef(node)

Public method to handle class definitions.

node (ast.ClassDef)
reference to the node to be processed

FunctionVisitor.visit_FunctionDef

visit_FunctionDef(node)

Public method to handle a function or method definition.

node (ast.FunctionDef)
reference to the node to be processed
Up


getAnnotationComplexity

getAnnotationComplexity(annotationNode)

Function to determine the annotation complexity.

annotationNode (ast.AST)
reference to the node to determine the annotation complexity for
Returns:
annotation complexity
Return Type:
= int
Up


hasTypeAnnotations

hasTypeAnnotations(funcNode)

Function to check for type annotations.

funcNode (ast.AsyncFunctionDef or ast.FunctionDef)
reference to the function definition node to be checked
Returns:
flag indicating the presence of type annotations
Return Type:
bool
Up



Home ⌂Doc Index ◂Up ▴