#include <utility>#include <algorithm>#include <vector>#include <iterator>#include <functional>#include "defs.h"#include "wn.h"#include "cxx_memory.h"

Go to the source code of this file.
Classes | |
| class | WN_TREE_ITER_base< WHIRL > |
| class | WN_TREE_ITER< order, WHIRL > |
| class | WN_TREE_ITER< PRE_ORDER, WHIRL > |
| class | WN_TREE_ITER< POST_ORDER, WHIRL > |
| class | WN_TREE_CONTAINER< order > |
| struct | WN_OPCODE_print |
| struct | WN_count |
Defines | |
| #define | wn_tree_util_INCLUDED "wn_tree_util.h" |
| #define | LAST_PRE_ORDER_ITER (WN_TREE_ITER<PRE_ORDER, WN*> ()) |
| #define | LAST_POST_ORDER_ITER (WN_TREE_ITER<POST_ORDER, WN*> ()) |
| #define | LAST_PRE_ORDER_CONST_ITER (WN_TREE_ITER<PRE_ORDER, const WN*> ()) |
| #define | LAST_POST_ORDER_CONST_ITER (WN_TREE_ITER<POST_ORDER, const WN*> ()) |
Typedefs | |
| typedef WN_TREE_ITER < PRE_ORDER, WN * > | TREE_ITER |
| typedef WN_TREE_ITER < PRE_ORDER, const WN * > | CONST_TREE_ITER |
Enumerations | |
| enum | TRAV_ORDER { PRE_ORDER = 0, POST_ORDER = 1 } |
Functions | |
| template<class WHIRL > | |
| bool | operator== (const WN_TREE_ITER_base< WHIRL > &x, const WN_TREE_ITER_base< WHIRL > &y) |
| template<class WHIRL > | |
| bool | operator!= (const WN_TREE_ITER_base< WHIRL > &x, const WN_TREE_ITER_base< WHIRL > &y) |
| template<TRAV_ORDER trav_order> | |
| bool | operator== (const WN_TREE_CONTAINER< trav_order > &x, const WN_TREE_CONTAINER< trav_order > &y) |
| template<class OPERATION , class WHIRL , TRAV_ORDER trav_order> | |
| OPERATION & | WN_TREE_walk (WHIRL wn, OPERATION &op, const WN_TREE_ITER< trav_order, WHIRL > &last_iter) |
| template<class OPERATION , class WHIRL > | |
| OPERATION & | WN_TREE_walk_pre_order (WHIRL wn, OPERATION &op) |
| template<class OPERATION , class WHIRL > | |
| OPERATION & | WN_TREE_walk_post_order (WHIRL wn, OPERATION &op) |
| #define LAST_POST_ORDER_CONST_ITER (WN_TREE_ITER<POST_ORDER, const WN*> ()) |
Definition at line 753 of file wn_tree_util.h.
| #define LAST_POST_ORDER_ITER (WN_TREE_ITER<POST_ORDER, WN*> ()) |
Definition at line 751 of file wn_tree_util.h.
| #define LAST_PRE_ORDER_CONST_ITER (WN_TREE_ITER<PRE_ORDER, const WN*> ()) |
Definition at line 752 of file wn_tree_util.h.
| #define LAST_PRE_ORDER_ITER (WN_TREE_ITER<PRE_ORDER, WN*> ()) |
Definition at line 750 of file wn_tree_util.h.
Referenced by WN_TREE_put_expr(), and WN_TREE_put_stmt().
| #define wn_tree_util_INCLUDED "wn_tree_util.h" |
Definition at line 39 of file wn_tree_util.h.
| typedef WN_TREE_ITER<PRE_ORDER, const WN*> CONST_TREE_ITER |
Definition at line 655 of file wn_tree_util.h.
| typedef WN_TREE_ITER<PRE_ORDER, WN*> TREE_ITER |
Definition at line 654 of file wn_tree_util.h.
| enum TRAV_ORDER |
Definition at line 97 of file wn_tree_util.h.
| bool operator!= | ( | const WN_TREE_ITER_base< WHIRL > & | x, | |
| const WN_TREE_ITER_base< WHIRL > & | y | |||
| ) |
Definition at line 326 of file wn_tree_util.h.
References WN_TREE_ITER_base< WHIRL >::Wn().

| bool operator== | ( | const WN_TREE_ITER_base< WHIRL > & | x, | |
| const WN_TREE_ITER_base< WHIRL > & | y | |||
| ) |
Definition at line 320 of file wn_tree_util.h.
References WN_TREE_ITER_base< WHIRL >::Wn().

| bool operator== | ( | const WN_TREE_CONTAINER< trav_order > & | x, | |
| const WN_TREE_CONTAINER< trav_order > & | y | |||
| ) |
Definition at line 730 of file wn_tree_util.h.
References WN_TREE_CONTAINER< order >::begin(), and WN_Equiv().

| OPERATION& WN_TREE_walk | ( | WHIRL | wn, | |
| OPERATION & | op, | |||
| const WN_TREE_ITER< trav_order, WHIRL > & | last_iter | |||
| ) |
Definition at line 775 of file wn_tree_util.h.
References Is_True, and WN_TREE_ITER_base< WHIRL >::Wn().
Referenced by WN_TREE_walk_post_order(), and WN_TREE_walk_pre_order().

| OPERATION& WN_TREE_walk_post_order | ( | WHIRL | wn, | |
| OPERATION & | op | |||
| ) |
Definition at line 801 of file wn_tree_util.h.
References WN_TREE_walk().

| OPERATION& WN_TREE_walk_pre_order | ( | WHIRL | wn, | |
| OPERATION & | op | |||
| ) |
Definition at line 795 of file wn_tree_util.h.
References WN_TREE_walk().
Referenced by W2CF_TRANSLATOR::Whileloop_Looks_Like_Forloop().

1.7.1