Zen
A cross-platform functional programming language

SharedDef Class Reference

Concrete AST Node representing the list of variables shared across a continuation. More...

#include <Ast.hpp>

Inheritance diagram for SharedDef:
UserDefinedTypeSpec ChildTypeSpec TypeSpec Node

List of all members.

Public Member Functions

 SharedDef (const AccessType::T &accessType, const z::string &name, const NativeType &ntype, const VariableDefMap &defList)
 Default constructor.
const VariableDefMapgetDefList () const
 Returns the list of values in the shared list.

Private Member Functions

virtual void visit (TypeSpec::Visitor &visitor) const
 Visitor pattern implementation.
virtual const Ast::VariableDefhasMember (const z::string &name) const
 Checks if shared variable exists.

Private Attributes

const VariableDefMap_defList
 Shared member list node.

Detailed Description

Concrete AST Node representing the list of variables shared across a continuation.


Constructor & Destructor Documentation

SharedDef ( const AccessType::T accessType,
const z::string name,
const NativeType ntype,
const VariableDefMap defList 
) [inline]

Default constructor.

Parameters:
accessTypeThe AccessType for this UDT.
nameName of the UDT
ntypeThe NativeType of this UDT.
defListList of shared variables for this type.

Member Function Documentation

const VariableDefMap& getDefList ( ) const [inline]

Returns the list of values in the shared list.

Returns:
A reference to the list of values in the shared
const Ast::VariableDef * hasMember ( const z::string name) const [private, virtual]

Checks if shared variable exists.

Parameters:
nameName of shared variable to be checked
Returns:
Pointer to VariableDef of shared variable if it exists, else 0

Reimplemented from TypeSpec.

void visit ( TypeSpec::Visitor visitor) const [private, virtual]

Visitor pattern implementation.

Parameters:
visitorThe visitor object.

Implements TypeSpec.


The documentation for this class was generated from the following files:
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Defines