io.joern.pysrc2cpg

Members list

Packages

Type members

Classlikes

class AutoIncIndex(var index: Int)

Attributes

Supertypes
class Object
trait Matchable
class Any
class CodeToCpg(cpg: Cpg, inputProvider: Iterable[InputProvider], schemaValidationMode: ValidationMode, enableFileContent: Boolean) extends ConcurrentWriterCpgPass[InputProvider]

Attributes

Companion
object
Supertypes
class ConcurrentWriterCpgPass[InputProvider]
class NewStyleCpgPassBase[InputProvider]
trait CpgPassBase
class Object
trait Matchable
class Any
Show all
object CodeToCpg

Attributes

Companion
class
Supertypes
class Object
trait Matchable
class Any
Self type
CodeToCpg.type
class ConfigFileCreationPass(cpg: Cpg, requirementsTxt: String) extends XConfigFileCreationPass

Attributes

Supertypes
class XConfigFileCreationPass
class ConcurrentWriterCpgPass[File]
class NewStyleCpgPassBase[File]
trait CpgPassBase
class Object
trait Matchable
class Any
Show all
object Constants

Attributes

Supertypes
class Object
trait Matchable
class Any
Self type
Constants.type
object ContextStack

Attributes

Companion
class
Supertypes
class Object
trait Matchable
class Any
Self type
class ContextStack

Attributes

Companion
object
Supertypes
class Object
trait Matchable
class Any
class DependenciesFromRequirementsTxtPass(cpg: Cpg) extends CpgPass

Attributes

Supertypes
class CpgPass
class ForkJoinParallelCpgPass[AnyRef]
class NewStyleCpgPassBase[AnyRef]
trait CpgPassBase
class Object
trait Matchable
class Any
Show all
class DynamicTypeHintFullNamePass(cpg: Cpg) extends ForkJoinParallelCpgPass[CfgNode]

The type hints we pick up via the parser are not full names. This pass fixes that by retrieving the import for each dynamic type hint and adjusting the dynamic type hint full name field accordingly.

The type hints we pick up via the parser are not full names. This pass fixes that by retrieving the import for each dynamic type hint and adjusting the dynamic type hint full name field accordingly.

Attributes

Supertypes
class ForkJoinParallelCpgPass[CfgNode]
class NewStyleCpgPassBase[CfgNode]
trait CpgPassBase
class Object
trait Matchable
class Any
Show all
class EdgeBuilder(diffGraph: DiffGraphBuilder)

Attributes

Supertypes
class Object
trait Matchable
class Any
class ImportsPass(cpg: Cpg) extends XImportsPass

Attributes

Supertypes
class XImportsPass
class ConcurrentWriterCpgPass[(Call, Assignment)]
class NewStyleCpgPassBase[(Call, Assignment)]
trait CpgPassBase
class Object
trait Matchable
class Any
Show all
case class LineAndColumn(line: Int, column: Int, endLine: Int, endColumn: Int, offset: Int, endOffset: Int)

Attributes

Supertypes
trait Serializable
trait Product
trait Equals
class Object
trait Matchable
class Any
Show all

Attributes

Companion
class
Supertypes
trait Product
trait Mirror
class Object
trait Matchable
class Any
Self type
case class MethodParameters(posStartIndex: Int, positionalParams: Iterable[NewMethodParameterIn])

Attributes

Companion
object
Supertypes
trait Serializable
trait Product
trait Equals
class Object
trait Matchable
class Any
Show all

Attributes

Supertypes
class Object
trait Matchable
class Any
Self type
NewMain.type
class NodeBuilder(diffGraph: DiffGraphBuilder)

Attributes

Supertypes
class Object
trait Matchable
class Any
class NodeToCode(val content: String)

Attributes

Supertypes
class Object
trait Matchable
class Any
object Py2Cpg

Attributes

Companion
class
Supertypes
class Object
trait Matchable
class Any
Self type
Py2Cpg.type
class Py2Cpg(inputProviders: Iterable[InputProvider], outputCpg: Cpg, inputPath: String, requirementsTxt: String, schemaValidationMode: ValidationMode, enableFileContent: Boolean)

Entry point for general cpg generation from python code.

Entry point for general cpg generation from python code.

Value parameters

inputPath

The project root.

inputProviders

Set of functions which provide InputPairs. The functions must be safe to call from different threads.

outputCpg

Empty target cpg which will be populated.

requirementsTxt

The configured name of the requirements txt file.

schemaValidationMode

The boolean switch for enabling or disabling early schema checking during AST creation.

Attributes

Companion
object
Supertypes
class Object
trait Matchable
class Any
class Py2CpgOnFileSystem extends X2CpgFrontend[Py2CpgOnFileSystemConfig]

Attributes

Supertypes
trait X2CpgFrontend[Py2CpgOnFileSystemConfig]
class Object
trait Matchable
class Any
case class Py2CpgOnFileSystemConfig(venvDir: Option[Path], venvDirs: Seq[Path], ignoreVenvDir: Boolean, ignorePaths: Seq[Path], ignoreDirNames: Seq[String], requirementsTxt: String) extends X2CpgConfig[Py2CpgOnFileSystemConfig], TypeRecoveryParserConfig[Py2CpgOnFileSystemConfig]

Attributes

Supertypes
trait Serializable
trait Product
trait Equals
trait TypeRecoveryParserConfig[Py2CpgOnFileSystemConfig]
trait X2CpgConfig[Py2CpgOnFileSystemConfig]
class Object
trait Matchable
class Any
Show all
class PythonAstVisitor(relFileName: String, val nodeToCode: NodeToCode, version: PythonVersion, enableFileContent: Boolean)(implicit withSchemaValidation: ValidationMode) extends AstCreatorBase, PythonAstVisitorHelpers

Attributes

Companion
object
Supertypes
class AstCreatorBase
class Object
trait Matchable
class Any

Attributes

Companion
class
Supertypes
class Object
trait Matchable
class Any
Self type

Attributes

Supertypes
class Object
trait Matchable
class Any
Known subtypes
Self type
class PythonImportResolverPass(cpg: Cpg) extends XImportResolverPass

Attempts to solve imports similar Python, and will use heuristics to build out unresolved imports.

Attempts to solve imports similar Python, and will use heuristics to build out unresolved imports.

Attributes

See also
Supertypes
class XImportResolverPass
class ConcurrentWriterCpgPass[Import]
class NewStyleCpgPassBase[Import]
trait CpgPassBase
class Object
trait Matchable
class Any
Show all
class PythonInheritanceNamePass(cpg: Cpg) extends XInheritanceFullNamePass

Using some basic heuristics, will try to resolve type full names from types found within the CPG. Requires ImportPass as a pre-requisite.

Using some basic heuristics, will try to resolve type full names from types found within the CPG. Requires ImportPass as a pre-requisite.

Attributes

Supertypes
class XInheritanceFullNamePass
class ForkJoinParallelCpgPass[TypeDecl]
class NewStyleCpgPassBase[TypeDecl]
trait CpgPassBase
class Object
trait Matchable
class Any
Show all
class PythonTypeHintCallLinker(cpg: Cpg) extends XTypeHintCallLinker

Attributes

Supertypes
class XTypeHintCallLinker
class CpgPass
class ForkJoinParallelCpgPass[AnyRef]
class NewStyleCpgPassBase[AnyRef]
trait CpgPassBase
class Object
trait Matchable
class Any
Show all
class PythonTypeRecoveryPassGenerator(cpg: Cpg, config: XTypeRecoveryConfig) extends XTypeRecoveryPassGenerator[File]

Attributes

Supertypes
class XTypeRecoveryPassGenerator[File]
class Object
trait Matchable
class Any
object PythonV2 extends PythonVersion

Attributes

Supertypes
class Object
trait Matchable
class Any
Self type
PythonV2.type
object PythonV2AndV3 extends PythonVersion

Attributes

Supertypes
class Object
trait Matchable
class Any
Self type
object PythonV3 extends PythonVersion

Attributes

Supertypes
class Object
trait Matchable
class Any
Self type
PythonV3.type
sealed trait PythonVersion

Attributes

Supertypes
class Object
trait Matchable
class Any
Known subtypes
object PythonV2
object PythonV2AndV3
object PythonV3