vm.h File Reference

#include "config.h"
#include "scanner.h"

Include dependency graph for vm.h:

This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

struct  Value
class  ValueFactory
struct  Var
class  VarSet
struct  FncDeclaration
struct  FncDefinition
class  FncSet
class  ICmd
class  CmdList
class  ValueStack
class  CalleeSet
struct  Vm
class  VmRunner

Typedefs

typedef ValuePValue
typedef const ValuePConstValue
typedef VarPVar
typedef CmdListPCmdList
typedef ICmdPCmd

Functions

std::ostream & operator<< (std::ostream &, const Value::VType &)
std::ostream & operator<< (std::ostream &, const Value &)
bool operator== (const FncDeclaration &, const FncDeclaration &)
 compare only declaration (!!)
bool operator!= (const FncDeclaration &, const FncDeclaration &)
 compare only declaration (!!)
bool chkUnused (FncDefinition *)
 check if all arguments and local variables are used


Typedef Documentation

typedef ICmd* PCmd

Definition at line 239 of file vm.h.

typedef CmdList * PCmdList

Definition at line 147 of file vm.h.

typedef const Value* PConstValue

Definition at line 57 of file vm.h.

typedef Value* PValue

Definition at line 56 of file vm.h.

typedef Var* PVar

Definition at line 90 of file vm.h.


Function Documentation

bool chkUnused ( FncDefinition  ) 

check if all arguments and local variables are used

Definition at line 343 of file vm.cc.

References FncDeclaration::args, Var::defined, StreamDecorator::E_NOTE, StreamDecorator::E_WARNING, Vm::fileName, FncDeclaration::self, VarSet::size(), Var::used, FncDefinition::vars, and FncDefinition::vm.

Referenced by FncSet::addDefinition().

Here is the call graph for this function:

Here is the caller graph for this function:

bool operator!= ( const FncDeclaration ,
const FncDeclaration  
)

compare only declaration (!!)

Definition at line 320 of file vm.cc.

References operator==().

Here is the call graph for this function:

std::ostream& operator<< ( std::ostream &  ,
const Value  
)

Definition at line 58 of file vm.cc.

References Value::boolVal, StreamDecorator::C_NO_COLOR, StreamDecorator::C_YELLOW, Value::doubleVal, Value::intVal, Value::stringVal, Value::type, Value::V_BOOL, Value::V_DOUBLE, Value::V_INT, Value::V_NULL, and Value::V_STRING.

std::ostream& operator<< ( std::ostream &  ,
const Value::VType  
)

Definition at line 46 of file vm.cc.

References StreamDecorator::C_LIGHT_BLUE, StreamDecorator::C_NO_COLOR, Value::V_BOOL, Value::V_DOUBLE, Value::V_INT, Value::V_NULL, and Value::V_STRING.

bool operator== ( const FncDeclaration ,
const FncDeclaration  
)

compare only declaration (!!)

Definition at line 304 of file vm.cc.

References FncDeclaration::args, Var::name, FncDeclaration::self, VarSet::size(), Value::type, and Var::value.

Here is the call graph for this function:


Generated on Sat Jul 4 18:33:03 2009 for vyp08 (compiler and interpreter of VYP08 language) by  doxygen 1.5.4