io.joern.jssrc2cpg.passes

Members list

Concise view

Type members

Classlikes

class AstCreationPass(cpg: Cpg, astGenRunnerResult: AstGenRunnerResult, config: Config, report: Report) extends ConcurrentWriterCpgPass[(String, String)]

Attributes

Graph
Supertypes
class ConcurrentWriterCpgPass[(String, String)]
class NewStyleCpgPassBase[(String, String)]
trait CpgPassBase
class Object
trait Matchable
class Any
class BuiltinTypesPass(cpg: Cpg) extends CpgPass

Attributes

Graph
Supertypes
class CpgPass
class ForkJoinParallelCpgPass[AnyRef]
class NewStyleCpgPassBase[AnyRef]
trait CpgPassBase
class Object
trait Matchable
class Any
class ConfigPass(cpg: Cpg, config: Config, report: Report) extends ConcurrentWriterCpgPass[File]

Attributes

Graph
Supertypes
class ConcurrentWriterCpgPass[File]
class NewStyleCpgPassBase[File]
trait CpgPassBase
class Object
trait Matchable
class Any
Known subtypes
class ConstClosurePass(cpg: Cpg) extends CpgPass

A pass that identifies assignments of closures to constants and updates METHOD nodes accordingly.

A pass that identifies assignments of closures to constants and updates METHOD nodes accordingly.

Attributes

Graph
Supertypes
class CpgPass
class ForkJoinParallelCpgPass[AnyRef]
class NewStyleCpgPassBase[AnyRef]
trait CpgPassBase
class Object
trait Matchable
class Any
object Defines

Attributes

Graph
Supertypes
class Object
trait Matchable
class Any
Self type
Defines.type
class DependenciesPass(cpg: Cpg, config: Config) extends CpgPass

Creation of DEPENDENCY nodes from "package.json" files.

Creation of DEPENDENCY nodes from "package.json" files.

Attributes

Graph
Supertypes
class CpgPass
class ForkJoinParallelCpgPass[AnyRef]
class NewStyleCpgPassBase[AnyRef]
trait CpgPassBase
class Object
trait Matchable
class Any

Attributes

Graph
Supertypes
class Object
trait Matchable
class Any
Self type

Attributes

Graph
Supertypes
class Object
trait Matchable
class Any
Self type
class ImportsPass(cpg: Cpg) extends CpgPass

This pass creates IMPORT nodes by looking for calls to require. IMPORT nodes are linked to existing dependency nodes, or, if no suitable dependency node exists, a dependency node is created.

This pass creates IMPORT nodes by looking for calls to require. IMPORT nodes are linked to existing dependency nodes, or, if no suitable dependency node exists, a dependency node is created.

TODO with this, we can have multiple IMPORT nodes that point to the same call: one created during AST creation, and one using this pass.

TODO Dependency node creation is still missing.

Attributes

Graph
Supertypes
class CpgPass
class ForkJoinParallelCpgPass[AnyRef]
class NewStyleCpgPassBase[AnyRef]
trait CpgPassBase
class Object
trait Matchable
class Any
class JavaScriptInheritanceNamePass(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

Graph
Supertypes
class XInheritanceFullNamePass
class CpgPass
class ForkJoinParallelCpgPass[AnyRef]
class NewStyleCpgPassBase[AnyRef]
trait CpgPassBase
class Object
trait Matchable
class Any
class JavaScriptTypeHintCallLinker(cpg: Cpg) extends XTypeHintCallLinker

Attributes

Graph
Supertypes
class XTypeHintCallLinker
class CpgPass
class ForkJoinParallelCpgPass[AnyRef]
class NewStyleCpgPassBase[AnyRef]
trait CpgPassBase
class Object
trait Matchable
class Any
class JavaScriptTypeRecoveryPass(cpg: Cpg, config: XTypeRecoveryConfig) extends XTypeRecoveryPass[File]

Attributes

Graph
Supertypes
class XTypeRecoveryPass[File]
class CpgPass
class ForkJoinParallelCpgPass[AnyRef]
class NewStyleCpgPassBase[AnyRef]
trait CpgPassBase
class Object
trait Matchable
class Any
class JsMetaDataPass(cpg: Cpg, hash: String, inputPath: String) extends CpgPass

Attributes

Graph
Supertypes
class CpgPass
class ForkJoinParallelCpgPass[AnyRef]
class NewStyleCpgPassBase[AnyRef]
trait CpgPassBase
class Object
trait Matchable
class Any
class PrivateKeyFilePass(cpg: Cpg, config: Config, report: Report) extends ConfigPass

Attributes

Graph
Supertypes
class ConcurrentWriterCpgPass[File]
class NewStyleCpgPassBase[File]
trait CpgPassBase
class Object
trait Matchable
class Any
class TypeNodePass(usedTypes: List[(String, String)], cpg: Cpg) extends CpgPass

Attributes

Graph
Supertypes
class CpgPass
class ForkJoinParallelCpgPass[AnyRef]
class NewStyleCpgPassBase[AnyRef]
trait CpgPassBase
class Object
trait Matchable
class Any