Falcon::SymModule Class Reference

Pair of the symbol and the module it is declared in. More...

#include <vmmaps.h>

Inheritance diagram for Falcon::SymModule:

Inheritance graph
[legend]

List of all members.

Public Member Functions

Itemitem () const
 Global item pointer.
LiveModuleliveModule () const
const Symbolsymbol () 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.


Detailed Description

Pair of the symbol and the module it is declared in.

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.


Constructor & Destructor Documentation

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.


Member Function Documentation

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.

Note:
If this SymModule refers to a WKI, the pointer is 0.
Returns:
a pointer to the referenced item.

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.

Note:
if the SymModule refers to a globally exported item, this id is -1
Returns:
the id of the item in the WKI array.


The documentation for this class was generated from the following file:

Generated on Mon Oct 19 10:11:47 2009 for Falcon_Core by  doxygen 1.5.8