GTIRB
v2.2.0
GrammaTech Intermediate Representation for Binaries: C++ API
|
Go to the documentation of this file.
67 return C.findNode(Uuid);
74 return C.findNode(Uuid);
94 Node& operator=(const
Node&) = delete;
102 const
UUID& getUUID()
const {
return Uuid; }
105 Kind getKind()
const {
return K; }
109 static bool classof(
const Node* N) {
return classofKind(N->getKind()); }
110 static bool classofKind(Kind K) {
111 return K >= Kind::Node && K <= Kind::LAST_Node;
117 Node(Context& C, Kind Knd);
118 Node(Context& C, Kind Knd,
const UUID& U);
135 #endif // GTIRB_NODE_H
A basic block.
Definition: CodeBlock.hpp:47
NodeTy * Create(Args &&... TheArgs)
Create an object of type T.
Definition: Context.hpp:126
Represents the base of the Node class hierarchy.
Definition: Node.hpp:39
Represents the base of types that can be inserted into the CFG.
Definition: CfgNode.hpp:30
boost::uuids::uuid UUID
Represents a universally unique identifier used to identify Node objects across serialization boundar...
Definition: Context.hpp:36
Represents a data object, possibly symbolic.
Definition: DataBlock.hpp:44
The context under which GTIRB operations occur.
Definition: Context.hpp:63
Class gtirb::Context and related operators.
static const Node * getByUUID(const Context &C, const UUID &Uuid)
Retrieve a node by its UUID.
Definition: Node.hpp:73
Represents a named section of the binary.
Definition: Section.hpp:66
#define GTIRB_EXPORT_API
This macro controls the visibility of exported symbols (i.e. classes) in shared libraries....
Definition: Export.hpp:52
static Node * getByUUID(Context &C, const UUID &Uuid)
Retrieve a node by its UUID.
Definition: Node.hpp:66
Main namespace for the GTIRB API.
Definition: Addr.hpp:28
A placeholder that serves as the endpoint (source or target) of a CFG edge.
Definition: ProxyBlock.hpp:49
A complete internal representation consisting of Modules (Module).
Definition: IR.hpp:76
The various casting and type checking operations that apply to gtirb::Node subclasses.
Represents a single binary (library or executable).
Definition: Module.hpp:107
static Node * Create(Context &C)
Create a Node object in its default state.
Definition: Node.hpp:82
A contiguous region of bytes in a binary.
Definition: ByteInterval.hpp:124
Represents a Symbol, which maps a name to an object in the IR.
Definition: Symbol.hpp:43