Polaris: ArgExprElem Class Reference

ArgExprElem Class Reference

An ArgExprElem points to an ArgNumberExpr for a formal reference. More...

Inheritance diagram for ArgExprElem:

Inheritance graph
[legend]
List of all members.

Public Member Functions

 ArgExprElem ()
 ArgExprElem (Expression &e, ARG_EVAL_TYPE eval_type)
 ArgExprElem (const ArgExprElem &other)
ArgExprElemoperator= (const ArgExprElem &other)
virtual ~ArgExprElem ()
Expressionexpr () const
ARG_EVAL_TYPE eval_type () const
void eval_type (ARG_EVAL_TYPE change_type)
virtual void print (ostream &o) const
virtual Listablelistable_clone () const
 Copy and return a pointer to any Listable item (MUST be implemented correctly by subclasses for List copy functions to work).

Friends

ostream & operator<< (ostream &o, const ArgExprElem &h)
 ... Type of argument evaluation

Detailed Description

An ArgExprElem points to an ArgNumberExpr for a formal reference.

It also contains the type of evaluation for this reference.

If an ArgExprElem is marked LAZY, it means that this formal reference need not be evaluated.

If an ArgExprElem is marked STRICT, it means that this formal reference must be evaluated.

Definition at line 45 of file lambda_util.cc.


Constructor & Destructor Documentation

ArgExprElem::ArgExprElem  ) 
 

... nothing to do

Definition at line 73 of file lambda_util.cc.

Referenced by listable_clone().

ArgExprElem::ArgExprElem Expression e,
ARG_EVAL_TYPE  eval_type
 

Definition at line 78 of file lambda_util.cc.

References e.

ArgExprElem::ArgExprElem const ArgExprElem other  ) 
 

Definition at line 85 of file lambda_util.cc.

ArgExprElem::~ArgExprElem  )  [virtual]
 

... nothing to do

Definition at line 99 of file lambda_util.cc.


Member Function Documentation

ArgExprElem & ArgExprElem::operator= const ArgExprElem other  ) 
 

Definition at line 91 of file lambda_util.cc.

Expression & ArgExprElem::expr  )  const
 

Definition at line 105 of file lambda_util.cc.

ARG_EVAL_TYPE ArgExprElem::eval_type  )  const
 

Definition at line 111 of file lambda_util.cc.

void ArgExprElem::eval_type ARG_EVAL_TYPE  change_type  ) 
 

Definition at line 117 of file lambda_util.cc.

void ArgExprElem::print ostream &  o  )  const [virtual]
 

Implements Listable.

Definition at line 123 of file lambda_util.cc.

References NON_STRICT, and Expression::print().

Listable * ArgExprElem::listable_clone  )  const [virtual]
 

Copy and return a pointer to any Listable item (MUST be implemented correctly by subclasses for List copy functions to work).

Implements Listable.

Definition at line 136 of file lambda_util.cc.

References ArgExprElem().


Friends And Related Function Documentation

ostream& operator<< ostream &  o,
const ArgExprElem h
[friend]
 

... Type of argument evaluation

Definition at line 52 of file lambda_util.cc.


The documentation for this class was generated from the following file:
 © 1995-2005 University of Illinois, Urbana-Champaign. All rights reserved.  Fri Mar 25 23:06:42 2005