expression_integer_pretty Class Reference

#include <pretty.h>

Inheritance diagram for expression_integer_pretty:

expression_integer expression List of all members.

Public Member Functions

virtual ~expression_integer_pretty ()
 expression_integer_pretty (const rcstring &value, translator_pretty *tp)

Protected Member Functions

void traversal (int pprec)
void logical_traversal (int pprec, label::pointer &true_branch, label::pointer &false_branch, bool fall_through_preference)
expression::pointer optimize () const

Private Member Functions

 expression_integer_pretty ()
 expression_integer_pretty (const expression_integer_pretty &)
expression_integer_prettyoperator= (const expression_integer_pretty &)

Private Attributes

translator_prettypretty
rcstring original

Detailed Description

The expression_integer_pretty class is used to represent a integer constant expression node pretty printer.

Definition at line 32 of file pretty.h.


Constructor & Destructor Documentation

virtual expression_integer_pretty::~expression_integer_pretty (  )  [virtual]

The destructor.

expression_integer_pretty::expression_integer_pretty ( const rcstring value,
translator_pretty tp 
)

The constructor.

expression_integer_pretty::expression_integer_pretty (  )  [private]

The default constructor. Do not use.

expression_integer_pretty::expression_integer_pretty ( const expression_integer_pretty  )  [private]

The copy constructor. Do not use.


Member Function Documentation

void expression_integer_pretty::traversal ( int  pprec  )  [protected, virtual]

The traversal method may be used to traverse each of the declaractions in the list.

Parameters:
pprec The precedence of the parent expression node.

Implements expression.

void expression_integer_pretty::logical_traversal ( int  pprec,
label::pointer true_branch,
label::pointer false_branch,
bool  fall_through_preference 
) [protected]

expression::pointer expression_integer_pretty::optimize (  )  const [protected, virtual]

The optimize method may be used to evaluate constant expressions, or substitute more efficient expressions.

This is intended to be called by the translator:: expression_statement method, or similar, where the expression is in its final form, and will get no deeper. In other words, when all available information has been provided.

There is no default implementation, even though most optimize implementations return self(), because this gives the compiler no opportunity to remind the authors of new classes that they have forgotten something.

Returns:
If the expression tree is not constant, or it is already as reduced as it can get, it returns itself. Otherwise, it returns a new expression node.

Implements expression.

expression_integer_pretty& expression_integer_pretty::operator= ( const expression_integer_pretty  )  [private]

The assignment operator. Do not use.


Member Data Documentation

translator_pretty& expression_integer_pretty::pretty [private]

The pretty instance valiable is used to remember our enclosing translator, for things like page widths and indent levels.

Definition at line 62 of file pretty.h.

rcstring expression_integer_pretty::original [private]

The original instance variable is used to remember the original text of the integer constant, just as it was written in the source code.

Definition at line 69 of file pretty.h.


The documentation for this class was generated from the following file:
Generated on Sun Feb 25 01:27:12 2007 for UCSDp-SystemCrossCompiler by  doxygen 1.5.1