io.joern.php2cpg.passes

Members list

Type members

Classlikes

class AnyTypePass(cpg: Cpg) extends ConcurrentWriterCpgPass[AstNode]

Attributes

Supertypes
class ConcurrentWriterCpgPass[AstNode]
class NewStyleCpgPassBase[AstNode]
trait CpgPassBase
class Object
trait Matchable
class Any
Show all
class AstCreationPass(config: Config, cpg: Cpg, parser: PhpParser)(implicit withSchemaValidation: ValidationMode) extends ConcurrentWriterCpgPass[String]

Attributes

Supertypes
class ConcurrentWriterCpgPass[String]
class NewStyleCpgPassBase[String]
trait CpgPassBase
class Object
trait Matchable
class Any
Show all
class AstParentInfoPass(cpg: Cpg) extends ConcurrentWriterCpgPass[AstNode]

Attributes

Supertypes
class ConcurrentWriterCpgPass[AstNode]
class NewStyleCpgPassBase[AstNode]
trait CpgPassBase
class Object
trait Matchable
class Any
Show all
case class Autoload(psr-4: Map[String, PsrStringOrArray])

Attributes

Supertypes
trait Serializable
trait Product
trait Equals
class Object
trait Matchable
class Any
Show all
class ClosureRefPass(cpg: Cpg) extends ConcurrentWriterCpgPass[ClosureBinding]

Attributes

Supertypes
class ConcurrentWriterCpgPass[ClosureBinding]
class NewStyleCpgPassBase[ClosureBinding]
trait CpgPassBase
class Object
trait Matchable
class Any
Show all
case class Composer(require: Map[String, String], autoload: Autoload)

Attributes

Supertypes
trait Serializable
trait Product
trait Equals
class Object
trait Matchable
class Any
Show all
class ComposerAutoloadPass(cpg: Cpg) extends ForkJoinParallelCpgPass[Method]

Composer's autoload feature implicitly brings in dependencies into a file. This pass will detect such imports and fully qualify type names referencing non-stub types. This pass also considers types brought in by the dependency downloader.

Composer's autoload feature implicitly brings in dependencies into a file. This pass will detect such imports and fully qualify type names referencing non-stub types. This pass also considers types brought in by the dependency downloader.

Attributes

Supertypes
class ForkJoinParallelCpgPass[Method]
class NewStyleCpgPassBase[Method]
trait CpgPassBase
class Object
trait Matchable
class Any
Show all
class DependencyPass(cpg: Cpg, composerPaths: List[String]) extends ForkJoinParallelCpgPass[File]

Parses the composer.json file for all require dependencies.

Parses the composer.json file for all require dependencies.

Attributes

Supertypes
class ForkJoinParallelCpgPass[File]
class NewStyleCpgPassBase[File]
trait CpgPassBase
class Object
trait Matchable
class Any
Show all
class DependencySymbolsPass(cpg: Cpg, dependencyDir: File) extends ConcurrentWriterCpgPass[ClassParserClass]

This pass parses the high-level symbols of the dependencies to include their types to the CPG.

This pass parses the high-level symbols of the dependencies to include their types to the CPG.

Value parameters

cpg

the code property graph.

dependencyDir

the directory holding the downloaded dependencies.

Attributes

Supertypes
class ConcurrentWriterCpgPass[ClassParserClass]
class NewStyleCpgPassBase[ClassParserClass]
trait CpgPassBase
class Object
trait Matchable
class Any
Show all
case class KnownFunction(name: String, rTypes: Seq[String], pTypes: Seq[Seq[String]])

Attributes

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

Attributes

Companion
class
Supertypes
class Object
trait Matchable
class Any
Self type
abstract class LocalCreationPass[ScopeType <: AstNode](cpg: Cpg) extends ConcurrentWriterCpgPass[ScopeType], AstNodeBuilder[AstNode, LocalCreationPass[ScopeType]]

Attributes

Companion
object
Supertypes
trait AstNodeBuilder[AstNode, LocalCreationPass[ScopeType]]
class ConcurrentWriterCpgPass[ScopeType]
class NewStyleCpgPassBase[ScopeType]
trait CpgPassBase
class Object
trait Matchable
class Any
Show all
Known subtypes
class MethodLocalPass(cpg: Cpg) extends LocalCreationPass[Method]

Attributes

Supertypes
class LocalCreationPass[Method]
trait AstNodeBuilder[AstNode, LocalCreationPass[Method]]
class ConcurrentWriterCpgPass[Method]
class NewStyleCpgPassBase[Method]
trait CpgPassBase
class Object
trait Matchable
class Any
Show all
class NamespaceLocalPass(cpg: Cpg) extends LocalCreationPass[NamespaceBlock]

Attributes

Supertypes
class LocalCreationPass[NamespaceBlock]
trait AstNodeBuilder[AstNode, LocalCreationPass[NamespaceBlock]]
class ConcurrentWriterCpgPass[NamespaceBlock]
class NewStyleCpgPassBase[NamespaceBlock]
trait CpgPassBase
class Object
trait Matchable
class Any
Show all
class PhpTypeHintCallLinker(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 PhpTypeRecoveryPassGenerator(cpg: Cpg, config: XTypeRecoveryConfig) extends XTypeRecoveryPassGenerator[NamespaceBlock]

Attributes

Supertypes
class XTypeRecoveryPassGenerator[NamespaceBlock]
class Object
trait Matchable
class Any
class PhpTypeStubsParserPass(cpg: Cpg, config: XTypeStubsParserConfig) extends ForkJoinParallelCpgPass[KnownFunction]

Sets the return and parameter types for builtin functions with known function signatures.

Sets the return and parameter types for builtin functions with known function signatures.

TODO: Need to handle variadic arguments.

Attributes

Supertypes
class ForkJoinParallelCpgPass[KnownFunction]
class NewStyleCpgPassBase[KnownFunction]
trait CpgPassBase
class Object
trait Matchable
class Any
Show all
case class PsrArray(obj: Array[String]) extends PsrStringOrArray

Attributes

Supertypes
trait Serializable
trait Product
trait Equals
class Object
trait Matchable
class Any
Show all
case class PsrString(obj: String) extends PsrStringOrArray

Attributes

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

Attributes

Companion
object
Supertypes
class Object
trait Matchable
class Any
Known subtypes
class PsrArray
class PsrString

Attributes

Companion
trait
Supertypes
trait Sum
trait Mirror
class Object
trait Matchable
class Any
Self type