angr.rust.analyses.rust_calling_convention.fact_collector

class angr.rust.analyses.rust_calling_convention.fact_collector.MemoryWriteCollector

Bases: AILBlockViewer

Walk ret2arg0 paths and collect direct memory writes (Store statements) to parameter-backed addresses.

__init__(fc)
Parameters:

fc (FactCollector)

collect()
class angr.rust.analyses.rust_calling_convention.fact_collector.CalleeWriteCollector

Bases: object

Visit all calls in the function graph. When a call forwards the current function’s arg0 to a callee, recursively analyze the callee and merge its memory writes into the current function’s facts.

__init__(fc)
Parameters:

fc (FactCollector)

collect()
class angr.rust.analyses.rust_calling_convention.fact_collector.ConstRetValueCollector

Bases: object

Iterate over return blocks and collect constant return values, including values propagated through tail calls.

__init__(fc)
Parameters:

fc (FactCollector)

collect()
class angr.rust.analyses.rust_calling_convention.fact_collector.CallsiteFactCollector

Bases: object

From the caller context (callsite_path), collect memory writes to stack regions that initialize struct arguments passed by reference.

__init__(fc)
Parameters:

fc (FactCollector)

collect()
class angr.rust.analyses.rust_calling_convention.fact_collector.FactCollector

Bases: CFAMixin, SRDAMixin, DFAMixin

Orchestrator that runs all sub-collectors and exposes the combined results.

Sub-collectors write back to this object’s fields; when collection is done, the results are flushed to the model.

__init__(analysis)
collect()

Run all sub-collectors, then flush results to the model.