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 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 RequirePass(cpg: Cpg) extends CpgPass

This pass enhances the call graph and call nodes by interpreting assignments of the form foo = require("module").

This pass enhances the call graph and call nodes by interpreting assignments of the form foo = require("module").

Attributes

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

Attributes

Companion:
class
Graph
Supertypes
class Object
trait Matchable
class Any
Self type
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