Home ⌂Doc Index ◂Up ▴

eric6.DataViews.CodeMetrics

Module implementing a simple Python code metrics analyzer.

Raises ValueError:
the tokenize module is too old

Global Attributes

COMMENT
DEDENT
EMPTY
INDENT
KEYWORD
NEWLINE
spacer

Classes

Parser Class used to parse the source code of a Python file.
SourceStat Class used to calculate and store the source code statistics.
Token Class to store the token related infos.

Functions

analyze Module function used analyze the source of a Python file.
summarize Module function used to collect overall statistics.


Parser

Class used to parse the source code of a Python file.

Derived from

object

Class Attributes

None

Class Methods

None

Methods

__addToken Private method used to add a token to our list of tokens.
parse Public method used to parse the source code.

Static Methods

None

Parser.__addToken

__addToken(toktype, toktext, srow, scol, line)

Private method used to add a token to our list of tokens.

toktype
the type of the token (int)
toktext
the text of the token (string)
srow
starting row of the token (int)
scol
starting column of the token (int)
line
logical line the token was found (string)

Parser.parse

parse(text)

Public method used to parse the source code.

text
the source code as read from a Python source file
Up


SourceStat

Class used to calculate and store the source code statistics.

Derived from

object

Class Attributes

None

Class Methods

None

Methods

SourceStat Constructor
dedent Public method used to decrement the indentation level.
getCounter Public method used to get a specific counter value.
inc Public method used to increment the value of a key.
indent Public method used to increment the indentation level.
push Public method used to store an identifier.

Static Methods

None

SourceStat (Constructor)

SourceStat()

Constructor

SourceStat.dedent

dedent(tok)

Public method used to decrement the indentation level.

tok
the token to be processed (Token)
Raises ValueError:
raised to indicate an invalid indentation level

SourceStat.getCounter

getCounter(counterId, key)

Public method used to get a specific counter value.

counterId
id of the counter (string)
key
key of the value to be retrieved (string)
Returns:
the value of the requested counter (int)

SourceStat.inc

inc(key, value=1)

Public method used to increment the value of a key.

key
the key to be incremented
value
the increment (int)

SourceStat.indent

indent(tok)

Public method used to increment the indentation level.

tok
a token (Token, ignored)

SourceStat.push

push(identifier, row)

Public method used to store an identifier.

identifier
the identifier to be remembered (string)
row
the row, the identifier is defined in (int)
Up


Token

Class to store the token related infos.

Derived from

object

Class Attributes

None

Class Methods

None

Methods

Token Constructor

Static Methods

None

Token (Constructor)

Token(**kw)

Constructor

**kw=
list of key, value pairs
Up


analyze

analyze(filename, total)

Module function used analyze the source of a Python file.

filename
name of the Python file to be analyzed (string)
total
dictionary receiving the overall code statistics
Returns:
a statistics object with the collected code statistics (SourceStat)
Up


summarize

summarize(total, key, value)

Module function used to collect overall statistics.

total
the dictionary for the overall statistics
key
the key to be summarize
value
the value to be added to the overall statistics
Returns:
the value added to the overall statistics
Up



Home ⌂Doc Index ◂Up ▴