coalib.bearlib.aspects package

Submodules

coalib.bearlib.aspects.Formatting module

class coalib.bearlib.aspects.Formatting.BlankLine(language, **taste_values)[source]

Bases: coalib.bearlib.aspects.Formatting.BlankLine, coalib.bearlib.aspects.base.aspectbase

class BlankLineAfterClass(language, **taste_values)

Bases: coalib.bearlib.aspects.Formatting.BlankLineAfterClass, coalib.bearlib.aspects.base.aspectbase

docs = <coalib.bearlib.aspects.docs.Documentation object>
parent

alias of BlankLine

subaspects = {}
class BlankLineAfterDeclaration(language, **taste_values)

Bases: coalib.bearlib.aspects.Formatting.BlankLineAfterDeclaration, coalib.bearlib.aspects.base.aspectbase

docs = <coalib.bearlib.aspects.docs.Documentation object>
parent

alias of BlankLine

subaspects = {}
class BlankLineAfterProcedure(language, **taste_values)

Bases: coalib.bearlib.aspects.Formatting.BlankLineAfterProcedure, coalib.bearlib.aspects.base.aspectbase

docs = <coalib.bearlib.aspects.docs.Documentation object>
parent

alias of BlankLine

subaspects = {}
class NewlineAtEOF(language, **taste_values)

Bases: coalib.bearlib.aspects.Formatting.NewlineAtEOF, coalib.bearlib.aspects.base.aspectbase

docs = <coalib.bearlib.aspects.docs.Documentation object>
parent

alias of BlankLine

subaspects = {}
docs = <coalib.bearlib.aspects.docs.Documentation object>
parent

alias of Spacing

subaspects = {'BlankLineAfterClass': <aspectclass 'Root.Formatting.Spacing.BlankLine.BlankLineAfterClass'>, 'BlankLineAfterDeclaration': <aspectclass 'Root.Formatting.Spacing.BlankLine.BlankLineAfterDeclaration'>, 'NewlineAtEOF': <aspectclass 'Root.Formatting.Spacing.BlankLine.NewlineAtEOF'>, 'BlankLineAfterProcedure': <aspectclass 'Root.Formatting.Spacing.BlankLine.BlankLineAfterProcedure'>}
class coalib.bearlib.aspects.Formatting.BlankLineAfterClass(language, **taste_values)[source]

Bases: coalib.bearlib.aspects.Formatting.BlankLineAfterClass, coalib.bearlib.aspects.base.aspectbase

docs = <coalib.bearlib.aspects.docs.Documentation object>
parent

alias of BlankLine

subaspects = {}
class coalib.bearlib.aspects.Formatting.BlankLineAfterDeclaration(language, **taste_values)[source]

Bases: coalib.bearlib.aspects.Formatting.BlankLineAfterDeclaration, coalib.bearlib.aspects.base.aspectbase

docs = <coalib.bearlib.aspects.docs.Documentation object>
parent

alias of BlankLine

subaspects = {}
class coalib.bearlib.aspects.Formatting.BlankLineAfterProcedure(language, **taste_values)[source]

Bases: coalib.bearlib.aspects.Formatting.BlankLineAfterProcedure, coalib.bearlib.aspects.base.aspectbase

docs = <coalib.bearlib.aspects.docs.Documentation object>
parent

alias of BlankLine

subaspects = {}
class coalib.bearlib.aspects.Formatting.FileLength(language, **taste_values)[source]

Bases: coalib.bearlib.aspects.Formatting.FileLength, coalib.bearlib.aspects.base.aspectbase

docs = <coalib.bearlib.aspects.docs.Documentation object>
parent

alias of Length

subaspects = {}
class coalib.bearlib.aspects.Formatting.Formatting(language, **taste_values)[source]

Bases: coalib.bearlib.aspects.Formatting.Formatting, coalib.bearlib.aspects.base.aspectbase

class Length(language, **taste_values)

Bases: coalib.bearlib.aspects.Formatting.Length, coalib.bearlib.aspects.base.aspectbase

class FileLength(language, **taste_values)

Bases: coalib.bearlib.aspects.Formatting.FileLength, coalib.bearlib.aspects.base.aspectbase

docs = <coalib.bearlib.aspects.docs.Documentation object>
parent

alias of Length

subaspects = {}
class LineLength(language, **taste_values)

Bases: coalib.bearlib.aspects.Formatting.LineLength, coalib.bearlib.aspects.base.aspectbase

docs = <coalib.bearlib.aspects.docs.Documentation object>
parent

alias of Length

subaspects = {}
docs = <coalib.bearlib.aspects.docs.Documentation object>
parent

alias of Formatting

subaspects = {'LineLength': <aspectclass 'Root.Formatting.Length.LineLength'>, 'FileLength': <aspectclass 'Root.Formatting.Length.FileLength'>}
class Quotation(language, **taste_values)

Bases: coalib.bearlib.aspects.Formatting.Quotation, coalib.bearlib.aspects.base.aspectbase

docs = <coalib.bearlib.aspects.docs.Documentation object>
parent

alias of Formatting

subaspects = {}
class Spacing(language, **taste_values)

Bases: coalib.bearlib.aspects.Formatting.Spacing, coalib.bearlib.aspects.base.aspectbase

class BlankLine(language, **taste_values)

Bases: coalib.bearlib.aspects.Formatting.BlankLine, coalib.bearlib.aspects.base.aspectbase

class BlankLineAfterClass(language, **taste_values)

Bases: coalib.bearlib.aspects.Formatting.BlankLineAfterClass, coalib.bearlib.aspects.base.aspectbase

docs = <coalib.bearlib.aspects.docs.Documentation object>
parent

alias of BlankLine

subaspects = {}
class BlankLineAfterDeclaration(language, **taste_values)

Bases: coalib.bearlib.aspects.Formatting.BlankLineAfterDeclaration, coalib.bearlib.aspects.base.aspectbase

docs = <coalib.bearlib.aspects.docs.Documentation object>
parent

alias of BlankLine

subaspects = {}
class BlankLineAfterProcedure(language, **taste_values)

Bases: coalib.bearlib.aspects.Formatting.BlankLineAfterProcedure, coalib.bearlib.aspects.base.aspectbase

docs = <coalib.bearlib.aspects.docs.Documentation object>
parent

alias of BlankLine

subaspects = {}
class NewlineAtEOF(language, **taste_values)

Bases: coalib.bearlib.aspects.Formatting.NewlineAtEOF, coalib.bearlib.aspects.base.aspectbase

docs = <coalib.bearlib.aspects.docs.Documentation object>
parent

alias of BlankLine

subaspects = {}
docs = <coalib.bearlib.aspects.docs.Documentation object>
parent

alias of Spacing

subaspects = {'BlankLineAfterClass': <aspectclass 'Root.Formatting.Spacing.BlankLine.BlankLineAfterClass'>, 'BlankLineAfterDeclaration': <aspectclass 'Root.Formatting.Spacing.BlankLine.BlankLineAfterDeclaration'>, 'NewlineAtEOF': <aspectclass 'Root.Formatting.Spacing.BlankLine.NewlineAtEOF'>, 'BlankLineAfterProcedure': <aspectclass 'Root.Formatting.Spacing.BlankLine.BlankLineAfterProcedure'>}
class Indentation(language, **taste_values)

Bases: coalib.bearlib.aspects.Formatting.Indentation, coalib.bearlib.aspects.base.aspectbase

docs = <coalib.bearlib.aspects.docs.Documentation object>
parent

alias of Spacing

subaspects = {}
class SpacesAroundOperator(language, **taste_values)

Bases: coalib.bearlib.aspects.Formatting.SpacesAroundOperator, coalib.bearlib.aspects.base.aspectbase

docs = <coalib.bearlib.aspects.docs.Documentation object>
parent

alias of Spacing

subaspects = {}
class TrailingSpace(language, **taste_values)

Bases: coalib.bearlib.aspects.Formatting.TrailingSpace, coalib.bearlib.aspects.base.aspectbase

docs = <coalib.bearlib.aspects.docs.Documentation object>
parent

alias of Spacing

subaspects = {}
docs = <coalib.bearlib.aspects.docs.Documentation object>
parent

alias of Formatting

subaspects = {'TrailingSpace': <aspectclass 'Root.Formatting.Spacing.TrailingSpace'>, 'SpacesAroundOperator': <aspectclass 'Root.Formatting.Spacing.SpacesAroundOperator'>, 'BlankLine': <aspectclass 'Root.Formatting.Spacing.BlankLine'>, 'Indentation': <aspectclass 'Root.Formatting.Spacing.Indentation'>}
docs = <coalib.bearlib.aspects.docs.Documentation object>
parent

alias of Root

subaspects = {'Length': <aspectclass 'Root.Formatting.Length'>, 'Spacing': <aspectclass 'Root.Formatting.Spacing'>, 'Quotation': <aspectclass 'Root.Formatting.Quotation'>}
class coalib.bearlib.aspects.Formatting.Indentation(language, **taste_values)[source]

Bases: coalib.bearlib.aspects.Formatting.Indentation, coalib.bearlib.aspects.base.aspectbase

docs = <coalib.bearlib.aspects.docs.Documentation object>
parent

alias of Spacing

subaspects = {}
class coalib.bearlib.aspects.Formatting.Length(language, **taste_values)[source]

Bases: coalib.bearlib.aspects.Formatting.Length, coalib.bearlib.aspects.base.aspectbase

class FileLength(language, **taste_values)

Bases: coalib.bearlib.aspects.Formatting.FileLength, coalib.bearlib.aspects.base.aspectbase

docs = <coalib.bearlib.aspects.docs.Documentation object>
parent

alias of Length

subaspects = {}
class LineLength(language, **taste_values)

Bases: coalib.bearlib.aspects.Formatting.LineLength, coalib.bearlib.aspects.base.aspectbase

docs = <coalib.bearlib.aspects.docs.Documentation object>
parent

alias of Length

subaspects = {}
docs = <coalib.bearlib.aspects.docs.Documentation object>
parent

alias of Formatting

subaspects = {'LineLength': <aspectclass 'Root.Formatting.Length.LineLength'>, 'FileLength': <aspectclass 'Root.Formatting.Length.FileLength'>}
class coalib.bearlib.aspects.Formatting.LineLength(language, **taste_values)[source]

Bases: coalib.bearlib.aspects.Formatting.LineLength, coalib.bearlib.aspects.base.aspectbase

docs = <coalib.bearlib.aspects.docs.Documentation object>
parent

alias of Length

subaspects = {}
class coalib.bearlib.aspects.Formatting.NewlineAtEOF(language, **taste_values)[source]

Bases: coalib.bearlib.aspects.Formatting.NewlineAtEOF, coalib.bearlib.aspects.base.aspectbase

docs = <coalib.bearlib.aspects.docs.Documentation object>
parent

alias of BlankLine

subaspects = {}
class coalib.bearlib.aspects.Formatting.Quotation(language, **taste_values)[source]

Bases: coalib.bearlib.aspects.Formatting.Quotation, coalib.bearlib.aspects.base.aspectbase

docs = <coalib.bearlib.aspects.docs.Documentation object>
parent

alias of Formatting

subaspects = {}
class coalib.bearlib.aspects.Formatting.SpacesAroundOperator(language, **taste_values)[source]

Bases: coalib.bearlib.aspects.Formatting.SpacesAroundOperator, coalib.bearlib.aspects.base.aspectbase

docs = <coalib.bearlib.aspects.docs.Documentation object>
parent

alias of Spacing

subaspects = {}
class coalib.bearlib.aspects.Formatting.Spacing(language, **taste_values)[source]

Bases: coalib.bearlib.aspects.Formatting.Spacing, coalib.bearlib.aspects.base.aspectbase

class BlankLine(language, **taste_values)

Bases: coalib.bearlib.aspects.Formatting.BlankLine, coalib.bearlib.aspects.base.aspectbase

class BlankLineAfterClass(language, **taste_values)

Bases: coalib.bearlib.aspects.Formatting.BlankLineAfterClass, coalib.bearlib.aspects.base.aspectbase

docs = <coalib.bearlib.aspects.docs.Documentation object>
parent

alias of BlankLine

subaspects = {}
class BlankLineAfterDeclaration(language, **taste_values)

Bases: coalib.bearlib.aspects.Formatting.BlankLineAfterDeclaration, coalib.bearlib.aspects.base.aspectbase

docs = <coalib.bearlib.aspects.docs.Documentation object>
parent

alias of BlankLine

subaspects = {}
class BlankLineAfterProcedure(language, **taste_values)

Bases: coalib.bearlib.aspects.Formatting.BlankLineAfterProcedure, coalib.bearlib.aspects.base.aspectbase

docs = <coalib.bearlib.aspects.docs.Documentation object>
parent

alias of BlankLine

subaspects = {}
class NewlineAtEOF(language, **taste_values)

Bases: coalib.bearlib.aspects.Formatting.NewlineAtEOF, coalib.bearlib.aspects.base.aspectbase

docs = <coalib.bearlib.aspects.docs.Documentation object>
parent

alias of BlankLine

subaspects = {}
docs = <coalib.bearlib.aspects.docs.Documentation object>
parent

alias of Spacing

subaspects = {'BlankLineAfterClass': <aspectclass 'Root.Formatting.Spacing.BlankLine.BlankLineAfterClass'>, 'BlankLineAfterDeclaration': <aspectclass 'Root.Formatting.Spacing.BlankLine.BlankLineAfterDeclaration'>, 'NewlineAtEOF': <aspectclass 'Root.Formatting.Spacing.BlankLine.NewlineAtEOF'>, 'BlankLineAfterProcedure': <aspectclass 'Root.Formatting.Spacing.BlankLine.BlankLineAfterProcedure'>}
class Indentation(language, **taste_values)

Bases: coalib.bearlib.aspects.Formatting.Indentation, coalib.bearlib.aspects.base.aspectbase

docs = <coalib.bearlib.aspects.docs.Documentation object>
parent

alias of Spacing

subaspects = {}
class SpacesAroundOperator(language, **taste_values)

Bases: coalib.bearlib.aspects.Formatting.SpacesAroundOperator, coalib.bearlib.aspects.base.aspectbase

docs = <coalib.bearlib.aspects.docs.Documentation object>
parent

alias of Spacing

subaspects = {}
class TrailingSpace(language, **taste_values)

Bases: coalib.bearlib.aspects.Formatting.TrailingSpace, coalib.bearlib.aspects.base.aspectbase

docs = <coalib.bearlib.aspects.docs.Documentation object>
parent

alias of Spacing

subaspects = {}
docs = <coalib.bearlib.aspects.docs.Documentation object>
parent

alias of Formatting

subaspects = {'TrailingSpace': <aspectclass 'Root.Formatting.Spacing.TrailingSpace'>, 'SpacesAroundOperator': <aspectclass 'Root.Formatting.Spacing.SpacesAroundOperator'>, 'BlankLine': <aspectclass 'Root.Formatting.Spacing.BlankLine'>, 'Indentation': <aspectclass 'Root.Formatting.Spacing.Indentation'>}
class coalib.bearlib.aspects.Formatting.TrailingSpace(language, **taste_values)[source]

Bases: coalib.bearlib.aspects.Formatting.TrailingSpace, coalib.bearlib.aspects.base.aspectbase

docs = <coalib.bearlib.aspects.docs.Documentation object>
parent

alias of Spacing

subaspects = {}

coalib.bearlib.aspects.Metadata module

class coalib.bearlib.aspects.Metadata.Body(language, **taste_values)[source]

Bases: coalib.bearlib.aspects.Metadata.Body, coalib.bearlib.aspects.base.aspectbase

class Existence(language, **taste_values)

Bases: coalib.bearlib.aspects.Metadata.Existence, coalib.bearlib.aspects.base.aspectbase

docs = <coalib.bearlib.aspects.docs.Documentation object>
parent

alias of Body

subaspects = {}
class Length(language, **taste_values)

Bases: coalib.bearlib.aspects.Metadata.Length, coalib.bearlib.aspects.base.aspectbase

docs = <coalib.bearlib.aspects.docs.Documentation object>
parent

alias of Body

subaspects = {}
docs = <coalib.bearlib.aspects.docs.Documentation object>
parent

alias of CommitMessage

subaspects = {'Existence': <aspectclass 'Root.Metadata.CommitMessage.Body.Existence'>, 'Length': <aspectclass 'Root.Metadata.CommitMessage.Body.Length'>}
class coalib.bearlib.aspects.Metadata.ColonExistence(language, **taste_values)[source]

Bases: coalib.bearlib.aspects.Metadata.ColonExistence, coalib.bearlib.aspects.base.aspectbase

docs = <coalib.bearlib.aspects.docs.Documentation object>
parent

alias of Shortlog

subaspects = {}
class coalib.bearlib.aspects.Metadata.CommitMessage(language, **taste_values)[source]

Bases: coalib.bearlib.aspects.Metadata.CommitMessage, coalib.bearlib.aspects.base.aspectbase

class Body(language, **taste_values)

Bases: coalib.bearlib.aspects.Metadata.Body, coalib.bearlib.aspects.base.aspectbase

class Existence(language, **taste_values)

Bases: coalib.bearlib.aspects.Metadata.Existence, coalib.bearlib.aspects.base.aspectbase

docs = <coalib.bearlib.aspects.docs.Documentation object>
parent

alias of Body

subaspects = {}
class Length(language, **taste_values)

Bases: coalib.bearlib.aspects.Metadata.Length, coalib.bearlib.aspects.base.aspectbase

docs = <coalib.bearlib.aspects.docs.Documentation object>
parent

alias of Body

subaspects = {}
docs = <coalib.bearlib.aspects.docs.Documentation object>
parent

alias of CommitMessage

subaspects = {'Existence': <aspectclass 'Root.Metadata.CommitMessage.Body.Existence'>, 'Length': <aspectclass 'Root.Metadata.CommitMessage.Body.Length'>}
class Emptiness(language, **taste_values)

Bases: coalib.bearlib.aspects.Metadata.Emptiness, coalib.bearlib.aspects.base.aspectbase

docs = <coalib.bearlib.aspects.docs.Documentation object>
parent

alias of CommitMessage

subaspects = {}
class Shortlog(language, **taste_values)

Bases: coalib.bearlib.aspects.Metadata.Shortlog, coalib.bearlib.aspects.base.aspectbase

class ColonExistence(language, **taste_values)

Bases: coalib.bearlib.aspects.Metadata.ColonExistence, coalib.bearlib.aspects.base.aspectbase

docs = <coalib.bearlib.aspects.docs.Documentation object>
parent

alias of Shortlog

subaspects = {}
class FirstCharacter(language, **taste_values)

Bases: coalib.bearlib.aspects.Metadata.FirstCharacter, coalib.bearlib.aspects.base.aspectbase

docs = <coalib.bearlib.aspects.docs.Documentation object>
parent

alias of Shortlog

subaspects = {}
class Length(language, **taste_values)

Bases: coalib.bearlib.aspects.Metadata.Length, coalib.bearlib.aspects.base.aspectbase

docs = <coalib.bearlib.aspects.docs.Documentation object>
parent

alias of Shortlog

subaspects = {}
class Tense(language, **taste_values)

Bases: coalib.bearlib.aspects.Metadata.Tense, coalib.bearlib.aspects.base.aspectbase

docs = <coalib.bearlib.aspects.docs.Documentation object>
parent

alias of Shortlog

subaspects = {}
class TrailingPeriod(language, **taste_values)

Bases: coalib.bearlib.aspects.Metadata.TrailingPeriod, coalib.bearlib.aspects.base.aspectbase

docs = <coalib.bearlib.aspects.docs.Documentation object>
parent

alias of Shortlog

subaspects = {}
docs = <coalib.bearlib.aspects.docs.Documentation object>
parent

alias of CommitMessage

subaspects = {'Length': <aspectclass 'Root.Metadata.CommitMessage.Shortlog.Length'>, 'FirstCharacter': <aspectclass 'Root.Metadata.CommitMessage.Shortlog.FirstCharacter'>, 'ColonExistence': <aspectclass 'Root.Metadata.CommitMessage.Shortlog.ColonExistence'>, 'TrailingPeriod': <aspectclass 'Root.Metadata.CommitMessage.Shortlog.TrailingPeriod'>, 'Tense': <aspectclass 'Root.Metadata.CommitMessage.Shortlog.Tense'>}
docs = <coalib.bearlib.aspects.docs.Documentation object>
parent

alias of Metadata

subaspects = {'Shortlog': <aspectclass 'Root.Metadata.CommitMessage.Shortlog'>, 'Emptiness': <aspectclass 'Root.Metadata.CommitMessage.Emptiness'>, 'Body': <aspectclass 'Root.Metadata.CommitMessage.Body'>}
class coalib.bearlib.aspects.Metadata.Emptiness(language, **taste_values)[source]

Bases: coalib.bearlib.aspects.Metadata.Emptiness, coalib.bearlib.aspects.base.aspectbase

docs = <coalib.bearlib.aspects.docs.Documentation object>
parent

alias of CommitMessage

subaspects = {}
class coalib.bearlib.aspects.Metadata.Existence(language, **taste_values)[source]

Bases: coalib.bearlib.aspects.Metadata.Existence, coalib.bearlib.aspects.base.aspectbase

docs = <coalib.bearlib.aspects.docs.Documentation object>
parent

alias of Body

subaspects = {}
class coalib.bearlib.aspects.Metadata.FirstCharacter(language, **taste_values)[source]

Bases: coalib.bearlib.aspects.Metadata.FirstCharacter, coalib.bearlib.aspects.base.aspectbase

docs = <coalib.bearlib.aspects.docs.Documentation object>
parent

alias of Shortlog

subaspects = {}
class coalib.bearlib.aspects.Metadata.Length(language, **taste_values)[source]

Bases: coalib.bearlib.aspects.Metadata.Length, coalib.bearlib.aspects.base.aspectbase

docs = <coalib.bearlib.aspects.docs.Documentation object>
parent

alias of Body

subaspects = {}
class coalib.bearlib.aspects.Metadata.Metadata(language, **taste_values)[source]

Bases: coalib.bearlib.aspects.Metadata.Metadata, coalib.bearlib.aspects.base.aspectbase

class CommitMessage(language, **taste_values)

Bases: coalib.bearlib.aspects.Metadata.CommitMessage, coalib.bearlib.aspects.base.aspectbase

class Body(language, **taste_values)

Bases: coalib.bearlib.aspects.Metadata.Body, coalib.bearlib.aspects.base.aspectbase

class Existence(language, **taste_values)

Bases: coalib.bearlib.aspects.Metadata.Existence, coalib.bearlib.aspects.base.aspectbase

docs = <coalib.bearlib.aspects.docs.Documentation object>
parent

alias of Body

subaspects = {}
class Length(language, **taste_values)

Bases: coalib.bearlib.aspects.Metadata.Length, coalib.bearlib.aspects.base.aspectbase

docs = <coalib.bearlib.aspects.docs.Documentation object>
parent

alias of Body

subaspects = {}
docs = <coalib.bearlib.aspects.docs.Documentation object>
parent

alias of CommitMessage

subaspects = {'Existence': <aspectclass 'Root.Metadata.CommitMessage.Body.Existence'>, 'Length': <aspectclass 'Root.Metadata.CommitMessage.Body.Length'>}
class Emptiness(language, **taste_values)

Bases: coalib.bearlib.aspects.Metadata.Emptiness, coalib.bearlib.aspects.base.aspectbase

docs = <coalib.bearlib.aspects.docs.Documentation object>
parent

alias of CommitMessage

subaspects = {}
class Shortlog(language, **taste_values)

Bases: coalib.bearlib.aspects.Metadata.Shortlog, coalib.bearlib.aspects.base.aspectbase

class ColonExistence(language, **taste_values)

Bases: coalib.bearlib.aspects.Metadata.ColonExistence, coalib.bearlib.aspects.base.aspectbase

docs = <coalib.bearlib.aspects.docs.Documentation object>
parent

alias of Shortlog

subaspects = {}
class FirstCharacter(language, **taste_values)

Bases: coalib.bearlib.aspects.Metadata.FirstCharacter, coalib.bearlib.aspects.base.aspectbase

docs = <coalib.bearlib.aspects.docs.Documentation object>
parent

alias of Shortlog

subaspects = {}
class Length(language, **taste_values)

Bases: coalib.bearlib.aspects.Metadata.Length, coalib.bearlib.aspects.base.aspectbase

docs = <coalib.bearlib.aspects.docs.Documentation object>
parent

alias of Shortlog

subaspects = {}
class Tense(language, **taste_values)

Bases: coalib.bearlib.aspects.Metadata.Tense, coalib.bearlib.aspects.base.aspectbase

docs = <coalib.bearlib.aspects.docs.Documentation object>
parent

alias of Shortlog

subaspects = {}
class TrailingPeriod(language, **taste_values)

Bases: coalib.bearlib.aspects.Metadata.TrailingPeriod, coalib.bearlib.aspects.base.aspectbase

docs = <coalib.bearlib.aspects.docs.Documentation object>
parent

alias of Shortlog

subaspects = {}
docs = <coalib.bearlib.aspects.docs.Documentation object>
parent

alias of CommitMessage

subaspects = {'Length': <aspectclass 'Root.Metadata.CommitMessage.Shortlog.Length'>, 'FirstCharacter': <aspectclass 'Root.Metadata.CommitMessage.Shortlog.FirstCharacter'>, 'ColonExistence': <aspectclass 'Root.Metadata.CommitMessage.Shortlog.ColonExistence'>, 'TrailingPeriod': <aspectclass 'Root.Metadata.CommitMessage.Shortlog.TrailingPeriod'>, 'Tense': <aspectclass 'Root.Metadata.CommitMessage.Shortlog.Tense'>}
docs = <coalib.bearlib.aspects.docs.Documentation object>
parent

alias of Metadata

subaspects = {'Shortlog': <aspectclass 'Root.Metadata.CommitMessage.Shortlog'>, 'Emptiness': <aspectclass 'Root.Metadata.CommitMessage.Emptiness'>, 'Body': <aspectclass 'Root.Metadata.CommitMessage.Body'>}
docs = <coalib.bearlib.aspects.docs.Documentation object>
parent

alias of Root

subaspects = {'CommitMessage': <aspectclass 'Root.Metadata.CommitMessage'>}
class coalib.bearlib.aspects.Metadata.Shortlog(language, **taste_values)[source]

Bases: coalib.bearlib.aspects.Metadata.Shortlog, coalib.bearlib.aspects.base.aspectbase

class ColonExistence(language, **taste_values)

Bases: coalib.bearlib.aspects.Metadata.ColonExistence, coalib.bearlib.aspects.base.aspectbase

docs = <coalib.bearlib.aspects.docs.Documentation object>
parent

alias of Shortlog

subaspects = {}
class FirstCharacter(language, **taste_values)

Bases: coalib.bearlib.aspects.Metadata.FirstCharacter, coalib.bearlib.aspects.base.aspectbase

docs = <coalib.bearlib.aspects.docs.Documentation object>
parent

alias of Shortlog

subaspects = {}
class Length(language, **taste_values)

Bases: coalib.bearlib.aspects.Metadata.Length, coalib.bearlib.aspects.base.aspectbase

docs = <coalib.bearlib.aspects.docs.Documentation object>
parent

alias of Shortlog

subaspects = {}
class Tense(language, **taste_values)

Bases: coalib.bearlib.aspects.Metadata.Tense, coalib.bearlib.aspects.base.aspectbase

docs = <coalib.bearlib.aspects.docs.Documentation object>
parent

alias of Shortlog

subaspects = {}
class TrailingPeriod(language, **taste_values)

Bases: coalib.bearlib.aspects.Metadata.TrailingPeriod, coalib.bearlib.aspects.base.aspectbase

docs = <coalib.bearlib.aspects.docs.Documentation object>
parent

alias of Shortlog

subaspects = {}
docs = <coalib.bearlib.aspects.docs.Documentation object>
parent

alias of CommitMessage

subaspects = {'Length': <aspectclass 'Root.Metadata.CommitMessage.Shortlog.Length'>, 'FirstCharacter': <aspectclass 'Root.Metadata.CommitMessage.Shortlog.FirstCharacter'>, 'ColonExistence': <aspectclass 'Root.Metadata.CommitMessage.Shortlog.ColonExistence'>, 'TrailingPeriod': <aspectclass 'Root.Metadata.CommitMessage.Shortlog.TrailingPeriod'>, 'Tense': <aspectclass 'Root.Metadata.CommitMessage.Shortlog.Tense'>}
class coalib.bearlib.aspects.Metadata.Tense(language, **taste_values)[source]

Bases: coalib.bearlib.aspects.Metadata.Tense, coalib.bearlib.aspects.base.aspectbase

docs = <coalib.bearlib.aspects.docs.Documentation object>
parent

alias of Shortlog

subaspects = {}
class coalib.bearlib.aspects.Metadata.TrailingPeriod(language, **taste_values)[source]

Bases: coalib.bearlib.aspects.Metadata.TrailingPeriod, coalib.bearlib.aspects.base.aspectbase

docs = <coalib.bearlib.aspects.docs.Documentation object>
parent

alias of Shortlog

subaspects = {}

coalib.bearlib.aspects.Redundancy module

class coalib.bearlib.aspects.Redundancy.Clone(language, **taste_values)[source]

Bases: coalib.bearlib.aspects.Redundancy.Clone, coalib.bearlib.aspects.base.aspectbase

docs = <coalib.bearlib.aspects.docs.Documentation object>
parent

alias of Redundancy

subaspects = {}
class coalib.bearlib.aspects.Redundancy.Redundancy(language, **taste_values)[source]

Bases: coalib.bearlib.aspects.Redundancy.Redundancy, coalib.bearlib.aspects.base.aspectbase

class Clone(language, **taste_values)

Bases: coalib.bearlib.aspects.Redundancy.Clone, coalib.bearlib.aspects.base.aspectbase

docs = <coalib.bearlib.aspects.docs.Documentation object>
parent

alias of Redundancy

subaspects = {}
class UnreachableCode(language, **taste_values)

Bases: coalib.bearlib.aspects.Redundancy.UnreachableCode, coalib.bearlib.aspects.base.aspectbase

class UnreachableStatement(language, **taste_values)

Bases: coalib.bearlib.aspects.Redundancy.UnreachableStatement, coalib.bearlib.aspects.base.aspectbase

docs = <coalib.bearlib.aspects.docs.Documentation object>
parent

alias of UnreachableCode

subaspects = {}
class UnusedFunction(language, **taste_values)

Bases: coalib.bearlib.aspects.Redundancy.UnusedFunction, coalib.bearlib.aspects.base.aspectbase

docs = <coalib.bearlib.aspects.docs.Documentation object>
parent

alias of UnreachableCode

subaspects = {}
docs = <coalib.bearlib.aspects.docs.Documentation object>
parent

alias of Redundancy

subaspects = {'UnreachableStatement': <aspectclass 'Root.Redundancy.UnreachableCode.UnreachableStatement'>, 'UnusedFunction': <aspectclass 'Root.Redundancy.UnreachableCode.UnusedFunction'>}
class UnusedImport(language, **taste_values)

Bases: coalib.bearlib.aspects.Redundancy.UnusedImport, coalib.bearlib.aspects.base.aspectbase

docs = <coalib.bearlib.aspects.docs.Documentation object>
parent

alias of Redundancy

subaspects = {}
class UnusedVariable(language, **taste_values)

Bases: coalib.bearlib.aspects.Redundancy.UnusedVariable, coalib.bearlib.aspects.base.aspectbase

class UnusedGlobalVariable(language, **taste_values)

Bases: coalib.bearlib.aspects.Redundancy.UnusedGlobalVariable, coalib.bearlib.aspects.base.aspectbase

docs = <coalib.bearlib.aspects.docs.Documentation object>
parent

alias of UnusedVariable

subaspects = {}
class UnusedLocalVariable(language, **taste_values)

Bases: coalib.bearlib.aspects.Redundancy.UnusedLocalVariable, coalib.bearlib.aspects.base.aspectbase

docs = <coalib.bearlib.aspects.docs.Documentation object>
parent

alias of UnusedVariable

subaspects = {}
class UnusedParameter(language, **taste_values)

Bases: coalib.bearlib.aspects.Redundancy.UnusedParameter, coalib.bearlib.aspects.base.aspectbase

docs = <coalib.bearlib.aspects.docs.Documentation object>
parent

alias of UnusedVariable

subaspects = {}
docs = <coalib.bearlib.aspects.docs.Documentation object>
parent

alias of Redundancy

subaspects = {'UnusedParameter': <aspectclass 'Root.Redundancy.UnusedVariable.UnusedParameter'>, 'UnusedLocalVariable': <aspectclass 'Root.Redundancy.UnusedVariable.UnusedLocalVariable'>, 'UnusedGlobalVariable': <aspectclass 'Root.Redundancy.UnusedVariable.UnusedGlobalVariable'>}
docs = <coalib.bearlib.aspects.docs.Documentation object>
parent

alias of Root

subaspects = {'Clone': <aspectclass 'Root.Redundancy.Clone'>, 'UnusedImport': <aspectclass 'Root.Redundancy.UnusedImport'>, 'UnreachableCode': <aspectclass 'Root.Redundancy.UnreachableCode'>, 'UnusedVariable': <aspectclass 'Root.Redundancy.UnusedVariable'>}
class coalib.bearlib.aspects.Redundancy.UnreachableCode(language, **taste_values)[source]

Bases: coalib.bearlib.aspects.Redundancy.UnreachableCode, coalib.bearlib.aspects.base.aspectbase

class UnreachableStatement(language, **taste_values)

Bases: coalib.bearlib.aspects.Redundancy.UnreachableStatement, coalib.bearlib.aspects.base.aspectbase

docs = <coalib.bearlib.aspects.docs.Documentation object>
parent

alias of UnreachableCode

subaspects = {}
class UnusedFunction(language, **taste_values)

Bases: coalib.bearlib.aspects.Redundancy.UnusedFunction, coalib.bearlib.aspects.base.aspectbase

docs = <coalib.bearlib.aspects.docs.Documentation object>
parent

alias of UnreachableCode

subaspects = {}
docs = <coalib.bearlib.aspects.docs.Documentation object>
parent

alias of Redundancy

subaspects = {'UnreachableStatement': <aspectclass 'Root.Redundancy.UnreachableCode.UnreachableStatement'>, 'UnusedFunction': <aspectclass 'Root.Redundancy.UnreachableCode.UnusedFunction'>}
class coalib.bearlib.aspects.Redundancy.UnreachableStatement(language, **taste_values)[source]

Bases: coalib.bearlib.aspects.Redundancy.UnreachableStatement, coalib.bearlib.aspects.base.aspectbase

docs = <coalib.bearlib.aspects.docs.Documentation object>
parent

alias of UnreachableCode

subaspects = {}
class coalib.bearlib.aspects.Redundancy.UnusedFunction(language, **taste_values)[source]

Bases: coalib.bearlib.aspects.Redundancy.UnusedFunction, coalib.bearlib.aspects.base.aspectbase

docs = <coalib.bearlib.aspects.docs.Documentation object>
parent

alias of UnreachableCode

subaspects = {}
class coalib.bearlib.aspects.Redundancy.UnusedGlobalVariable(language, **taste_values)[source]

Bases: coalib.bearlib.aspects.Redundancy.UnusedGlobalVariable, coalib.bearlib.aspects.base.aspectbase

docs = <coalib.bearlib.aspects.docs.Documentation object>
parent

alias of UnusedVariable

subaspects = {}
class coalib.bearlib.aspects.Redundancy.UnusedImport(language, **taste_values)[source]

Bases: coalib.bearlib.aspects.Redundancy.UnusedImport, coalib.bearlib.aspects.base.aspectbase

docs = <coalib.bearlib.aspects.docs.Documentation object>
parent

alias of Redundancy

subaspects = {}
class coalib.bearlib.aspects.Redundancy.UnusedLocalVariable(language, **taste_values)[source]

Bases: coalib.bearlib.aspects.Redundancy.UnusedLocalVariable, coalib.bearlib.aspects.base.aspectbase

docs = <coalib.bearlib.aspects.docs.Documentation object>
parent

alias of UnusedVariable

subaspects = {}
class coalib.bearlib.aspects.Redundancy.UnusedParameter(language, **taste_values)[source]

Bases: coalib.bearlib.aspects.Redundancy.UnusedParameter, coalib.bearlib.aspects.base.aspectbase

docs = <coalib.bearlib.aspects.docs.Documentation object>
parent

alias of UnusedVariable

subaspects = {}
class coalib.bearlib.aspects.Redundancy.UnusedVariable(language, **taste_values)[source]

Bases: coalib.bearlib.aspects.Redundancy.UnusedVariable, coalib.bearlib.aspects.base.aspectbase

class UnusedGlobalVariable(language, **taste_values)

Bases: coalib.bearlib.aspects.Redundancy.UnusedGlobalVariable, coalib.bearlib.aspects.base.aspectbase

docs = <coalib.bearlib.aspects.docs.Documentation object>
parent

alias of UnusedVariable

subaspects = {}
class UnusedLocalVariable(language, **taste_values)

Bases: coalib.bearlib.aspects.Redundancy.UnusedLocalVariable, coalib.bearlib.aspects.base.aspectbase

docs = <coalib.bearlib.aspects.docs.Documentation object>
parent

alias of UnusedVariable

subaspects = {}
class UnusedParameter(language, **taste_values)

Bases: coalib.bearlib.aspects.Redundancy.UnusedParameter, coalib.bearlib.aspects.base.aspectbase

docs = <coalib.bearlib.aspects.docs.Documentation object>
parent

alias of UnusedVariable

subaspects = {}
docs = <coalib.bearlib.aspects.docs.Documentation object>
parent

alias of Redundancy

subaspects = {'UnusedParameter': <aspectclass 'Root.Redundancy.UnusedVariable.UnusedParameter'>, 'UnusedLocalVariable': <aspectclass 'Root.Redundancy.UnusedVariable.UnusedLocalVariable'>, 'UnusedGlobalVariable': <aspectclass 'Root.Redundancy.UnusedVariable.UnusedGlobalVariable'>}

coalib.bearlib.aspects.Security module

class coalib.bearlib.aspects.Security.Security(language, **taste_values)[source]

Bases: coalib.bearlib.aspects.Security.Security, coalib.bearlib.aspects.base.aspectbase

docs = <coalib.bearlib.aspects.docs.Documentation object>
parent

alias of Root

subaspects = {}

coalib.bearlib.aspects.Smell module

class coalib.bearlib.aspects.Smell.ClassConstants(language, **taste_values)[source]

Bases: coalib.bearlib.aspects.Smell.ClassConstants, coalib.bearlib.aspects.base.aspectbase

docs = <coalib.bearlib.aspects.docs.Documentation object>
parent

alias of ClassSize

subaspects = {}
class coalib.bearlib.aspects.Smell.ClassInstanceVariables(language, **taste_values)[source]

Bases: coalib.bearlib.aspects.Smell.ClassInstanceVariables, coalib.bearlib.aspects.base.aspectbase

docs = <coalib.bearlib.aspects.docs.Documentation object>
parent

alias of ClassSize

subaspects = {}
class coalib.bearlib.aspects.Smell.ClassLength(language, **taste_values)[source]

Bases: coalib.bearlib.aspects.Smell.ClassLength, coalib.bearlib.aspects.base.aspectbase

docs = <coalib.bearlib.aspects.docs.Documentation object>
parent

alias of ClassSize

subaspects = {}
class coalib.bearlib.aspects.Smell.ClassMethods(language, **taste_values)[source]

Bases: coalib.bearlib.aspects.Smell.ClassMethods, coalib.bearlib.aspects.base.aspectbase

docs = <coalib.bearlib.aspects.docs.Documentation object>
parent

alias of ClassSize

subaspects = {}
class coalib.bearlib.aspects.Smell.ClassSize(language, **taste_values)[source]

Bases: coalib.bearlib.aspects.Smell.ClassSize, coalib.bearlib.aspects.base.aspectbase

class ClassConstants(language, **taste_values)

Bases: coalib.bearlib.aspects.Smell.ClassConstants, coalib.bearlib.aspects.base.aspectbase

docs = <coalib.bearlib.aspects.docs.Documentation object>
parent

alias of ClassSize

subaspects = {}
class ClassInstanceVariables(language, **taste_values)

Bases: coalib.bearlib.aspects.Smell.ClassInstanceVariables, coalib.bearlib.aspects.base.aspectbase

docs = <coalib.bearlib.aspects.docs.Documentation object>
parent

alias of ClassSize

subaspects = {}
class ClassLength(language, **taste_values)

Bases: coalib.bearlib.aspects.Smell.ClassLength, coalib.bearlib.aspects.base.aspectbase

docs = <coalib.bearlib.aspects.docs.Documentation object>
parent

alias of ClassSize

subaspects = {}
class ClassMethods(language, **taste_values)

Bases: coalib.bearlib.aspects.Smell.ClassMethods, coalib.bearlib.aspects.base.aspectbase

docs = <coalib.bearlib.aspects.docs.Documentation object>
parent

alias of ClassSize

subaspects = {}
docs = <coalib.bearlib.aspects.docs.Documentation object>
parent

alias of ClassSmell

subaspects = {'ClassMethods': <aspectclass 'Root.Smell.ClassSmell.ClassSize.ClassMethods'>, 'ClassConstants': <aspectclass 'Root.Smell.ClassSmell.ClassSize.ClassConstants'>, 'ClassLength': <aspectclass 'Root.Smell.ClassSmell.ClassSize.ClassLength'>, 'ClassInstanceVariables': <aspectclass 'Root.Smell.ClassSmell.ClassSize.ClassInstanceVariables'>}
class coalib.bearlib.aspects.Smell.ClassSmell(language, **taste_values)[source]

Bases: coalib.bearlib.aspects.Smell.ClassSmell, coalib.bearlib.aspects.base.aspectbase

class ClassSize(language, **taste_values)

Bases: coalib.bearlib.aspects.Smell.ClassSize, coalib.bearlib.aspects.base.aspectbase

class ClassConstants(language, **taste_values)

Bases: coalib.bearlib.aspects.Smell.ClassConstants, coalib.bearlib.aspects.base.aspectbase

docs = <coalib.bearlib.aspects.docs.Documentation object>
parent

alias of ClassSize

subaspects = {}
class ClassInstanceVariables(language, **taste_values)

Bases: coalib.bearlib.aspects.Smell.ClassInstanceVariables, coalib.bearlib.aspects.base.aspectbase

docs = <coalib.bearlib.aspects.docs.Documentation object>
parent

alias of ClassSize

subaspects = {}
class ClassLength(language, **taste_values)

Bases: coalib.bearlib.aspects.Smell.ClassLength, coalib.bearlib.aspects.base.aspectbase

docs = <coalib.bearlib.aspects.docs.Documentation object>
parent

alias of ClassSize

subaspects = {}
class ClassMethods(language, **taste_values)

Bases: coalib.bearlib.aspects.Smell.ClassMethods, coalib.bearlib.aspects.base.aspectbase

docs = <coalib.bearlib.aspects.docs.Documentation object>
parent

alias of ClassSize

subaspects = {}
docs = <coalib.bearlib.aspects.docs.Documentation object>
parent

alias of ClassSmell

subaspects = {'ClassMethods': <aspectclass 'Root.Smell.ClassSmell.ClassSize.ClassMethods'>, 'ClassConstants': <aspectclass 'Root.Smell.ClassSmell.ClassSize.ClassConstants'>, 'ClassLength': <aspectclass 'Root.Smell.ClassSmell.ClassSize.ClassLength'>, 'ClassInstanceVariables': <aspectclass 'Root.Smell.ClassSmell.ClassSize.ClassInstanceVariables'>}
class DataClump(language, **taste_values)

Bases: coalib.bearlib.aspects.Smell.DataClump, coalib.bearlib.aspects.base.aspectbase

docs = <coalib.bearlib.aspects.docs.Documentation object>
parent

alias of ClassSmell

subaspects = {}
class FeatureEnvy(language, **taste_values)

Bases: coalib.bearlib.aspects.Smell.FeatureEnvy, coalib.bearlib.aspects.base.aspectbase

docs = <coalib.bearlib.aspects.docs.Documentation object>
parent

alias of ClassSmell

subaspects = {}
docs = <coalib.bearlib.aspects.docs.Documentation object>
parent

alias of Smell

subaspects = {'FeatureEnvy': <aspectclass 'Root.Smell.ClassSmell.FeatureEnvy'>, 'ClassSize': <aspectclass 'Root.Smell.ClassSmell.ClassSize'>, 'DataClump': <aspectclass 'Root.Smell.ClassSmell.DataClump'>}
class coalib.bearlib.aspects.Smell.Complexity(language, **taste_values)[source]

Bases: coalib.bearlib.aspects.Smell.Complexity, coalib.bearlib.aspects.base.aspectbase

class CylomaticComplexity(language, **taste_values)

Bases: coalib.bearlib.aspects.Smell.CylomaticComplexity, coalib.bearlib.aspects.base.aspectbase

docs = <coalib.bearlib.aspects.docs.Documentation object>
parent

alias of Complexity

subaspects = {}
class MaintainabilityIndex(language, **taste_values)

Bases: coalib.bearlib.aspects.Smell.MaintainabilityIndex, coalib.bearlib.aspects.base.aspectbase

docs = <coalib.bearlib.aspects.docs.Documentation object>
parent

alias of Complexity

subaspects = {}
docs = <coalib.bearlib.aspects.docs.Documentation object>
parent

alias of Smell

subaspects = {'MaintainabilityIndex': <aspectclass 'Root.Smell.Complexity.MaintainabilityIndex'>, 'CylomaticComplexity': <aspectclass 'Root.Smell.Complexity.CylomaticComplexity'>}
class coalib.bearlib.aspects.Smell.CylomaticComplexity(language, **taste_values)[source]

Bases: coalib.bearlib.aspects.Smell.CylomaticComplexity, coalib.bearlib.aspects.base.aspectbase

docs = <coalib.bearlib.aspects.docs.Documentation object>
parent

alias of Complexity

subaspects = {}
class coalib.bearlib.aspects.Smell.DataClump(language, **taste_values)[source]

Bases: coalib.bearlib.aspects.Smell.DataClump, coalib.bearlib.aspects.base.aspectbase

docs = <coalib.bearlib.aspects.docs.Documentation object>
parent

alias of ClassSmell

subaspects = {}
class coalib.bearlib.aspects.Smell.FeatureEnvy(language, **taste_values)[source]

Bases: coalib.bearlib.aspects.Smell.FeatureEnvy, coalib.bearlib.aspects.base.aspectbase

docs = <coalib.bearlib.aspects.docs.Documentation object>
parent

alias of ClassSmell

subaspects = {}
class coalib.bearlib.aspects.Smell.MaintainabilityIndex(language, **taste_values)[source]

Bases: coalib.bearlib.aspects.Smell.MaintainabilityIndex, coalib.bearlib.aspects.base.aspectbase

docs = <coalib.bearlib.aspects.docs.Documentation object>
parent

alias of Complexity

subaspects = {}
class coalib.bearlib.aspects.Smell.MethodLength(language, **taste_values)[source]

Bases: coalib.bearlib.aspects.Smell.MethodLength, coalib.bearlib.aspects.base.aspectbase

docs = <coalib.bearlib.aspects.docs.Documentation object>
parent

alias of MethodSmell

subaspects = {}
class coalib.bearlib.aspects.Smell.MethodSmell(language, **taste_values)[source]

Bases: coalib.bearlib.aspects.Smell.MethodSmell, coalib.bearlib.aspects.base.aspectbase

class MethodLength(language, **taste_values)

Bases: coalib.bearlib.aspects.Smell.MethodLength, coalib.bearlib.aspects.base.aspectbase

docs = <coalib.bearlib.aspects.docs.Documentation object>
parent

alias of MethodSmell

subaspects = {}
class ParameterListLength(language, **taste_values)

Bases: coalib.bearlib.aspects.Smell.ParameterListLength, coalib.bearlib.aspects.base.aspectbase

docs = <coalib.bearlib.aspects.docs.Documentation object>
parent

alias of MethodSmell

subaspects = {}
docs = <coalib.bearlib.aspects.docs.Documentation object>
parent

alias of Smell

subaspects = {'ParameterListLength': <aspectclass 'Root.Smell.MethodSmell.ParameterListLength'>, 'MethodLength': <aspectclass 'Root.Smell.MethodSmell.MethodLength'>}
class coalib.bearlib.aspects.Smell.Naming(language, **taste_values)[source]

Bases: coalib.bearlib.aspects.Smell.Naming, coalib.bearlib.aspects.base.aspectbase

docs = <coalib.bearlib.aspects.docs.Documentation object>
parent

alias of Smell

subaspects = {}
class coalib.bearlib.aspects.Smell.ParameterListLength(language, **taste_values)[source]

Bases: coalib.bearlib.aspects.Smell.ParameterListLength, coalib.bearlib.aspects.base.aspectbase

docs = <coalib.bearlib.aspects.docs.Documentation object>
parent

alias of MethodSmell

subaspects = {}
class coalib.bearlib.aspects.Smell.Smell(language, **taste_values)[source]

Bases: coalib.bearlib.aspects.Smell.Smell, coalib.bearlib.aspects.base.aspectbase

class ClassSmell(language, **taste_values)

Bases: coalib.bearlib.aspects.Smell.ClassSmell, coalib.bearlib.aspects.base.aspectbase

class ClassSize(language, **taste_values)

Bases: coalib.bearlib.aspects.Smell.ClassSize, coalib.bearlib.aspects.base.aspectbase

class ClassConstants(language, **taste_values)

Bases: coalib.bearlib.aspects.Smell.ClassConstants, coalib.bearlib.aspects.base.aspectbase

docs = <coalib.bearlib.aspects.docs.Documentation object>
parent

alias of ClassSize

subaspects = {}
class ClassInstanceVariables(language, **taste_values)

Bases: coalib.bearlib.aspects.Smell.ClassInstanceVariables, coalib.bearlib.aspects.base.aspectbase

docs = <coalib.bearlib.aspects.docs.Documentation object>
parent

alias of ClassSize

subaspects = {}
class ClassLength(language, **taste_values)

Bases: coalib.bearlib.aspects.Smell.ClassLength, coalib.bearlib.aspects.base.aspectbase

docs = <coalib.bearlib.aspects.docs.Documentation object>
parent

alias of ClassSize

subaspects = {}
class ClassMethods(language, **taste_values)

Bases: coalib.bearlib.aspects.Smell.ClassMethods, coalib.bearlib.aspects.base.aspectbase

docs = <coalib.bearlib.aspects.docs.Documentation object>
parent

alias of ClassSize

subaspects = {}
docs = <coalib.bearlib.aspects.docs.Documentation object>
parent

alias of ClassSmell

subaspects = {'ClassMethods': <aspectclass 'Root.Smell.ClassSmell.ClassSize.ClassMethods'>, 'ClassConstants': <aspectclass 'Root.Smell.ClassSmell.ClassSize.ClassConstants'>, 'ClassLength': <aspectclass 'Root.Smell.ClassSmell.ClassSize.ClassLength'>, 'ClassInstanceVariables': <aspectclass 'Root.Smell.ClassSmell.ClassSize.ClassInstanceVariables'>}
class DataClump(language, **taste_values)

Bases: coalib.bearlib.aspects.Smell.DataClump, coalib.bearlib.aspects.base.aspectbase

docs = <coalib.bearlib.aspects.docs.Documentation object>
parent

alias of ClassSmell

subaspects = {}
class FeatureEnvy(language, **taste_values)

Bases: coalib.bearlib.aspects.Smell.FeatureEnvy, coalib.bearlib.aspects.base.aspectbase

docs = <coalib.bearlib.aspects.docs.Documentation object>
parent

alias of ClassSmell

subaspects = {}
docs = <coalib.bearlib.aspects.docs.Documentation object>
parent

alias of Smell

subaspects = {'FeatureEnvy': <aspectclass 'Root.Smell.ClassSmell.FeatureEnvy'>, 'ClassSize': <aspectclass 'Root.Smell.ClassSmell.ClassSize'>, 'DataClump': <aspectclass 'Root.Smell.ClassSmell.DataClump'>}
class Complexity(language, **taste_values)

Bases: coalib.bearlib.aspects.Smell.Complexity, coalib.bearlib.aspects.base.aspectbase

class CylomaticComplexity(language, **taste_values)

Bases: coalib.bearlib.aspects.Smell.CylomaticComplexity, coalib.bearlib.aspects.base.aspectbase

docs = <coalib.bearlib.aspects.docs.Documentation object>
parent

alias of Complexity

subaspects = {}
class MaintainabilityIndex(language, **taste_values)

Bases: coalib.bearlib.aspects.Smell.MaintainabilityIndex, coalib.bearlib.aspects.base.aspectbase

docs = <coalib.bearlib.aspects.docs.Documentation object>
parent

alias of Complexity

subaspects = {}
docs = <coalib.bearlib.aspects.docs.Documentation object>
parent

alias of Smell

subaspects = {'MaintainabilityIndex': <aspectclass 'Root.Smell.Complexity.MaintainabilityIndex'>, 'CylomaticComplexity': <aspectclass 'Root.Smell.Complexity.CylomaticComplexity'>}
class MethodSmell(language, **taste_values)

Bases: coalib.bearlib.aspects.Smell.MethodSmell, coalib.bearlib.aspects.base.aspectbase

class MethodLength(language, **taste_values)

Bases: coalib.bearlib.aspects.Smell.MethodLength, coalib.bearlib.aspects.base.aspectbase

docs = <coalib.bearlib.aspects.docs.Documentation object>
parent

alias of MethodSmell

subaspects = {}
class ParameterListLength(language, **taste_values)

Bases: coalib.bearlib.aspects.Smell.ParameterListLength, coalib.bearlib.aspects.base.aspectbase

docs = <coalib.bearlib.aspects.docs.Documentation object>
parent

alias of MethodSmell

subaspects = {}
docs = <coalib.bearlib.aspects.docs.Documentation object>
parent

alias of Smell

subaspects = {'ParameterListLength': <aspectclass 'Root.Smell.MethodSmell.ParameterListLength'>, 'MethodLength': <aspectclass 'Root.Smell.MethodSmell.MethodLength'>}
class Naming(language, **taste_values)

Bases: coalib.bearlib.aspects.Smell.Naming, coalib.bearlib.aspects.base.aspectbase

docs = <coalib.bearlib.aspects.docs.Documentation object>
parent

alias of Smell

subaspects = {}
docs = <coalib.bearlib.aspects.docs.Documentation object>
parent

alias of Root

subaspects = {'Complexity': <aspectclass 'Root.Smell.Complexity'>, 'MethodSmell': <aspectclass 'Root.Smell.MethodSmell'>, 'ClassSmell': <aspectclass 'Root.Smell.ClassSmell'>, 'Naming': <aspectclass 'Root.Smell.Naming'>}

coalib.bearlib.aspects.Spelling module

class coalib.bearlib.aspects.Spelling.DictionarySpelling(language, **taste_values)[source]

Bases: coalib.bearlib.aspects.Spelling.DictionarySpelling, coalib.bearlib.aspects.base.aspectbase

docs = <coalib.bearlib.aspects.docs.Documentation object>
parent

alias of Spelling

subaspects = {}
class coalib.bearlib.aspects.Spelling.OrgSpecificWordSpelling(language, **taste_values)[source]

Bases: coalib.bearlib.aspects.Spelling.OrgSpecificWordSpelling, coalib.bearlib.aspects.base.aspectbase

docs = <coalib.bearlib.aspects.docs.Documentation object>
parent

alias of Spelling

subaspects = {}
class coalib.bearlib.aspects.Spelling.Spelling(language, **taste_values)[source]

Bases: coalib.bearlib.aspects.Spelling.Spelling, coalib.bearlib.aspects.base.aspectbase

class DictionarySpelling(language, **taste_values)

Bases: coalib.bearlib.aspects.Spelling.DictionarySpelling, coalib.bearlib.aspects.base.aspectbase

docs = <coalib.bearlib.aspects.docs.Documentation object>
parent

alias of Spelling

subaspects = {}
class OrgSpecificWordSpelling(language, **taste_values)

Bases: coalib.bearlib.aspects.Spelling.OrgSpecificWordSpelling, coalib.bearlib.aspects.base.aspectbase

docs = <coalib.bearlib.aspects.docs.Documentation object>
parent

alias of Spelling

subaspects = {}
docs = <coalib.bearlib.aspects.docs.Documentation object>
parent

alias of Root

subaspects = {'OrgSpecificWordSpelling': <aspectclass 'Root.Spelling.OrgSpecificWordSpelling'>, 'DictionarySpelling': <aspectclass 'Root.Spelling.DictionarySpelling'>}

coalib.bearlib.aspects.base module

class coalib.bearlib.aspects.base.LeafAspectGetter[source]

Bases: object

Descriptor class for get_leaf_aspects() method in aspectbase.

This class is required to make the get_leaf_aspects() accessible from both aspectclass and aspectclass instance.

class coalib.bearlib.aspects.base.SubaspectGetter[source]

Bases: object

Special “getter” class to implement get() method in aspectbase that could be accessed from the aspectclass or aspectclass instance.

class coalib.bearlib.aspects.base.aspectbase(language, **taste_values)[source]

Bases: object

Base class for aspectclasses with common features for their instances.

Derived classes must use coalib.bearlib.aspects.meta.aspectclass as metaclass. This is automatically handled by coalib.bearlib.aspects.meta.aspectclass.subaspect() decorator.

get = functools.partial(<function get_subaspect>, <class 'coalib.bearlib.aspects.base.aspectbase'>)
get_leaf_aspects = functools.partial(<function _get_leaf_aspects>, <class 'coalib.bearlib.aspects.base.aspectbase'>)
tastes

Get a dictionary of all taste names mapped to their specific values, including parent tastes.

coalib.bearlib.aspects.base.get_subaspect(parent, subaspect)[source]

Get a subaspect from an aspectclass or aspectclass instance.

>>> import coalib.bearlib.aspects as coala_aspects
>>> metadata = coala_aspects['Metadata']
>>> commit_msg = coala_aspects['CommitMessage']
>>> shortlog = coala_aspects['Shortlog']

We can get direct children.

>>> get_subaspect(metadata, commit_msg)
<aspectclass 'Root.Metadata.CommitMessage'>

Or even a grandchildren.

>>> get_subaspect(metadata, shortlog)
<aspectclass 'Root.Metadata.CommitMessage.Shortlog'>

Or with string of aspect name

>>> get_subaspect(metadata, 'shortlog')
<aspectclass 'Root.Metadata.CommitMessage.Shortlog'>

We can also get child instance of an aspect instance.

>>> get_subaspect(metadata('Python'), commit_msg)
<...CommitMessage object at 0x...>

But, passing subaspect instance as argument is prohibited, because it doesn’t really make sense.

>>> get_subaspect(metadata('Python'), commit_msg('Java'))
Traceback (most recent call last):
...
AttributeError: Cannot search an aspect instance using another ...
Parameters:
  • parent – The parent aspect that should be searched.
  • subaspect – An subaspect that we want to find in an aspectclass.
Returns:

An aspectclass. Return None if not found.

coalib.bearlib.aspects.collections module

class coalib.bearlib.aspects.collections.AspectList(seq=(), exclude=None, languages=None)[source]

Bases: list

List-derived container to hold aspects.

get(aspect)[source]

Return first item that match or contain an aspect. See coalib.bearlib.aspects.aspectbase.get() for further example.

Parameters:aspect – An aspectclass OR name of an aspect.
Returns:An aspectclass OR aspectclass instance, depend on AspectList content. Return None if no match found.
get_leaf_aspects()[source]

Breakdown all of item in self into their leaf subaspects.

Returns:An AspectList contain ONLY leaf aspects.

coalib.bearlib.aspects.decorators module

coalib.bearlib.aspects.decorators.map_setting_to_aspect(**aspectable_setting)[source]

Map function arguments with aspect and override it if appropriate.

This decorator can be used by Bear.run() to automatically map and override bear’s setting value with their equivalent aspect or taste.

The order of setting override from the lowest to highest is: - Setting default (in bear’s run argument) - Aspect/taste default (if aspect is activated in Section) - Explicit aspect/taste default (if aspect is activated in Section) - Explicit setting

Parameters:aspectable_setting – A dictionary of settings as keys and their equivalent aspect or taste as value.

coalib.bearlib.aspects.docs module

class coalib.bearlib.aspects.docs.Documentation(definition: str = '', example: str = '', example_language: str = '', importance_reason: str = '', fix_suggestions: str = '')[source]

Bases: object

This class contains documentation about an aspectclass. The documentation is consistent if all members are given:

>>> Documentation('defined').check_consistency()
False
>>> Documentation('definition', 'example',
...               'example_language', 'importance',
...               'fix').check_consistency()
True
check_consistency()

coalib.bearlib.aspects.exceptions module

exception coalib.bearlib.aspects.exceptions.AspectLookupError(aspectname, message=None)[source]

Bases: LookupError

Error raised when trying to search aspect.

exception coalib.bearlib.aspects.exceptions.AspectNotFoundError(aspectname)[source]

Bases: coalib.bearlib.aspects.exceptions.AspectLookupError

No aspect found.

exception coalib.bearlib.aspects.exceptions.AspectTypeError(item)[source]

Bases: TypeError

This error is raised when an object is not an aspectclass or an instance of aspectclass

exception coalib.bearlib.aspects.exceptions.MultipleAspectFoundError(aspectname, other_aspects)[source]

Bases: coalib.bearlib.aspects.exceptions.AspectLookupError

Multiple aspect are found.

coalib.bearlib.aspects.meta module

class coalib.bearlib.aspects.meta.aspectclass(clsname, bases, clsattrs)[source]

Bases: type

Metaclass for aspectclasses.

Root aspectclass is coalib.bearlib.aspects.Root.

subaspect(subcls)[source]

The sub-aspectclass decorator.

See coalib.bearlib.aspects.Root for description and usage.

tastes

Get a dictionary of all taste names mapped to their coalib.bearlib.aspects.Taste instances.

coalib.bearlib.aspects.meta.assert_aspect(item)[source]

This function raises AspectTypeError when an object is not an aspectclass or an instance of aspectclass

coalib.bearlib.aspects.meta.isaspect(item)[source]

This function checks whether or not an object is an aspectclass or an instance of aspectclass

coalib.bearlib.aspects.meta.issubaspect(subaspect, aspect)[source]

This function checks whether or not subaspect is a subaspect of aspect.

coalib.bearlib.aspects.root module

class coalib.bearlib.aspects.root.Root(language, **taste_values)[source]

Bases: coalib.bearlib.aspects.base.aspectbase

The root aspectclass.

Define sub-aspectclasses with class-bound .subaspect decorator. Definition string is taken from doc-string of decorated class. Remaining docs are taken from a nested docs class. Tastes are defined as class attributes that are instances of coalib.bearlib.aspects.Taste.

>>> from coalib.bearlib.aspects import Taste
>>> @Root.subaspect
... class Formatting:
...     """
...     A parent aspect for code formatting aspects...
...     """
...     class docs:
...        example = "..."
...        example_language = "..."
...        importance_reason = "..."
...        fix_suggestions = "..."

We can now create subaspects like this:

>>> @Formatting.subaspect
... class LineLength:
...     """
...     This aspect controls the length of a line...
...     """
...     class docs:
...        example = "..."
...        example_language = "..."
...        importance_reason = "..."
...        fix_suggestions = "..."
...
...     max_line_length = Taste[int](
...         "Maximum length allowed for a line.",
...         (80, 90, 120), default=80)

The representation will show the full “path” to the leaf of the tree:

>>> Root.Formatting.LineLength
<aspectclass 'Root.Formatting.LineLength'>

We can see, which settings are availables:

>>> Formatting.tastes
{}
>>> LineLength.tastes
{'max_line_length': <....Taste[int] object at ...>}

And instantiate the aspect with the values, they will be automatically converted:

>>> Formatting('Python')
<....Root.Formatting object at 0x...>
>>> LineLength('Python', max_line_length="100").tastes
{'max_line_length': 100}

If no settings are given, the defaults will be taken:

>>> LineLength('Python').tastes
{'max_line_length': 80}

Tastes can also be made available for only specific languages:

>>> from coalib.bearlib.languages import Language
>>> @Language
... class GreaterTrumpScript:
...     pass
>>> @Formatting.subaspect
... class Greatness:
...     """
...     This aspect controls the greatness of a file...
...     """
...     class docs:
...        example = "..."
...        example_language = "..."
...        importance_reason = "..."
...        fix_suggestions = "..."
...     min_greatness = Taste[int](
...         "Minimum greatness factor needed for a TrumpScript file. "
...         "This is fact.",
...         (1000000, 1000000000, 1000000000000), default=1000000,
...         languages=('GreaterTrumpScript' ,))
>>> Greatness.tastes
{'min_greatness': <....Taste[int] object at ...>}
>>> Greatness('GreaterTrumpScript').tastes
{'min_greatness': 1000000}
>>> Greatness('GreaterTrumpScript', min_greatness=1000000000000).tastes
{'min_greatness': 1000000000000}
>>> Greatness('Python').tastes
{}
>>> Greatness('Python', min_greatness=1000000000)
... 
Traceback (most recent call last):
  ...
coalib.bearlib.aspects.taste.TasteError:
Root.Formatting.Greatness.min_greatness is not available ...
>>> Greatness('Python').min_greatness
... 
Traceback (most recent call last):
  ...
coalib.bearlib.aspects.taste.TasteError:
Root.Formatting.Greatness.min_greatness is not available ...
class Formatting(language, **taste_values)

Bases: coalib.bearlib.aspects.Formatting.Formatting, coalib.bearlib.aspects.base.aspectbase

class Length(language, **taste_values)

Bases: coalib.bearlib.aspects.Formatting.Length, coalib.bearlib.aspects.base.aspectbase

class FileLength(language, **taste_values)

Bases: coalib.bearlib.aspects.Formatting.FileLength, coalib.bearlib.aspects.base.aspectbase

docs = <coalib.bearlib.aspects.docs.Documentation object>
parent

alias of Length

subaspects = {}
class LineLength(language, **taste_values)

Bases: coalib.bearlib.aspects.Formatting.LineLength, coalib.bearlib.aspects.base.aspectbase

docs = <coalib.bearlib.aspects.docs.Documentation object>
parent

alias of Length

subaspects = {}
docs = <coalib.bearlib.aspects.docs.Documentation object>
parent

alias of Formatting

subaspects = {'LineLength': <aspectclass 'Root.Formatting.Length.LineLength'>, 'FileLength': <aspectclass 'Root.Formatting.Length.FileLength'>}
class Quotation(language, **taste_values)

Bases: coalib.bearlib.aspects.Formatting.Quotation, coalib.bearlib.aspects.base.aspectbase

docs = <coalib.bearlib.aspects.docs.Documentation object>
parent

alias of Formatting

subaspects = {}
class Spacing(language, **taste_values)

Bases: coalib.bearlib.aspects.Formatting.Spacing, coalib.bearlib.aspects.base.aspectbase

class BlankLine(language, **taste_values)

Bases: coalib.bearlib.aspects.Formatting.BlankLine, coalib.bearlib.aspects.base.aspectbase

class BlankLineAfterClass(language, **taste_values)

Bases: coalib.bearlib.aspects.Formatting.BlankLineAfterClass, coalib.bearlib.aspects.base.aspectbase

docs = <coalib.bearlib.aspects.docs.Documentation object>
parent

alias of BlankLine

subaspects = {}
class BlankLineAfterDeclaration(language, **taste_values)

Bases: coalib.bearlib.aspects.Formatting.BlankLineAfterDeclaration, coalib.bearlib.aspects.base.aspectbase

docs = <coalib.bearlib.aspects.docs.Documentation object>
parent

alias of BlankLine

subaspects = {}
class BlankLineAfterProcedure(language, **taste_values)

Bases: coalib.bearlib.aspects.Formatting.BlankLineAfterProcedure, coalib.bearlib.aspects.base.aspectbase

docs = <coalib.bearlib.aspects.docs.Documentation object>
parent

alias of BlankLine

subaspects = {}
class NewlineAtEOF(language, **taste_values)

Bases: coalib.bearlib.aspects.Formatting.NewlineAtEOF, coalib.bearlib.aspects.base.aspectbase

docs = <coalib.bearlib.aspects.docs.Documentation object>
parent

alias of BlankLine

subaspects = {}
docs = <coalib.bearlib.aspects.docs.Documentation object>
parent

alias of Spacing

subaspects = {'BlankLineAfterClass': <aspectclass 'Root.Formatting.Spacing.BlankLine.BlankLineAfterClass'>, 'BlankLineAfterDeclaration': <aspectclass 'Root.Formatting.Spacing.BlankLine.BlankLineAfterDeclaration'>, 'NewlineAtEOF': <aspectclass 'Root.Formatting.Spacing.BlankLine.NewlineAtEOF'>, 'BlankLineAfterProcedure': <aspectclass 'Root.Formatting.Spacing.BlankLine.BlankLineAfterProcedure'>}
class Indentation(language, **taste_values)

Bases: coalib.bearlib.aspects.Formatting.Indentation, coalib.bearlib.aspects.base.aspectbase

docs = <coalib.bearlib.aspects.docs.Documentation object>
parent

alias of Spacing

subaspects = {}
class SpacesAroundOperator(language, **taste_values)

Bases: coalib.bearlib.aspects.Formatting.SpacesAroundOperator, coalib.bearlib.aspects.base.aspectbase

docs = <coalib.bearlib.aspects.docs.Documentation object>
parent

alias of Spacing

subaspects = {}
class TrailingSpace(language, **taste_values)

Bases: coalib.bearlib.aspects.Formatting.TrailingSpace, coalib.bearlib.aspects.base.aspectbase

docs = <coalib.bearlib.aspects.docs.Documentation object>
parent

alias of Spacing

subaspects = {}
docs = <coalib.bearlib.aspects.docs.Documentation object>
parent

alias of Formatting

subaspects = {'TrailingSpace': <aspectclass 'Root.Formatting.Spacing.TrailingSpace'>, 'SpacesAroundOperator': <aspectclass 'Root.Formatting.Spacing.SpacesAroundOperator'>, 'BlankLine': <aspectclass 'Root.Formatting.Spacing.BlankLine'>, 'Indentation': <aspectclass 'Root.Formatting.Spacing.Indentation'>}
docs = <coalib.bearlib.aspects.docs.Documentation object>
parent

alias of Root

subaspects = {'Length': <aspectclass 'Root.Formatting.Length'>, 'Spacing': <aspectclass 'Root.Formatting.Spacing'>, 'Quotation': <aspectclass 'Root.Formatting.Quotation'>}
class Metadata(language, **taste_values)

Bases: coalib.bearlib.aspects.Metadata.Metadata, coalib.bearlib.aspects.base.aspectbase

class CommitMessage(language, **taste_values)

Bases: coalib.bearlib.aspects.Metadata.CommitMessage, coalib.bearlib.aspects.base.aspectbase

class Body(language, **taste_values)

Bases: coalib.bearlib.aspects.Metadata.Body, coalib.bearlib.aspects.base.aspectbase

class Existence(language, **taste_values)

Bases: coalib.bearlib.aspects.Metadata.Existence, coalib.bearlib.aspects.base.aspectbase

docs = <coalib.bearlib.aspects.docs.Documentation object>
parent

alias of Body

subaspects = {}
class Length(language, **taste_values)

Bases: coalib.bearlib.aspects.Metadata.Length, coalib.bearlib.aspects.base.aspectbase

docs = <coalib.bearlib.aspects.docs.Documentation object>
parent

alias of Body

subaspects = {}
docs = <coalib.bearlib.aspects.docs.Documentation object>
parent

alias of CommitMessage

subaspects = {'Existence': <aspectclass 'Root.Metadata.CommitMessage.Body.Existence'>, 'Length': <aspectclass 'Root.Metadata.CommitMessage.Body.Length'>}
class Emptiness(language, **taste_values)

Bases: coalib.bearlib.aspects.Metadata.Emptiness, coalib.bearlib.aspects.base.aspectbase

docs = <coalib.bearlib.aspects.docs.Documentation object>
parent

alias of CommitMessage

subaspects = {}
class Shortlog(language, **taste_values)

Bases: coalib.bearlib.aspects.Metadata.Shortlog, coalib.bearlib.aspects.base.aspectbase

class ColonExistence(language, **taste_values)

Bases: coalib.bearlib.aspects.Metadata.ColonExistence, coalib.bearlib.aspects.base.aspectbase

docs = <coalib.bearlib.aspects.docs.Documentation object>
parent

alias of Shortlog

subaspects = {}
class FirstCharacter(language, **taste_values)

Bases: coalib.bearlib.aspects.Metadata.FirstCharacter, coalib.bearlib.aspects.base.aspectbase

docs = <coalib.bearlib.aspects.docs.Documentation object>
parent

alias of Shortlog

subaspects = {}
class Length(language, **taste_values)

Bases: coalib.bearlib.aspects.Metadata.Length, coalib.bearlib.aspects.base.aspectbase

docs = <coalib.bearlib.aspects.docs.Documentation object>
parent

alias of Shortlog

subaspects = {}
class Tense(language, **taste_values)

Bases: coalib.bearlib.aspects.Metadata.Tense, coalib.bearlib.aspects.base.aspectbase

docs = <coalib.bearlib.aspects.docs.Documentation object>
parent

alias of Shortlog

subaspects = {}
class TrailingPeriod(language, **taste_values)

Bases: coalib.bearlib.aspects.Metadata.TrailingPeriod, coalib.bearlib.aspects.base.aspectbase

docs = <coalib.bearlib.aspects.docs.Documentation object>
parent

alias of Shortlog

subaspects = {}
docs = <coalib.bearlib.aspects.docs.Documentation object>
parent

alias of CommitMessage

subaspects = {'Length': <aspectclass 'Root.Metadata.CommitMessage.Shortlog.Length'>, 'FirstCharacter': <aspectclass 'Root.Metadata.CommitMessage.Shortlog.FirstCharacter'>, 'ColonExistence': <aspectclass 'Root.Metadata.CommitMessage.Shortlog.ColonExistence'>, 'TrailingPeriod': <aspectclass 'Root.Metadata.CommitMessage.Shortlog.TrailingPeriod'>, 'Tense': <aspectclass 'Root.Metadata.CommitMessage.Shortlog.Tense'>}
docs = <coalib.bearlib.aspects.docs.Documentation object>
parent

alias of Metadata

subaspects = {'Shortlog': <aspectclass 'Root.Metadata.CommitMessage.Shortlog'>, 'Emptiness': <aspectclass 'Root.Metadata.CommitMessage.Emptiness'>, 'Body': <aspectclass 'Root.Metadata.CommitMessage.Body'>}
docs = <coalib.bearlib.aspects.docs.Documentation object>
parent

alias of Root

subaspects = {'CommitMessage': <aspectclass 'Root.Metadata.CommitMessage'>}
class Redundancy(language, **taste_values)

Bases: coalib.bearlib.aspects.Redundancy.Redundancy, coalib.bearlib.aspects.base.aspectbase

class Clone(language, **taste_values)

Bases: coalib.bearlib.aspects.Redundancy.Clone, coalib.bearlib.aspects.base.aspectbase

docs = <coalib.bearlib.aspects.docs.Documentation object>
parent

alias of Redundancy

subaspects = {}
class UnreachableCode(language, **taste_values)

Bases: coalib.bearlib.aspects.Redundancy.UnreachableCode, coalib.bearlib.aspects.base.aspectbase

class UnreachableStatement(language, **taste_values)

Bases: coalib.bearlib.aspects.Redundancy.UnreachableStatement, coalib.bearlib.aspects.base.aspectbase

docs = <coalib.bearlib.aspects.docs.Documentation object>
parent

alias of UnreachableCode

subaspects = {}
class UnusedFunction(language, **taste_values)

Bases: coalib.bearlib.aspects.Redundancy.UnusedFunction, coalib.bearlib.aspects.base.aspectbase

docs = <coalib.bearlib.aspects.docs.Documentation object>
parent

alias of UnreachableCode

subaspects = {}
docs = <coalib.bearlib.aspects.docs.Documentation object>
parent

alias of Redundancy

subaspects = {'UnreachableStatement': <aspectclass 'Root.Redundancy.UnreachableCode.UnreachableStatement'>, 'UnusedFunction': <aspectclass 'Root.Redundancy.UnreachableCode.UnusedFunction'>}
class UnusedImport(language, **taste_values)

Bases: coalib.bearlib.aspects.Redundancy.UnusedImport, coalib.bearlib.aspects.base.aspectbase

docs = <coalib.bearlib.aspects.docs.Documentation object>
parent

alias of Redundancy

subaspects = {}
class UnusedVariable(language, **taste_values)

Bases: coalib.bearlib.aspects.Redundancy.UnusedVariable, coalib.bearlib.aspects.base.aspectbase

class UnusedGlobalVariable(language, **taste_values)

Bases: coalib.bearlib.aspects.Redundancy.UnusedGlobalVariable, coalib.bearlib.aspects.base.aspectbase

docs = <coalib.bearlib.aspects.docs.Documentation object>
parent

alias of UnusedVariable

subaspects = {}
class UnusedLocalVariable(language, **taste_values)

Bases: coalib.bearlib.aspects.Redundancy.UnusedLocalVariable, coalib.bearlib.aspects.base.aspectbase

docs = <coalib.bearlib.aspects.docs.Documentation object>
parent

alias of UnusedVariable

subaspects = {}
class UnusedParameter(language, **taste_values)

Bases: coalib.bearlib.aspects.Redundancy.UnusedParameter, coalib.bearlib.aspects.base.aspectbase

docs = <coalib.bearlib.aspects.docs.Documentation object>
parent

alias of UnusedVariable

subaspects = {}
docs = <coalib.bearlib.aspects.docs.Documentation object>
parent

alias of Redundancy

subaspects = {'UnusedParameter': <aspectclass 'Root.Redundancy.UnusedVariable.UnusedParameter'>, 'UnusedLocalVariable': <aspectclass 'Root.Redundancy.UnusedVariable.UnusedLocalVariable'>, 'UnusedGlobalVariable': <aspectclass 'Root.Redundancy.UnusedVariable.UnusedGlobalVariable'>}
docs = <coalib.bearlib.aspects.docs.Documentation object>
parent

alias of Root

subaspects = {'Clone': <aspectclass 'Root.Redundancy.Clone'>, 'UnusedImport': <aspectclass 'Root.Redundancy.UnusedImport'>, 'UnreachableCode': <aspectclass 'Root.Redundancy.UnreachableCode'>, 'UnusedVariable': <aspectclass 'Root.Redundancy.UnusedVariable'>}
class Security(language, **taste_values)

Bases: coalib.bearlib.aspects.Security.Security, coalib.bearlib.aspects.base.aspectbase

docs = <coalib.bearlib.aspects.docs.Documentation object>
parent

alias of Root

subaspects = {}
class Smell(language, **taste_values)

Bases: coalib.bearlib.aspects.Smell.Smell, coalib.bearlib.aspects.base.aspectbase

class ClassSmell(language, **taste_values)

Bases: coalib.bearlib.aspects.Smell.ClassSmell, coalib.bearlib.aspects.base.aspectbase

class ClassSize(language, **taste_values)

Bases: coalib.bearlib.aspects.Smell.ClassSize, coalib.bearlib.aspects.base.aspectbase

class ClassConstants(language, **taste_values)

Bases: coalib.bearlib.aspects.Smell.ClassConstants, coalib.bearlib.aspects.base.aspectbase

docs = <coalib.bearlib.aspects.docs.Documentation object>
parent

alias of ClassSize

subaspects = {}
class ClassInstanceVariables(language, **taste_values)

Bases: coalib.bearlib.aspects.Smell.ClassInstanceVariables, coalib.bearlib.aspects.base.aspectbase

docs = <coalib.bearlib.aspects.docs.Documentation object>
parent

alias of ClassSize

subaspects = {}
class ClassLength(language, **taste_values)

Bases: coalib.bearlib.aspects.Smell.ClassLength, coalib.bearlib.aspects.base.aspectbase

docs = <coalib.bearlib.aspects.docs.Documentation object>
parent

alias of ClassSize

subaspects = {}
class ClassMethods(language, **taste_values)

Bases: coalib.bearlib.aspects.Smell.ClassMethods, coalib.bearlib.aspects.base.aspectbase

docs = <coalib.bearlib.aspects.docs.Documentation object>
parent

alias of ClassSize

subaspects = {}
docs = <coalib.bearlib.aspects.docs.Documentation object>
parent

alias of ClassSmell

subaspects = {'ClassMethods': <aspectclass 'Root.Smell.ClassSmell.ClassSize.ClassMethods'>, 'ClassConstants': <aspectclass 'Root.Smell.ClassSmell.ClassSize.ClassConstants'>, 'ClassLength': <aspectclass 'Root.Smell.ClassSmell.ClassSize.ClassLength'>, 'ClassInstanceVariables': <aspectclass 'Root.Smell.ClassSmell.ClassSize.ClassInstanceVariables'>}
class DataClump(language, **taste_values)

Bases: coalib.bearlib.aspects.Smell.DataClump, coalib.bearlib.aspects.base.aspectbase

docs = <coalib.bearlib.aspects.docs.Documentation object>
parent

alias of ClassSmell

subaspects = {}
class FeatureEnvy(language, **taste_values)

Bases: coalib.bearlib.aspects.Smell.FeatureEnvy, coalib.bearlib.aspects.base.aspectbase

docs = <coalib.bearlib.aspects.docs.Documentation object>
parent

alias of ClassSmell

subaspects = {}
docs = <coalib.bearlib.aspects.docs.Documentation object>
parent

alias of Smell

subaspects = {'FeatureEnvy': <aspectclass 'Root.Smell.ClassSmell.FeatureEnvy'>, 'ClassSize': <aspectclass 'Root.Smell.ClassSmell.ClassSize'>, 'DataClump': <aspectclass 'Root.Smell.ClassSmell.DataClump'>}
class Complexity(language, **taste_values)

Bases: coalib.bearlib.aspects.Smell.Complexity, coalib.bearlib.aspects.base.aspectbase

class CylomaticComplexity(language, **taste_values)

Bases: coalib.bearlib.aspects.Smell.CylomaticComplexity, coalib.bearlib.aspects.base.aspectbase

docs = <coalib.bearlib.aspects.docs.Documentation object>
parent

alias of Complexity

subaspects = {}
class MaintainabilityIndex(language, **taste_values)

Bases: coalib.bearlib.aspects.Smell.MaintainabilityIndex, coalib.bearlib.aspects.base.aspectbase

docs = <coalib.bearlib.aspects.docs.Documentation object>
parent

alias of Complexity

subaspects = {}
docs = <coalib.bearlib.aspects.docs.Documentation object>
parent

alias of Smell

subaspects = {'MaintainabilityIndex': <aspectclass 'Root.Smell.Complexity.MaintainabilityIndex'>, 'CylomaticComplexity': <aspectclass 'Root.Smell.Complexity.CylomaticComplexity'>}
class MethodSmell(language, **taste_values)

Bases: coalib.bearlib.aspects.Smell.MethodSmell, coalib.bearlib.aspects.base.aspectbase

class MethodLength(language, **taste_values)

Bases: coalib.bearlib.aspects.Smell.MethodLength, coalib.bearlib.aspects.base.aspectbase

docs = <coalib.bearlib.aspects.docs.Documentation object>
parent

alias of MethodSmell

subaspects = {}
class ParameterListLength(language, **taste_values)

Bases: coalib.bearlib.aspects.Smell.ParameterListLength, coalib.bearlib.aspects.base.aspectbase

docs = <coalib.bearlib.aspects.docs.Documentation object>
parent

alias of MethodSmell

subaspects = {}
docs = <coalib.bearlib.aspects.docs.Documentation object>
parent

alias of Smell

subaspects = {'ParameterListLength': <aspectclass 'Root.Smell.MethodSmell.ParameterListLength'>, 'MethodLength': <aspectclass 'Root.Smell.MethodSmell.MethodLength'>}
class Naming(language, **taste_values)

Bases: coalib.bearlib.aspects.Smell.Naming, coalib.bearlib.aspects.base.aspectbase

docs = <coalib.bearlib.aspects.docs.Documentation object>
parent

alias of Smell

subaspects = {}
docs = <coalib.bearlib.aspects.docs.Documentation object>
parent

alias of Root

subaspects = {'Complexity': <aspectclass 'Root.Smell.Complexity'>, 'MethodSmell': <aspectclass 'Root.Smell.MethodSmell'>, 'ClassSmell': <aspectclass 'Root.Smell.ClassSmell'>, 'Naming': <aspectclass 'Root.Smell.Naming'>}
class Spelling(language, **taste_values)

Bases: coalib.bearlib.aspects.Spelling.Spelling, coalib.bearlib.aspects.base.aspectbase

class DictionarySpelling(language, **taste_values)

Bases: coalib.bearlib.aspects.Spelling.DictionarySpelling, coalib.bearlib.aspects.base.aspectbase

docs = <coalib.bearlib.aspects.docs.Documentation object>
parent

alias of Spelling

subaspects = {}
class OrgSpecificWordSpelling(language, **taste_values)

Bases: coalib.bearlib.aspects.Spelling.OrgSpecificWordSpelling, coalib.bearlib.aspects.base.aspectbase

docs = <coalib.bearlib.aspects.docs.Documentation object>
parent

alias of Spelling

subaspects = {}
docs = <coalib.bearlib.aspects.docs.Documentation object>
parent

alias of Root

subaspects = {'OrgSpecificWordSpelling': <aspectclass 'Root.Spelling.OrgSpecificWordSpelling'>, 'DictionarySpelling': <aspectclass 'Root.Spelling.DictionarySpelling'>}
parent = None
subaspects = {'Smell': <aspectclass 'Root.Smell'>, 'Formatting': <aspectclass 'Root.Formatting'>, 'Security': <aspectclass 'Root.Security'>, 'Metadata': <aspectclass 'Root.Metadata'>, 'Redundancy': <aspectclass 'Root.Redundancy'>, 'Spelling': <aspectclass 'Root.Spelling'>}

coalib.bearlib.aspects.taste module

class coalib.bearlib.aspects.taste.Taste(description: str = '', suggested_values: tuple = (), default=None, languages: tuple = ())[source]

Bases: object

Defines tastes in aspectclass definitions.

Tastes can be made only available for certain languages by providing a tuple of language identifiers on instantiation:

>>> Taste[bool](
...     'Ignore ``using`` directives in C#.',
...     (True, False), default=False,
...     languages=('CSharp', )
... ).languages
(C#,)

If no languages are given, they will be available for any language. See coalib.bearlib.aspects.Root for further usage.

cast_type

alias of str

exception coalib.bearlib.aspects.taste.TasteError[source]

Bases: AttributeError

A taste is not allowed to be accessed.

class coalib.bearlib.aspects.taste.TasteMeta[source]

Bases: type

Metaclass for coalib.bearlib.aspects.Taste

Allows defining taste cast type via __getitem__(), like:

>>> Taste[int]().cast_type
<class 'int'>

Module contents

class coalib.bearlib.aspects.Root(language, **taste_values)[source]

Bases: coalib.bearlib.aspects.base.aspectbase

The root aspectclass.

Define sub-aspectclasses with class-bound .subaspect decorator. Definition string is taken from doc-string of decorated class. Remaining docs are taken from a nested docs class. Tastes are defined as class attributes that are instances of coalib.bearlib.aspects.Taste.

>>> from coalib.bearlib.aspects import Taste
>>> @Root.subaspect
... class Formatting:
...     """
...     A parent aspect for code formatting aspects...
...     """
...     class docs:
...        example = "..."
...        example_language = "..."
...        importance_reason = "..."
...        fix_suggestions = "..."

We can now create subaspects like this:

>>> @Formatting.subaspect
... class LineLength:
...     """
...     This aspect controls the length of a line...
...     """
...     class docs:
...        example = "..."
...        example_language = "..."
...        importance_reason = "..."
...        fix_suggestions = "..."
...
...     max_line_length = Taste[int](
...         "Maximum length allowed for a line.",
...         (80, 90, 120), default=80)

The representation will show the full “path” to the leaf of the tree:

>>> Root.Formatting.LineLength
<aspectclass 'Root.Formatting.LineLength'>

We can see, which settings are availables:

>>> Formatting.tastes
{}
>>> LineLength.tastes
{'max_line_length': <....Taste[int] object at ...>}

And instantiate the aspect with the values, they will be automatically converted:

>>> Formatting('Python')
<....Root.Formatting object at 0x...>
>>> LineLength('Python', max_line_length="100").tastes
{'max_line_length': 100}

If no settings are given, the defaults will be taken:

>>> LineLength('Python').tastes
{'max_line_length': 80}

Tastes can also be made available for only specific languages:

>>> from coalib.bearlib.languages import Language
>>> @Language
... class GreaterTrumpScript:
...     pass
>>> @Formatting.subaspect
... class Greatness:
...     """
...     This aspect controls the greatness of a file...
...     """
...     class docs:
...        example = "..."
...        example_language = "..."
...        importance_reason = "..."
...        fix_suggestions = "..."
...     min_greatness = Taste[int](
...         "Minimum greatness factor needed for a TrumpScript file. "
...         "This is fact.",
...         (1000000, 1000000000, 1000000000000), default=1000000,
...         languages=('GreaterTrumpScript' ,))
>>> Greatness.tastes
{'min_greatness': <....Taste[int] object at ...>}
>>> Greatness('GreaterTrumpScript').tastes
{'min_greatness': 1000000}
>>> Greatness('GreaterTrumpScript', min_greatness=1000000000000).tastes
{'min_greatness': 1000000000000}
>>> Greatness('Python').tastes
{}
>>> Greatness('Python', min_greatness=1000000000)
... 
Traceback (most recent call last):
  ...
coalib.bearlib.aspects.taste.TasteError:
Root.Formatting.Greatness.min_greatness is not available ...
>>> Greatness('Python').min_greatness
... 
Traceback (most recent call last):
  ...
coalib.bearlib.aspects.taste.TasteError:
Root.Formatting.Greatness.min_greatness is not available ...
class Formatting(language, **taste_values)

Bases: coalib.bearlib.aspects.Formatting.Formatting, coalib.bearlib.aspects.base.aspectbase

class Length(language, **taste_values)

Bases: coalib.bearlib.aspects.Formatting.Length, coalib.bearlib.aspects.base.aspectbase

class FileLength(language, **taste_values)

Bases: coalib.bearlib.aspects.Formatting.FileLength, coalib.bearlib.aspects.base.aspectbase

docs = <coalib.bearlib.aspects.docs.Documentation object>
parent

alias of Length

subaspects = {}
class LineLength(language, **taste_values)

Bases: coalib.bearlib.aspects.Formatting.LineLength, coalib.bearlib.aspects.base.aspectbase

docs = <coalib.bearlib.aspects.docs.Documentation object>
parent

alias of Length

subaspects = {}
docs = <coalib.bearlib.aspects.docs.Documentation object>
parent

alias of Formatting

subaspects = {'LineLength': <aspectclass 'Root.Formatting.Length.LineLength'>, 'FileLength': <aspectclass 'Root.Formatting.Length.FileLength'>}
class Quotation(language, **taste_values)

Bases: coalib.bearlib.aspects.Formatting.Quotation, coalib.bearlib.aspects.base.aspectbase

docs = <coalib.bearlib.aspects.docs.Documentation object>
parent

alias of Formatting

subaspects = {}
class Spacing(language, **taste_values)

Bases: coalib.bearlib.aspects.Formatting.Spacing, coalib.bearlib.aspects.base.aspectbase

class BlankLine(language, **taste_values)

Bases: coalib.bearlib.aspects.Formatting.BlankLine, coalib.bearlib.aspects.base.aspectbase

class BlankLineAfterClass(language, **taste_values)

Bases: coalib.bearlib.aspects.Formatting.BlankLineAfterClass, coalib.bearlib.aspects.base.aspectbase

docs = <coalib.bearlib.aspects.docs.Documentation object>
parent

alias of BlankLine

subaspects = {}
class BlankLineAfterDeclaration(language, **taste_values)

Bases: coalib.bearlib.aspects.Formatting.BlankLineAfterDeclaration, coalib.bearlib.aspects.base.aspectbase

docs = <coalib.bearlib.aspects.docs.Documentation object>
parent

alias of BlankLine

subaspects = {}
class BlankLineAfterProcedure(language, **taste_values)

Bases: coalib.bearlib.aspects.Formatting.BlankLineAfterProcedure, coalib.bearlib.aspects.base.aspectbase

docs = <coalib.bearlib.aspects.docs.Documentation object>
parent

alias of BlankLine

subaspects = {}
class NewlineAtEOF(language, **taste_values)

Bases: coalib.bearlib.aspects.Formatting.NewlineAtEOF, coalib.bearlib.aspects.base.aspectbase

docs = <coalib.bearlib.aspects.docs.Documentation object>
parent

alias of BlankLine

subaspects = {}
docs = <coalib.bearlib.aspects.docs.Documentation object>
parent

alias of Spacing

subaspects = {'BlankLineAfterClass': <aspectclass 'Root.Formatting.Spacing.BlankLine.BlankLineAfterClass'>, 'BlankLineAfterDeclaration': <aspectclass 'Root.Formatting.Spacing.BlankLine.BlankLineAfterDeclaration'>, 'NewlineAtEOF': <aspectclass 'Root.Formatting.Spacing.BlankLine.NewlineAtEOF'>, 'BlankLineAfterProcedure': <aspectclass 'Root.Formatting.Spacing.BlankLine.BlankLineAfterProcedure'>}
class Indentation(language, **taste_values)

Bases: coalib.bearlib.aspects.Formatting.Indentation, coalib.bearlib.aspects.base.aspectbase

docs = <coalib.bearlib.aspects.docs.Documentation object>
parent

alias of Spacing

subaspects = {}
class SpacesAroundOperator(language, **taste_values)

Bases: coalib.bearlib.aspects.Formatting.SpacesAroundOperator, coalib.bearlib.aspects.base.aspectbase

docs = <coalib.bearlib.aspects.docs.Documentation object>
parent

alias of Spacing

subaspects = {}
class TrailingSpace(language, **taste_values)

Bases: coalib.bearlib.aspects.Formatting.TrailingSpace, coalib.bearlib.aspects.base.aspectbase

docs = <coalib.bearlib.aspects.docs.Documentation object>
parent

alias of Spacing

subaspects = {}
docs = <coalib.bearlib.aspects.docs.Documentation object>
parent

alias of Formatting

subaspects = {'TrailingSpace': <aspectclass 'Root.Formatting.Spacing.TrailingSpace'>, 'SpacesAroundOperator': <aspectclass 'Root.Formatting.Spacing.SpacesAroundOperator'>, 'BlankLine': <aspectclass 'Root.Formatting.Spacing.BlankLine'>, 'Indentation': <aspectclass 'Root.Formatting.Spacing.Indentation'>}
docs = <coalib.bearlib.aspects.docs.Documentation object>
parent

alias of Root

subaspects = {'Length': <aspectclass 'Root.Formatting.Length'>, 'Spacing': <aspectclass 'Root.Formatting.Spacing'>, 'Quotation': <aspectclass 'Root.Formatting.Quotation'>}
class Metadata(language, **taste_values)

Bases: coalib.bearlib.aspects.Metadata.Metadata, coalib.bearlib.aspects.base.aspectbase

class CommitMessage(language, **taste_values)

Bases: coalib.bearlib.aspects.Metadata.CommitMessage, coalib.bearlib.aspects.base.aspectbase

class Body(language, **taste_values)

Bases: coalib.bearlib.aspects.Metadata.Body, coalib.bearlib.aspects.base.aspectbase

class Existence(language, **taste_values)

Bases: coalib.bearlib.aspects.Metadata.Existence, coalib.bearlib.aspects.base.aspectbase

docs = <coalib.bearlib.aspects.docs.Documentation object>
parent

alias of Body

subaspects = {}
class Length(language, **taste_values)

Bases: coalib.bearlib.aspects.Metadata.Length, coalib.bearlib.aspects.base.aspectbase

docs = <coalib.bearlib.aspects.docs.Documentation object>
parent

alias of Body

subaspects = {}
docs = <coalib.bearlib.aspects.docs.Documentation object>
parent

alias of CommitMessage

subaspects = {'Existence': <aspectclass 'Root.Metadata.CommitMessage.Body.Existence'>, 'Length': <aspectclass 'Root.Metadata.CommitMessage.Body.Length'>}
class Emptiness(language, **taste_values)

Bases: coalib.bearlib.aspects.Metadata.Emptiness, coalib.bearlib.aspects.base.aspectbase

docs = <coalib.bearlib.aspects.docs.Documentation object>
parent

alias of CommitMessage

subaspects = {}
class Shortlog(language, **taste_values)

Bases: coalib.bearlib.aspects.Metadata.Shortlog, coalib.bearlib.aspects.base.aspectbase

class ColonExistence(language, **taste_values)

Bases: coalib.bearlib.aspects.Metadata.ColonExistence, coalib.bearlib.aspects.base.aspectbase

docs = <coalib.bearlib.aspects.docs.Documentation object>
parent

alias of Shortlog

subaspects = {}
class FirstCharacter(language, **taste_values)

Bases: coalib.bearlib.aspects.Metadata.FirstCharacter, coalib.bearlib.aspects.base.aspectbase

docs = <coalib.bearlib.aspects.docs.Documentation object>
parent

alias of Shortlog

subaspects = {}
class Length(language, **taste_values)

Bases: coalib.bearlib.aspects.Metadata.Length, coalib.bearlib.aspects.base.aspectbase

docs = <coalib.bearlib.aspects.docs.Documentation object>
parent

alias of Shortlog

subaspects = {}
class Tense(language, **taste_values)

Bases: coalib.bearlib.aspects.Metadata.Tense, coalib.bearlib.aspects.base.aspectbase

docs = <coalib.bearlib.aspects.docs.Documentation object>
parent

alias of Shortlog

subaspects = {}
class TrailingPeriod(language, **taste_values)

Bases: coalib.bearlib.aspects.Metadata.TrailingPeriod, coalib.bearlib.aspects.base.aspectbase

docs = <coalib.bearlib.aspects.docs.Documentation object>
parent

alias of Shortlog

subaspects = {}
docs = <coalib.bearlib.aspects.docs.Documentation object>
parent

alias of CommitMessage

subaspects = {'Length': <aspectclass 'Root.Metadata.CommitMessage.Shortlog.Length'>, 'FirstCharacter': <aspectclass 'Root.Metadata.CommitMessage.Shortlog.FirstCharacter'>, 'ColonExistence': <aspectclass 'Root.Metadata.CommitMessage.Shortlog.ColonExistence'>, 'TrailingPeriod': <aspectclass 'Root.Metadata.CommitMessage.Shortlog.TrailingPeriod'>, 'Tense': <aspectclass 'Root.Metadata.CommitMessage.Shortlog.Tense'>}
docs = <coalib.bearlib.aspects.docs.Documentation object>
parent

alias of Metadata

subaspects = {'Shortlog': <aspectclass 'Root.Metadata.CommitMessage.Shortlog'>, 'Emptiness': <aspectclass 'Root.Metadata.CommitMessage.Emptiness'>, 'Body': <aspectclass 'Root.Metadata.CommitMessage.Body'>}
docs = <coalib.bearlib.aspects.docs.Documentation object>
parent

alias of Root

subaspects = {'CommitMessage': <aspectclass 'Root.Metadata.CommitMessage'>}
class Redundancy(language, **taste_values)

Bases: coalib.bearlib.aspects.Redundancy.Redundancy, coalib.bearlib.aspects.base.aspectbase

class Clone(language, **taste_values)

Bases: coalib.bearlib.aspects.Redundancy.Clone, coalib.bearlib.aspects.base.aspectbase

docs = <coalib.bearlib.aspects.docs.Documentation object>
parent

alias of Redundancy

subaspects = {}
class UnreachableCode(language, **taste_values)

Bases: coalib.bearlib.aspects.Redundancy.UnreachableCode, coalib.bearlib.aspects.base.aspectbase

class UnreachableStatement(language, **taste_values)

Bases: coalib.bearlib.aspects.Redundancy.UnreachableStatement, coalib.bearlib.aspects.base.aspectbase

docs = <coalib.bearlib.aspects.docs.Documentation object>
parent

alias of UnreachableCode

subaspects = {}
class UnusedFunction(language, **taste_values)

Bases: coalib.bearlib.aspects.Redundancy.UnusedFunction, coalib.bearlib.aspects.base.aspectbase

docs = <coalib.bearlib.aspects.docs.Documentation object>
parent

alias of UnreachableCode

subaspects = {}
docs = <coalib.bearlib.aspects.docs.Documentation object>
parent

alias of Redundancy

subaspects = {'UnreachableStatement': <aspectclass 'Root.Redundancy.UnreachableCode.UnreachableStatement'>, 'UnusedFunction': <aspectclass 'Root.Redundancy.UnreachableCode.UnusedFunction'>}
class UnusedImport(language, **taste_values)

Bases: coalib.bearlib.aspects.Redundancy.UnusedImport, coalib.bearlib.aspects.base.aspectbase

docs = <coalib.bearlib.aspects.docs.Documentation object>
parent

alias of Redundancy

subaspects = {}
class UnusedVariable(language, **taste_values)

Bases: coalib.bearlib.aspects.Redundancy.UnusedVariable, coalib.bearlib.aspects.base.aspectbase

class UnusedGlobalVariable(language, **taste_values)

Bases: coalib.bearlib.aspects.Redundancy.UnusedGlobalVariable, coalib.bearlib.aspects.base.aspectbase

docs = <coalib.bearlib.aspects.docs.Documentation object>
parent

alias of UnusedVariable

subaspects = {}
class UnusedLocalVariable(language, **taste_values)

Bases: coalib.bearlib.aspects.Redundancy.UnusedLocalVariable, coalib.bearlib.aspects.base.aspectbase

docs = <coalib.bearlib.aspects.docs.Documentation object>
parent

alias of UnusedVariable

subaspects = {}
class UnusedParameter(language, **taste_values)

Bases: coalib.bearlib.aspects.Redundancy.UnusedParameter, coalib.bearlib.aspects.base.aspectbase

docs = <coalib.bearlib.aspects.docs.Documentation object>
parent

alias of UnusedVariable

subaspects = {}
docs = <coalib.bearlib.aspects.docs.Documentation object>
parent

alias of Redundancy

subaspects = {'UnusedParameter': <aspectclass 'Root.Redundancy.UnusedVariable.UnusedParameter'>, 'UnusedLocalVariable': <aspectclass 'Root.Redundancy.UnusedVariable.UnusedLocalVariable'>, 'UnusedGlobalVariable': <aspectclass 'Root.Redundancy.UnusedVariable.UnusedGlobalVariable'>}
docs = <coalib.bearlib.aspects.docs.Documentation object>
parent

alias of Root

subaspects = {'Clone': <aspectclass 'Root.Redundancy.Clone'>, 'UnusedImport': <aspectclass 'Root.Redundancy.UnusedImport'>, 'UnreachableCode': <aspectclass 'Root.Redundancy.UnreachableCode'>, 'UnusedVariable': <aspectclass 'Root.Redundancy.UnusedVariable'>}
class Security(language, **taste_values)

Bases: coalib.bearlib.aspects.Security.Security, coalib.bearlib.aspects.base.aspectbase

docs = <coalib.bearlib.aspects.docs.Documentation object>
parent

alias of Root

subaspects = {}
class Smell(language, **taste_values)

Bases: coalib.bearlib.aspects.Smell.Smell, coalib.bearlib.aspects.base.aspectbase

class ClassSmell(language, **taste_values)

Bases: coalib.bearlib.aspects.Smell.ClassSmell, coalib.bearlib.aspects.base.aspectbase

class ClassSize(language, **taste_values)

Bases: coalib.bearlib.aspects.Smell.ClassSize, coalib.bearlib.aspects.base.aspectbase

class ClassConstants(language, **taste_values)

Bases: coalib.bearlib.aspects.Smell.ClassConstants, coalib.bearlib.aspects.base.aspectbase

docs = <coalib.bearlib.aspects.docs.Documentation object>
parent

alias of ClassSize

subaspects = {}
class ClassInstanceVariables(language, **taste_values)

Bases: coalib.bearlib.aspects.Smell.ClassInstanceVariables, coalib.bearlib.aspects.base.aspectbase

docs = <coalib.bearlib.aspects.docs.Documentation object>
parent

alias of ClassSize

subaspects = {}
class ClassLength(language, **taste_values)

Bases: coalib.bearlib.aspects.Smell.ClassLength, coalib.bearlib.aspects.base.aspectbase

docs = <coalib.bearlib.aspects.docs.Documentation object>
parent

alias of ClassSize

subaspects = {}
class ClassMethods(language, **taste_values)

Bases: coalib.bearlib.aspects.Smell.ClassMethods, coalib.bearlib.aspects.base.aspectbase

docs = <coalib.bearlib.aspects.docs.Documentation object>
parent

alias of ClassSize

subaspects = {}
docs = <coalib.bearlib.aspects.docs.Documentation object>
parent

alias of ClassSmell

subaspects = {'ClassMethods': <aspectclass 'Root.Smell.ClassSmell.ClassSize.ClassMethods'>, 'ClassConstants': <aspectclass 'Root.Smell.ClassSmell.ClassSize.ClassConstants'>, 'ClassLength': <aspectclass 'Root.Smell.ClassSmell.ClassSize.ClassLength'>, 'ClassInstanceVariables': <aspectclass 'Root.Smell.ClassSmell.ClassSize.ClassInstanceVariables'>}
class DataClump(language, **taste_values)

Bases: coalib.bearlib.aspects.Smell.DataClump, coalib.bearlib.aspects.base.aspectbase

docs = <coalib.bearlib.aspects.docs.Documentation object>
parent

alias of ClassSmell

subaspects = {}
class FeatureEnvy(language, **taste_values)

Bases: coalib.bearlib.aspects.Smell.FeatureEnvy, coalib.bearlib.aspects.base.aspectbase

docs = <coalib.bearlib.aspects.docs.Documentation object>
parent

alias of ClassSmell

subaspects = {}
docs = <coalib.bearlib.aspects.docs.Documentation object>
parent

alias of Smell

subaspects = {'FeatureEnvy': <aspectclass 'Root.Smell.ClassSmell.FeatureEnvy'>, 'ClassSize': <aspectclass 'Root.Smell.ClassSmell.ClassSize'>, 'DataClump': <aspectclass 'Root.Smell.ClassSmell.DataClump'>}
class Complexity(language, **taste_values)

Bases: coalib.bearlib.aspects.Smell.Complexity, coalib.bearlib.aspects.base.aspectbase

class CylomaticComplexity(language, **taste_values)

Bases: coalib.bearlib.aspects.Smell.CylomaticComplexity, coalib.bearlib.aspects.base.aspectbase

docs = <coalib.bearlib.aspects.docs.Documentation object>
parent

alias of Complexity

subaspects = {}
class MaintainabilityIndex(language, **taste_values)

Bases: coalib.bearlib.aspects.Smell.MaintainabilityIndex, coalib.bearlib.aspects.base.aspectbase

docs = <coalib.bearlib.aspects.docs.Documentation object>
parent

alias of Complexity

subaspects = {}
docs = <coalib.bearlib.aspects.docs.Documentation object>
parent

alias of Smell

subaspects = {'MaintainabilityIndex': <aspectclass 'Root.Smell.Complexity.MaintainabilityIndex'>, 'CylomaticComplexity': <aspectclass 'Root.Smell.Complexity.CylomaticComplexity'>}
class MethodSmell(language, **taste_values)

Bases: coalib.bearlib.aspects.Smell.MethodSmell, coalib.bearlib.aspects.base.aspectbase

class MethodLength(language, **taste_values)

Bases: coalib.bearlib.aspects.Smell.MethodLength, coalib.bearlib.aspects.base.aspectbase

docs = <coalib.bearlib.aspects.docs.Documentation object>
parent

alias of MethodSmell

subaspects = {}
class ParameterListLength(language, **taste_values)

Bases: coalib.bearlib.aspects.Smell.ParameterListLength, coalib.bearlib.aspects.base.aspectbase

docs = <coalib.bearlib.aspects.docs.Documentation object>
parent

alias of MethodSmell

subaspects = {}
docs = <coalib.bearlib.aspects.docs.Documentation object>
parent

alias of Smell

subaspects = {'ParameterListLength': <aspectclass 'Root.Smell.MethodSmell.ParameterListLength'>, 'MethodLength': <aspectclass 'Root.Smell.MethodSmell.MethodLength'>}
class Naming(language, **taste_values)

Bases: coalib.bearlib.aspects.Smell.Naming, coalib.bearlib.aspects.base.aspectbase

docs = <coalib.bearlib.aspects.docs.Documentation object>
parent

alias of Smell

subaspects = {}
docs = <coalib.bearlib.aspects.docs.Documentation object>
parent

alias of Root

subaspects = {'Complexity': <aspectclass 'Root.Smell.Complexity'>, 'MethodSmell': <aspectclass 'Root.Smell.MethodSmell'>, 'ClassSmell': <aspectclass 'Root.Smell.ClassSmell'>, 'Naming': <aspectclass 'Root.Smell.Naming'>}
class Spelling(language, **taste_values)

Bases: coalib.bearlib.aspects.Spelling.Spelling, coalib.bearlib.aspects.base.aspectbase

class DictionarySpelling(language, **taste_values)

Bases: coalib.bearlib.aspects.Spelling.DictionarySpelling, coalib.bearlib.aspects.base.aspectbase

docs = <coalib.bearlib.aspects.docs.Documentation object>
parent

alias of Spelling

subaspects = {}
class OrgSpecificWordSpelling(language, **taste_values)

Bases: coalib.bearlib.aspects.Spelling.OrgSpecificWordSpelling, coalib.bearlib.aspects.base.aspectbase

docs = <coalib.bearlib.aspects.docs.Documentation object>
parent

alias of Spelling

subaspects = {}
docs = <coalib.bearlib.aspects.docs.Documentation object>
parent

alias of Root

subaspects = {'OrgSpecificWordSpelling': <aspectclass 'Root.Spelling.OrgSpecificWordSpelling'>, 'DictionarySpelling': <aspectclass 'Root.Spelling.DictionarySpelling'>}
parent = None
subaspects = {'Smell': <aspectclass 'Root.Smell'>, 'Formatting': <aspectclass 'Root.Formatting'>, 'Security': <aspectclass 'Root.Security'>, 'Metadata': <aspectclass 'Root.Metadata'>, 'Redundancy': <aspectclass 'Root.Redundancy'>, 'Spelling': <aspectclass 'Root.Spelling'>}
class coalib.bearlib.aspects.Taste(description: str = '', suggested_values: tuple = (), default=None, languages: tuple = ())[source]

Bases: object

Defines tastes in aspectclass definitions.

Tastes can be made only available for certain languages by providing a tuple of language identifiers on instantiation:

>>> Taste[bool](
...     'Ignore ``using`` directives in C#.',
...     (True, False), default=False,
...     languages=('CSharp', )
... ).languages
(C#,)

If no languages are given, they will be available for any language. See coalib.bearlib.aspects.Root for further usage.

cast_type

alias of str

exception coalib.bearlib.aspects.TasteError[source]

Bases: AttributeError

A taste is not allowed to be accessed.

class coalib.bearlib.aspects.aspectclass(clsname, bases, clsattrs)[source]

Bases: type

Metaclass for aspectclasses.

Root aspectclass is coalib.bearlib.aspects.Root.

subaspect(subcls)[source]

The sub-aspectclass decorator.

See coalib.bearlib.aspects.Root for description and usage.

tastes

Get a dictionary of all taste names mapped to their coalib.bearlib.aspects.Taste instances.

class coalib.bearlib.aspects.aspectbase(language, **taste_values)[source]

Bases: object

Base class for aspectclasses with common features for their instances.

Derived classes must use coalib.bearlib.aspects.meta.aspectclass as metaclass. This is automatically handled by coalib.bearlib.aspects.meta.aspectclass.subaspect() decorator.

get = functools.partial(<function get_subaspect>, <class 'coalib.bearlib.aspects.base.aspectbase'>)
get_leaf_aspects = functools.partial(<function _get_leaf_aspects>, <class 'coalib.bearlib.aspects.base.aspectbase'>)
tastes

Get a dictionary of all taste names mapped to their specific values, including parent tastes.

exception coalib.bearlib.aspects.AspectTypeError(item)[source]

Bases: TypeError

This error is raised when an object is not an aspectclass or an instance of aspectclass

exception coalib.bearlib.aspects.AspectNotFoundError(aspectname)[source]

Bases: coalib.bearlib.aspects.exceptions.AspectLookupError

No aspect found.

exception coalib.bearlib.aspects.MultipleAspectFoundError(aspectname, other_aspects)[source]

Bases: coalib.bearlib.aspects.exceptions.AspectLookupError

Multiple aspect are found.

class coalib.bearlib.aspects.AspectList(seq=(), exclude=None, languages=None)[source]

Bases: list

List-derived container to hold aspects.

get(aspect)[source]

Return first item that match or contain an aspect. See coalib.bearlib.aspects.aspectbase.get() for further example.

Parameters:aspect – An aspectclass OR name of an aspect.
Returns:An aspectclass OR aspectclass instance, depend on AspectList content. Return None if no match found.
get_leaf_aspects()[source]

Breakdown all of item in self into their leaf subaspects.

Returns:An AspectList contain ONLY leaf aspects.
coalib.bearlib.aspects.map_setting_to_aspect(**aspectable_setting)[source]

Map function arguments with aspect and override it if appropriate.

This decorator can be used by Bear.run() to automatically map and override bear’s setting value with their equivalent aspect or taste.

The order of setting override from the lowest to highest is: - Setting default (in bear’s run argument) - Aspect/taste default (if aspect is activated in Section) - Explicit aspect/taste default (if aspect is activated in Section) - Explicit setting

Parameters:aspectable_setting – A dictionary of settings as keys and their equivalent aspect or taste as value.