angr.analyses.purity.engine¶
- class angr.analyses.purity.engine.DataSource¶
Bases:
objectDescriptor of a given data source: where did this value come from?
- class angr.analyses.purity.engine.StateType¶
Bases:
objectInternal state for purity analysis
- vars: MutableMapping[int, DataType_co]
- copy()¶
- __init__(addr, vars)¶
- Parameters:
vars (MutableMapping[int, DataType_co])
- Return type:
None
- class angr.analyses.purity.engine.ResultType¶
Bases:
objectResult of purity analysis - how was each data source used and what function calls arguments were passed?
- uses: MutableMapping[DataSource, DataUsage]
- ret_vals: MutableMapping[int, DataType_co]
- other_storage: MutableMapping[DataSource, DataType_co]
- is_pure(pure_functions=None, allow_read_arguments=True, allow_write_arguments=False, allow_read_globals=True, allow_write_globals=False)¶
- __init__(uses=<factory>, call_args=<factory>, ret_vals=<factory>, other_storage=<factory>)¶
- Parameters:
uses (MutableMapping[DataSource, DataUsage])
call_args (MutableMapping[tuple[int, int | None, int, Function | str | None, int], DataType_co])
ret_vals (MutableMapping[int, DataType_co])
other_storage (MutableMapping[DataSource, DataType_co])
- Return type:
None
- type angr.analyses.purity.engine.DataType_co = frozenset[DataSource]¶
- class angr.analyses.purity.engine.PurityEngineAIL¶
Bases:
SimEngineLightAIL[StateType,DataType_co,StmtDataType,ResultType]Core of this analysis: THIS data source has THESE uses.
A use is arithmetic, store, or load.