This class is used by the engine to make relevant information easily available to the user when it stops executing emulated code. The accessible information depends on the reason why the engine stopped. For instance if the engine encountered a breakpoint, the class will hold breakpoint related info, e.g register/memory that was read/written, path constraints that was encountered, etc.
- class maat::serial::Serializable
- Virtual interface that serializable classes must implement.
- void reset()
- Reset all current information.
- auto class_uid() const -> uid_t virtual
- Return the class uid (see ClassId enum)
Serializer&) const virtual
- Dump the object contents in a serializer stream.
- Restore an object from a deserializer stream.
- Reason why the engine stopped.
- Address of the instruction where the engine stopped.
- std::optional<Branch> branch
- Info about branch operation.
- std::optional<RegAccess> reg_access
- Info about register access.
- std::optional<MemAccess> mem_access
- Info about memory access.
- std::optional<Value> exit_status
- Expression return as the process exit status at program exit.