Type of the state abstract domain the semantics are defined for
ReadonlyastThe normalized AST of the analyzed program (the control flow visitor only requires its id map)
ReadonlycfgThe control flow graph of the analyzed program
ReadonlycontextThe current flowR analyzer context (e.g. for accessing the configuration or loaded files)
ReadonlydfgThe dataflow graph of the analyzed program
ReadonlydomainThe value abstract domain the semantics are defined for (e.g. to create Top or Bottom values)
Gets the abstract state inferred at the location of an AST node.
The ID of the node to get the abstract state at
The abstract state at the node, or undefined if the node has no abstract state (i.e. the node has not been visited or is unreachable)
Resolves the abstract value inferred for an AST node, by following symbols to their variable origins,
arguments to their values, expression lists to their last expression, and pipes and if expressions to their results.
The node (or ID of the node) to get the inferred abstract value for
Optionalstate: Domain
An optional abstract state used to resolve the inferred value (defaults to the state at the requested node)
The inferred abstract value of the node, or undefined if no value was inferred for the node
Gets the normalized AST node with the given node ID.
The ID of the node to get the AST node for
The normalized AST node, or undefined if there is no such node
Gets the dataflow graph vertex with the given node ID.
The ID of the vertex to get the dataflow graph vertex for
The dataflow graph vertex, or undefined if there is no such vertex
The context passed to the AbstractSemantics handlers of an abstract domain, providing access to the analyzed program (AST, DFG, CFG), the analyzer context, the value domain of the analysis, as well as to the abstract states and values inferred so far.