FncDefinition Struct Reference

#include <vm.h>

Inheritance diagram for FncDefinition:

Inheritance graph
[legend]
Collaboration diagram for FncDefinition:

Collaboration graph
[legend]

List of all members.


Detailed Description

fnc data specific for definition only

Definition at line 153 of file vm.h.


Public Member Functions

 FncDefinition (Vm *vm)
 
Parameters:
vm Pointer to related virtual machine.

 FncDefinition (const FncDefinition &)
virtual ~FncDefinition ()

Public Attributes

Vm *const vm
 related virtual machine
VarSet vars
 local variables
const PCmdList cmdList
 function "code"
Var self
 function declaration/definition as Var object
VarSet args
 function arguments (names and values make sense only for FncDefinition objects)

Private Member Functions

FncDefinitionoperator= (const FncDefinition &)
 function assignment is not allowed

Constructor & Destructor Documentation

FncDefinition ( Vm vm  ) 

Parameters:
vm Pointer to related virtual machine.

Definition at line 326 of file vm.cc.

FncDefinition ( const FncDefinition other  ) 

Definition at line 335 of file vm.cc.

References vars.

~FncDefinition (  )  [virtual]

Definition at line 332 of file vm.cc.


Member Function Documentation

FncDefinition& operator= ( const FncDefinition  )  [private]

function assignment is not allowed


Member Data Documentation

Vm* const vm

related virtual machine

Definition at line 164 of file vm.h.

Referenced by chkUnused(), CallCmd::exec(), InputCmd::exec(), PrintCmd::exec(), WhileCmd::exec(), IfCmd::exec(), ArgCmd::exec(), LcVarCmd::exec(), GlVarCmd::exec(), ReturnCmd::exec(), and PushValueCmd::exec().

VarSet vars

local variables

Definition at line 165 of file vm.h.

Referenced by chkUnused(), CmdFactory::createAssign(), CmdFactory::createPush(), LcVarCmd::exec(), FncDefinition(), and Builder::fncDefVar().

const PCmdList cmdList

function "code"

Definition at line 166 of file vm.h.

Referenced by Builder::fncDefBody().

Var self [inherited]

function declaration/definition as Var object

Definition at line 136 of file vm.h.

Referenced by FncSet::addDeclaration(), FncSet::addDefinition(), FncFactory::Private::addDefinition(), Builder::chkBlockStack(), VmRunner::Private::chkFncRefs(), chkUnused(), VmRunner::Private::chkUnusedFncs(), CmdFactory::createAssign(), CmdFactory::createPush(), ReturnCmd::exec(), Builder::fncCall(), Builder::fncDecl(), Builder::fncDef(), Builder::fncDefArg(), Builder::fncDefBody(), Builder::fncDefVar(), FncDeclaration::operator=(), and operator==().

VarSet args [inherited]

function arguments (names and values make sense only for FncDefinition objects)

Definition at line 139 of file vm.h.

Referenced by chkUnused(), CmdFactory::createAssign(), CmdFactory::createPush(), CallCmd::exec(), ArgCmd::exec(), Builder::fncCall(), FncDeclaration::FncDeclaration(), Builder::fncDeclArg(), Builder::fncDefArg(), Builder::fncDefVar(), FncDeclaration::operator=(), and operator==().


The documentation for this struct was generated from the following files:
Generated on Sat Jul 4 18:33:13 2009 for vyp08 (compiler and interpreter of VYP08 language) by  doxygen 1.5.4