FactExtractor class

Extracts Datalog facts from CFG/SSA representations.

Transforms CFG instructions into relational facts for points-to analysis, reachability analysis, and other queries.

Constructors

FactExtractor()

Properties

hashCode int
The hash code for this object.
no setterinherited
runtimeType Type
A representation of the runtime type of the object.
no setterinherited
unhandledTypes Set<Type>
Exposes unhandled instruction types for debugging.
no setter
varIds Map<String, int>
Exposes the variable ID map for debugging and query purposes.
no setter

Methods

extractFromCfg(ControlFlowGraph cfg, [String? functionName]) List<Fact>
Extracts facts from a CFG.
extractFromFile(FileIr fileIr) List<Fact>
Extracts facts from an entire file IR.
extractFromFunction(FunctionIr ir) List<Fact>
Extracts facts from a single function IR.
getHeapId(String typeName, int offset) String
Gets or creates a unique heap ID for an allocation.
getVarId(String name) int
Gets or creates a unique ID for a variable.
noSuchMethod(Invocation invocation) → dynamic
Invoked when a nonexistent method or property is accessed.
inherited
reset() → void
Resets the extractor state.
toString() String
A string representation of this object.
inherited

Operators

operator ==(Object other) bool
The equality operator.
inherited