Main Page   Modules   Namespace List   Class Hierarchy   Compound List   File List   Compound Members   File Members   Related Pages  

LoopDismantleChanger Class Reference

#include <dismantle.h>

Inheritance diagram for LoopDismantleChanger::

DismantleChanger Changer List of all members.

Public Methods

Node * dismantle_loop (loopNode *)
 LoopDismantleChanger (unsigned int flags)

Static Public Methods

exprNode * Not (exprNode *)
stmtNode * fix_break_continue (stmtNode *, idNode *, idNode *, bool)

Private Methods

Node * dismantle_while_for_loop (whileNode *, idNode *)
Node * dismantle_while_for_loop_with_inversion (whileNode *, idNode *)
Node * dismantle_while_loop (whileNode *)
Node * dismantle_for_loop (forNode *)
Node * dismantle_do_loop (doNode *)
Node * at_loop (loopNode *, Order)
Node * at_return (returnNode *, Order)
Node * at_proc (procNode *, Order)

Private Attributes

idNode * return_label
idNode * return_val
returnNode * return_node

Constructor & Destructor Documentation

LoopDismantleChanger::LoopDismantleChanger (  unsigned int    flags )  [inline]
 


Member Function Documentation

Node * LoopDismantleChanger::at_loop (  loopNode *    p,
Order    ord
)  [private, virtual]
 

Reimplemented from Changer.

Node * LoopDismantleChanger::at_proc (  procNode *    p,
Order    ord
)  [private, virtual]
 

Reimplemented from Changer.

Node * LoopDismantleChanger::at_return (  returnNode *    p,
Order    ord
)  [private, virtual]
 

Reimplemented from Changer.

Node * LoopDismantleChanger::dismantle_do_loop (  doNode *    p )  [private]
 

Node * LoopDismantleChanger::dismantle_for_loop (  forNode *    p )  [private]
 

Node * LoopDismantleChanger::dismantle_loop (  loopNode *    p ) 
 

Node * LoopDismantleChanger::dismantle_while_for_loop (  whileNode *    p,
idNode *    on_continue
)  [private]
 

Node * LoopDismantleChanger::dismantle_while_for_loop_with_inversion (  whileNode *    p,
idNode *    on_continue
)  [private]
 

Node * LoopDismantleChanger::dismantle_while_loop (  whileNode *    p )  [private]
 

stmtNode * LoopDismantleChanger::fix_break_continue (  stmtNode *    s,
idNode *    goto_on_break,
idNode *    goto_on_continue,
bool    r
)  [static]
 

exprNode * LoopDismantleChanger::Not (  exprNode *    p )  [static]
 


Member Data Documentation

idNode* LoopDismantleChanger::return_label [private]
 

returnNode* LoopDismantleChanger::return_node [private]
 

idNode* LoopDismantleChanger::return_val [private]
 


The documentation for this class was generated from the following files:
Generated on Thu Jan 10 12:06:30 2002 for C-Breeze by doxygen1.2.13.1 written by Dimitri van Heesch, © 1997-2001