#include <vmmaps.h>
Public Member Functions | |
Item * | item () const |
Global item pointer. | |
LiveModule * | liveModule () const |
const Symbol * | symbol () const |
uint32 | symbolId () const |
SymModule (int32 wiid, LiveModule *mod, const Symbol *sym) | |
Creates an exported Well Known Item. | |
SymModule (LiveModule *mod, const Symbol *sym) | |
Creates an exported Global Item. | |
SymModule (Item *itm, LiveModule *mod, const Symbol *sym) | |
Creates an exported Global Item. | |
SymModule () | |
int32 | wkiid () const |
Well known item id. |
This is just a commodity class used to store the association between a certain symbol and the module it came from given the VM viewpoint (that is, the ID of the source module in the VM module list.
The class may store either a global item (an item generated by an export request in the source module) or a well known item (an item generated via a setWKI request by the module), and it can never be both at the same time.
Falcon::SymModule::SymModule | ( | ) | [inline] |
Falcon::SymModule::SymModule | ( | Item * | itm, | |
LiveModule * | mod, | |||
const Symbol * | sym | |||
) | [inline] |
Creates an exported Global Item.
Falcon::SymModule::SymModule | ( | LiveModule * | mod, | |
const Symbol * | sym | |||
) |
Creates an exported Global Item.
This shortcut initializes the item pointer atonomously.
Falcon::SymModule::SymModule | ( | int32 | wiid, | |
LiveModule * | mod, | |||
const Symbol * | sym | |||
) | [inline] |
Creates an exported Well Known Item.
Item* Falcon::SymModule::item | ( | ) | const [inline] |
Global item pointer.
This pointers always points to a valid global variable in a vector inside LiveModule structure. As the global variable area never chages, the item pointer stays valid as long as the LiveModule in which it's stored is alive.
LiveModule* Falcon::SymModule::liveModule | ( | ) | const [inline] |
const Symbol* Falcon::SymModule::symbol | ( | ) | const [inline] |
uint32 Falcon::SymModule::symbolId | ( | ) | const [inline] |
int32 Falcon::SymModule::wkiid | ( | ) | const [inline] |
Well known item id.
To find an item in the well known item array, it is necessary to use a local ID, as the array grows as the VM finds wki in the module.