io.shiftleft.js2cpg.cpg.datastructures.scope

Type members

Classlikes

object BlockScope extends ScopeType
class BlockScopeElement(val name: String, val scopeNode: NewNode, val surroundingScope: Option[ScopeElement]) extends ScopeElement
object MethodScope extends ScopeType
class MethodScopeElement(val methodFullName: String, val capturingRefId: Option[NewNode], val name: String, val scopeNode: NewNode, val surroundingScope: Option[ScopeElement]) extends ScopeElement
case
class PendingReference(variableName: String, referenceNodeId: NewNode, stack: Option[ScopeElement])
case
class ResolvedReference(variableNodeId: NewNode, origin: PendingReference)
class Scope

Handles the scope stack for tracking identifier to variable relation.

Handles the scope stack for tracking identifier to variable relation.

Companion
object
object Scope
Companion
class
abstract
class ScopeElement(val name: String, val scopeNode: NewNode, val surroundingScope: Option[ScopeElement])

A single element of a scope stack.

A single element of a scope stack.

class ScopeElementIterator(start: Option[ScopeElement]) extends Iterator[ScopeElement]
sealed
trait ScopeType