ROSE 0.11.145.192
|
State associated with printing arrows in the margin.
Definition at line 49 of file Unparser/Base.h.
#include <Rose/BinaryAnalysis/Unparser/Base.h>
Public Types | |
enum | Flags { POINTABLE_ENTITY_START = 0x00000001 , POINTABLE_ENTITY_END = 0x00000002 , POINTABLE_ENTITY_INSIDE = 0x00000004 , ALWAYS_RENDER = 0x00000008 } |
Flags controlling the finer aspects of margin arrows. More... | |
Public Member Functions | |
void | reset () |
Reset the marging arrow state. | |
std::string | render (Sawyer::Optional< EdgeArrows::EndpointId > currentEntity) |
Generate the string to print in the margin. | |
Public Attributes | |
EdgeArrows | arrows |
The arrows to be displayed. | |
BitFlags< Flags > | flags |
Flags that hold and/or control the output state. | |
Sawyer::Optional< EdgeArrows::EndpointId > | latestEntity |
Latest pointable entity that was encountered in the output. | |
Flags controlling the finer aspects of margin arrows.
Definition at line 52 of file Unparser/Base.h.
|
inline |
Reset the marging arrow state.
This should be called near the end of emitting a function, probably just before emitting the function epilogue.
Definition at line 79 of file Unparser/Base.h.
References arrows, flags, latestEntity, and Rose::BinaryAnalysis::Unparser::EdgeArrows::reset().
std::string Rose::BinaryAnalysis::Unparser::ArrowMargin::render | ( | Sawyer::Optional< EdgeArrows::EndpointId > | currentEntity | ) |
Generate the string to print in the margin.
The currentEntity
values are the vertex IDs used to initialize the arrows method of this object. For control flow graphs, that's usually the entry address of a basic block. However, the unparser doesn't really care what kind of entities are being pointed at by the arrows.
EdgeArrows Rose::BinaryAnalysis::Unparser::ArrowMargin::arrows |
Flags that hold and/or control the output state.
Definition at line 73 of file Unparser/Base.h.
Referenced by reset().
Sawyer::Optional<EdgeArrows::EndpointId> Rose::BinaryAnalysis::Unparser::ArrowMargin::latestEntity |
Latest pointable entity that was encountered in the output.
Definition at line 74 of file Unparser/Base.h.
Referenced by reset().