Zen
A cross-platform functional programming language

WindowImplItem Class Reference

AST Node for a window implementation. More...

#include <Ast.hpp>

Inheritance diagram for WindowImplItem:
ImplItem Node

List of all members.

Public Member Functions

 WindowImplItem (const int &idx, const Ast::FunctionDef &fdef, const Ast::WindowBlock &block)
 Default constructor.
z::string getUniqueName (const z::string &sep) const
 Returns the unique name for this implementation item.
const Ast::WindowBlockgetBlock () const
 Returns the WindowBlock for this implementation item.

Private Member Functions

virtual void visit (ImplItem::Visitor &visitor) const
 Abstract visitor function.
virtual const
Ast::FunctionImplItem
getFunctionImplItem () const
 Returns a reference to this if this is a FunctionImplItem, else throws exception.

Private Attributes

const Ast::WindowBlock_block
 The window block.

Detailed Description

AST Node for a window implementation.


Constructor & Destructor Documentation

WindowImplItem ( const int &  idx,
const Ast::FunctionDef fdef,
const Ast::WindowBlock block 
) [inline]

Default constructor.

Parameters:
idxThe index of this item in the list of impl items.
fdefThe function definition implemented in this item.
blockThe window block for this item

Member Function Documentation

const Ast::WindowBlock& getBlock ( ) const [inline]

Returns the WindowBlock for this implementation item.

Returns:
The window block.
virtual const Ast::FunctionImplItem& getFunctionImplItem ( ) const [inline, private, virtual]

Returns a reference to this if this is a FunctionImplItem, else throws exception.

Returns:
A reference to this.

Implements ImplItem.

z::string getUniqueName ( const z::string sep) const [inline]

Returns the unique name for this implementation item.

Parameters:
sepThe separator
Returns:
The unique name.
void visit ( ImplItem::Visitor visitor) const [private, virtual]

Abstract visitor function.

Parameters:
visitorThe visitor object.

Implements ImplItem.


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