#include <compile.h>
Inheritance diagram for expression_boolean_compile:

Public Member Functions | |
| virtual | ~expression_boolean_compile () |
| expression_boolean_compile (bool value, translator_compile *cntxt) | |
| expression_boolean_compile (bool value, const location &where, translator_compile *cntxt) | |
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_boolean_compile () | |
| expression_boolean_compile (const expression_boolean_compile &) | |
| expression_boolean_compile & | operator= (const expression_boolean_compile &) |
Private Attributes | |
| translator_compile & | code |
Definition at line 32 of file compile.h.
| virtual expression_boolean_compile::~expression_boolean_compile | ( | ) | [virtual] |
The destructor.
| expression_boolean_compile::expression_boolean_compile | ( | bool | value, | |
| translator_compile * | cntxt | |||
| ) |
The constructor.
| expression_boolean_compile::expression_boolean_compile | ( | bool | value, | |
| const location & | where, | |||
| translator_compile * | cntxt | |||
| ) |
The constructor.
| expression_boolean_compile::expression_boolean_compile | ( | ) | [private] |
The default constructor. Do not use.
| expression_boolean_compile::expression_boolean_compile | ( | const expression_boolean_compile & | ) | [private] |
The copy constructor. Do not use.
| void expression_boolean_compile::traversal | ( | int | pprec | ) | [protected, virtual] |
The traversal method may be used to traverse each of the declaractions in the list.
| pprec | The precedence of the parent expression node. |
Implements expression.
| void expression_boolean_compile::logical_traversal | ( | int | pprec, | |
| label::pointer & | true_branch, | |||
| label::pointer & | false_branch, | |||
| bool | fall_through_preference | |||
| ) | [protected] |
Reimplemented from expression_boolean.
| expression::pointer expression_boolean_compile::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.
Implements expression.
| expression_boolean_compile& expression_boolean_compile::operator= | ( | const expression_boolean_compile & | ) | [private] |
The assignment operator. Do not use.
1.5.1