angr.rust.analyses.rust_calling_convention.fact_collector¶
- class angr.rust.analyses.rust_calling_convention.fact_collector.MemoryWriteCollector¶
Bases:
AILBlockViewerWalk 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:
objectVisit 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:
objectIterate 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:
objectFrom 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,DFAMixinOrchestrator 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.