IR
IR describes the internal representation of a software artifact.
The corresponding Protobuf message type is IR
.
Guaranteed Properties
- An IR is a Node.
- Each IR object must be an AuxDataContainer.
- There must be functionality to save an IR object to a file, and to load an IR object from a file. This functionality is allowed to fail if the object's version does not match the GTIRB Protobuf version for the API as a whole".
- Each IR object must have the following information, and the API must provide functionality for getting and setting each.
- The applicable Protobuf version. The default value for new IR objects should match the GTIRB Protobuf version for the API as a whole.
- The modules in the representation, as a collection of Module objects. The collection order will depend on the API language.
- The control flow graph (CFG).
API Implementations
The guaranteed functionality is provided as follows.
IR Classes and AuxDataContainer functionality
GTIRB Protobuf API Version
File Save/Load
Get and Set Modules
CFG
Links