CodeQL library for Java/Kotlin
codeql/java-all 4.1.2-dev (changelog, source)
Search

Class MetricElement

This class provides access to metrics information for elements in Java programs.

Import path

import java

Direct supertypes

Indirect supertypes

Known direct subtypes

Predicates

getADependency

A dependency of this element, intended to be overridden by subclasses, for use with the “level metric”.

getADependencySrc

Gets a dependency of this element that is from source.

getALevel

An element has no level defined if it is cyclically dependent on itself. Otherwise, it has:

getCyclomaticComplexity

Gets the cyclomatic complexity of this element. This default implementation must be overridden in subclasses.

getHalsteadLength

Gets the Halstead length of this element. This default implementation must be overridden in subclasses.

getHalsteadVocabulary

Gets the Halstead vocabulary of this element. This default implementation must be overridden in subclasses.

getHalsteadVolume

The Halstead volume is the product of Halstead length and binary logarithm of Halstead vocabulary.

getLevel

John Lakos’ level metric.

getMaintainabilityIndex

The maintainability index is a composite number expressing the ease of maintainability of a program or one of its components.

getMaintainabilityIndexCommentWeight

Gets the maintainability index comment weight.

getMaintainabilityIndexWithoutComments

Gets the maintainability index without comment weight.

getPercentageOfComments

Gets the percentage of comments in this element. This default implementation must be overridden in subclasses.

Inherited predicates

compilerGeneratedReason

Gets the reason this element was generated by the compiler, if any.

from Element
contains

Holds if this element transitively contains the specified element e.

from Element
fromSource

Holds if this element pertains to a source file.

from Element
getAPrimaryQlClass

Gets the name of a primary CodeQL class to which this element belongs.

from Top
getCompilationUnit

Gets the compilation unit that this element belongs to.

from Element
getDoc

Cast this element to a Documentable.

from Element
getFile

Gets the file associated with this element.

from Top
getLocation

Gets the source location for this element.

from Top
getName

Gets the name of this element.

from Element
getNumberOfCommentLines

Gets the number of comment lines that this element ranges over.

from Top
getNumberOfLinesOfCode

Gets the number of lines of code that this element ranges over.

from Top
getPrimaryQlClasses

Gets a comma-separated list of the names of the primary CodeQL classes to which this element belongs.

from Top
getTotalNumberOfLines

Gets the total number of lines that this element ranges over, including lines of code, comment and whitespace-only lines.

from Top
hasChildElement

Holds if this element is the immediate parent of the specified element e.

from Element
hasLocationInfo

Holds if this element is at the specified location. The location spans column startcolumn of line startline to column endcolumn of line endline in file filepath. For more information, see Locations.

from Top
hasName

Holds if this element has the specified name.

from Element
isCompilerGenerated

Holds if this is an auxiliary program element generated by the compiler.

from Element
isStub

Holds if this element is from source and classified as a stub implementation. An implementation is considered a stub, if the the path to the source file contains /stubs/.

from Element
toString

Gets a textual representation of this element.

from Top