C-Breeze
C Compiler Infrastructure

[ Project home page]
Main Page   Modules   Namespace List   Class Hierarchy   Alphabetical List   Compound List   File List   Namespace Members   Compound Members   File Members   Related Pages  

output_context Class Reference

#include <output_context.h>

List of all members.

Public Member Functions

 output_context (ostream &out)
output_context & operator<< (const string &s)
output_context & operator<< (const char *s)
output_context & operator<< (const char c)
void indent_in ()
void indent_out ()
void new_line ()
void continue_line ()
void space ()
int pos () const
void printed (suespecNode *ssn)
bool isPrinted (suespecNode *ssn)

Static Public Attributes

int wrap_width = 80

Private Member Functions

void _new_line ()
void _indent (const int num)

Private Attributes

ostream & _out
int _pos
int _line
int_list _parens
int _depth
char _last
ssn_set _ssNodes


Constructor & Destructor Documentation

output_context::output_context ostream &    out [inline]
 

Definition at line 80 of file output_context.h.


Member Function Documentation

void output_context::_indent const int    num [private]
 

Definition at line 108 of file output_context.cc.

References _last, _out, and _pos.

Referenced by continue_line(), and new_line().

void output_context::_new_line   [private]
 

Definition at line 96 of file output_context.cc.

References _last, _line, _out, and _pos.

Referenced by continue_line(), and new_line().

void output_context::continue_line  
 

Definition at line 132 of file output_context.cc.

References _indent(), _new_line(), _parens, new_line(), pos(), and wrap_width.

Referenced by output_delim_list().

void output_context::indent_in   [inline]
 

Definition at line 102 of file output_context.h.

Referenced by stmtNode::output_comment(), initializerNode::output_expr(), blockNode::output_stmt(), and suespecNode::output_type().

void output_context::indent_out   [inline]
 

Definition at line 103 of file output_context.h.

Referenced by stmtNode::output_comment(), blockNode::output_stmt(), and suespecNode::output_type().

bool output_context::isPrinted suespecNode   ssn
 

Definition at line 168 of file output_context.cc.

References _ssNodes.

Referenced by suespecNode::output_type().

void output_context::new_line  
 

Definition at line 123 of file output_context.cc.

References _indent(), and _new_line().

Referenced by continue_line(), textNode::output(), subdeclNode::output(), stmtNode::output(), declNode::output(), stmtNode::output_comment(), ifNode::output_stmt(), blockNode::output_stmt(), and suespecNode::output_type().

output_context & output_context::operator<< const char    c
 

Definition at line 72 of file output_context.cc.

References _last, _out, _parens, and _pos.

output_context & output_context::operator<< const char *    s
 

Definition at line 59 of file output_context.cc.

References _last, _out, and _pos.

output_context & output_context::operator<< const string &    s
 

Definition at line 46 of file output_context.cc.

References _last, _out, and _pos.

int output_context::pos   const [inline]
 

Definition at line 119 of file output_context.h.

Referenced by continue_line().

void output_context::printed suespecNode   ssn
 

Definition at line 162 of file output_context.cc.

References _ssNodes.

Referenced by suespecNode::output_type().

void output_context::space  
 

Definition at line 147 of file output_context.cc.

References _last, _out, and _pos.

Referenced by constantsChanger::at_threeAddr(), subdeclNode::output(), declNode::output(), output_delim_list(), operandNode::output_expr(), whileNode::output_stmt(), threeAddrNode::output_stmt(), switchNode::output_stmt(), ifNode::output_stmt(), forNode::output_stmt(), doNode::output_stmt(), conditiongotoNode::output_stmt(), tdefNode::output_type(), suespecNode::output_type(), sueNode::output_type(), ptrNode::output_type(), primNode::output_type(), and funcNode::output_type().


Member Data Documentation

int output_context::_depth [private]
 

Definition at line 60 of file output_context.h.

char output_context::_last [private]
 

Definition at line 64 of file output_context.h.

Referenced by _indent(), _new_line(), operator<<(), and space().

int output_context::_line [private]
 

Definition at line 54 of file output_context.h.

Referenced by _new_line().

ostream& output_context::_out [private]
 

Definition at line 52 of file output_context.h.

Referenced by _indent(), _new_line(), operator<<(), and space().

int_list output_context::_parens [private]
 

Definition at line 56 of file output_context.h.

Referenced by continue_line(), and operator<<().

int output_context::_pos [private]
 

Definition at line 53 of file output_context.h.

Referenced by _indent(), _new_line(), operator<<(), and space().

ssn_set output_context::_ssNodes [private]
 

Definition at line 68 of file output_context.h.

Referenced by isPrinted(), and printed().

int output_context::wrap_width = 80 [static]
 

Definition at line 40 of file output_context.cc.

Referenced by continue_line().


The documentation for this class was generated from the following files:

Generated on August 27, 2003
Back to the C-Breeze home page