module greed.TAC.base


class Aliased

This class allows us to use aliases for the attributes of a class. For example, if we have a class with the following attributes: ['a', 'b', 'c'], we can define a dictionary aliases = {'x': 'a', 'y': 'b'} and then access the attributes of the class using the aliases.


class TAC_Statement

This class represents a TAC Statement.

method __init__

__init__(
    block_id: str,
    stmt_id: str,
    uses: List[str] = None,
    defs: List[str] = None,
    values: Mapping[str, str] = None
)

Args:

  • block_id: The id of the block that contains this statement.
  • stmt_id: The id of this statement.
  • uses: The list of variables used by this statement.
  • defs: The list of variables defined by this statement.
  • values: The static values of the variables used by this statement.

method copy

copy(alias_arg_map=None)

method handler_with_side_effects

handler_with_side_effects(
    func: Callable[[ForwardRef('TAC_Statement'), SymbolicEVMState], List[SymbolicEVMState]]
)

Decorator that executes the basic functionalities for handlers with side effects (can't just read and return statically computed results).


method handler_without_side_effects

handler_without_side_effects(
    func: Callable[[ForwardRef('TAC_Statement'), SymbolicEVMState], List[SymbolicEVMState]]
)

Decorator that executes the basic functionalities for handlers without side effects (can just read and return statically computed results).


method process_args

process_args()

method reset_arg_val

reset_arg_val()

method set_arg_val

set_arg_val(state: SymbolicEVMState)

This file was automatically generated via lazydocs.