Falcon::InheritDef Class Reference

Inheritance definition. More...

#include <symbol.h>

Inheritance diagram for Falcon::InheritDef:

Inheritance graph

List of all members.

Public Member Functions

Symbolbase () const
 InheritDef ()
 Empty constructor.
 InheritDef (Symbol *bc)
 Constructs the Inheritance.
bool load (Module *mod, Stream *in)
bool save (Stream *out) const
 ~InheritDef ()

Detailed Description

Inheritance definition.

Every class may be derived from one or more subclasses. Every inheritance will force the class to include all the properties of the subclasses, and to eventually call the base class constructors, if they have. Constructors may be called with parameters, which may be constants or symbols taken from the class symbol table, that is, from the parameters that have been passed to the class.

This structure is needed to record the order and kind of parameters given to subclasses instantation without writing VM code. In this way, each class constructor will handle only its local instantation, and the correct call of each constructor will be handled outside the main VM loop, in a smart and efficient way.

Constructor & Destructor Documentation

Falcon::InheritDef::InheritDef ( Symbol bc  )  [inline]

Constructs the Inheritance.

The inheritance is initially built without parameters.

bc the base class this inheritance refers to.

Falcon::InheritDef::InheritDef (  )  [inline]

Empty constructor.

Mainly used during deserialization.

Falcon::InheritDef::~InheritDef (  ) 

Member Function Documentation

Symbol* Falcon::InheritDef::base (  )  const [inline]

bool Falcon::InheritDef::load ( Module mod,
Stream in 

bool Falcon::InheritDef::save ( Stream out  )  const

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

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