Main Page | Namespace List | Class Hierarchy | Alphabetical List | Class List | File List | Namespace Members | Class Members | File Members | Related Pages

VM::FuncType Struct Reference

Represents a function type. More...

#include <functype.h>

Collaboration diagram for VM::FuncType:

Collaboration graph
[legend]
List of all members.

Public Types

enum  ID { Unknown = 0, Function, Method, VMethod }

Public Member Functions

 FuncType ()
 Construct "unknown" non-exported function type.

 FuncType (ID _id, uint8 _exported)
 Construct passed function type.

 FuncType (const FuncType &vt)
 Copy function type.

 ~FuncType ()
 Destructor: A no-op.

FuncTypeoperator= (const FuncType &vt)
 Assign a function type.

bool operator== (const FuncType &ft) const
 Compare func types (id and exported flag must match).

bool operator!= (const FuncType &ft) const
 Compare func types (id and exported flag must match).

TLString TypeString () const
 Returns string representation of type information.


Public Attributes

ID id: 8
 Type of the function.

uint8 exported
 Symbol exported? (0/1).


Detailed Description

Represents a function type.

Author:
Wolfgang Wieser ] wwieser (a) gmx <*> de [
The ID field stores the type of function (method, virtual method, non-method function) and the "exported" flag states if the symbol is exported or not.

This class is C++-safe.

Definition at line 44 of file functype.h.


Member Enumeration Documentation

enum VM::FuncType::ID
 

Enumeration values:
Unknown  Should not be used (unless not yet initialized).
Function  Non-method function or static method.
Method  Non-static, non-virtual method.
VMethod  Virtual method.

Definition at line 46 of file functype.h.


Constructor & Destructor Documentation

VM::FuncType::FuncType  )  [inline]
 

Construct "unknown" non-exported function type.

Definition at line 58 of file functype.h.

VM::FuncType::FuncType ID  _id,
uint8  _exported
[inline]
 

Construct passed function type.

Definition at line 60 of file functype.h.

References uint8.

VM::FuncType::FuncType const FuncType vt  )  [inline]
 

Copy function type.

Definition at line 62 of file functype.h.

VM::FuncType::~FuncType  )  [inline]
 

Destructor: A no-op.

Definition at line 64 of file functype.h.


Member Function Documentation

bool VM::FuncType::operator!= const FuncType ft  )  const [inline]
 

Compare func types (id and exported flag must match).

Definition at line 74 of file functype.h.

References exported, and id.

FuncType& VM::FuncType::operator= const FuncType vt  )  [inline]
 

Assign a function type.

Definition at line 67 of file functype.h.

References exported, and id.

bool VM::FuncType::operator== const FuncType ft  )  const [inline]
 

Compare func types (id and exported flag must match).

Definition at line 71 of file functype.h.

References exported, and id.

TLString VM::FuncType::TypeString  )  const
 

Returns string representation of type information.

Definition at line 23 of file functype.cc.

References TLString::assign(), exported, Function, id, Method, Unknown, and VMethod.

Referenced by VM::AssemblerFile_Plaintext::_WriteFunctionProgram(), and VM::NamespaceInfo::DumpTree().


Member Data Documentation

uint8 VM::FuncType::exported
 

Symbol exported? (0/1).

Definition at line 55 of file functype.h.

Referenced by VM::VMLinker::_GenerateSymbolProvideMap(), VM::AssemblerFile_Plaintext::_ParseSymbols_Symbols(), VM::AssemblerFile_Plaintext::_WriteSymbols_Recursive(), operator!=(), operator=(), operator==(), and TypeString().

ID VM::FuncType::id
 

Type of the function.

Definition at line 54 of file functype.h.

Referenced by VM::AssemblerFile_Plaintext::_WriteSymbols_Recursive(), operator!=(), operator=(), operator==(), and TypeString().


The documentation for this struct was generated from the following files:
Generated on Sat Feb 19 22:36:14 2005 for Ray by doxygen 1.3.5