#include <program.h>
Collaboration diagram for VM::ProgramStorage:
Public Member Functions | |
ProgramStorage () | |
Create empty program storage. | |
~ProgramStorage () | |
Destructor will free all stored function (program) storage. | |
Function * | FirstFunction () |
Get pointer to first function in list (if you want to iterate). | |
void | AddFunction (Function *f) |
Add a function to the storage. | |
Private Member Functions | |
ProgramStorage (const ProgramStorage &) | |
Do not use. | |
void | operator= (const ProgramStorage &) |
Do not use. | |
Private Attributes | |
LinkedList< Function > | flist |
List of all functions we have. |
The program storage is organized in function programs, i.e. the complete program for the VM is just a set of function programs.
This class is NOT C++-safe.
Definition at line 48 of file program.h.
|
Do not use.
|
|
Create empty program storage.
Definition at line 46 of file program.cc. |
|
Destructor will free all stored function (program) storage.
Definition at line 51 of file program.cc. References flist, LinkedList< Function >::IsEmpty(), and LinkedList< Function >::PopFirst(). |
|
Add a function to the storage. NOTE: You must allocate the Function using operator new. The Function object is then taken over by the ProgramStorage which will eventually free it. Definition at line 40 of file program.cc. References LinkedList< Function >::append(), and flist. Referenced by VM::VMLinker::_CreateInitFunction(), VM::VMLinker::_LinkFunction(), and VM::AssemblerFile_Plaintext::_ParseProgram_FinishFunction(). |
|
Get pointer to first function in list (if you want to iterate).
Definition at line 115 of file program.h. References LinkedList< Function >::first(), and flist. Referenced by VM::VMLinker::_GenerateSymbolProvideMap(), VM::AssemblerFile::ResolveIDsNamespaceLocal(), and VM::AssemblerFile_Plaintext::WriteFile(). |
|
Do not use.
|
|
List of all functions we have.
Definition at line 101 of file program.h. Referenced by AddFunction(), FirstFunction(), and ~ProgramStorage(). |