CVC3  2.4.1
Classes | Namespaces | Functions
expr_stream.h File Reference
#include "os.h"
#include "expr.h"

Go to the source code of this file.

Classes

class  CVC3::ExprStream
 Pretty-printing output stream for Expr. READ THE DOCS BEFORE USING! More...
 

Namespaces

namespace  CVC3
 

Functions

CVC3::ExprStreamstd::endl (CVC3::ExprStream &os)
 Print the end-of-line. More...
 
ExprStream & CVC3::push (ExprStream &os)
 Set the indentation to the current position. More...
 
ExprStream & CVC3::pop (ExprStream &os)
 Restore the indentation. More...
 
ExprStream & CVC3::popSave (ExprStream &os)
 Remember the current indentation and pop to the previous position. More...
 
ExprStream & CVC3::pushRestore (ExprStream &os)
 Set the indentation to the position saved by popSave() More...
 
ExprStream & CVC3::reset (ExprStream &os)
 Reset the indentation to the default at this level. More...
 
ExprStream & CVC3::space (ExprStream &os)
 Insert a single white space separator. More...
 
ExprStream & CVC3::nodag (ExprStream &os)
 
ExprStream & CVC3::pushdag (ExprStream &os)
 
ExprStream & CVC3::popdag (ExprStream &os)
 

Detailed Description

Author: Sergey Berezin

Created: Mon Jun 16 10:59:18 2003


License to use, copy, modify, sell and/or distribute this software and its documentation for any purpose is hereby granted without royalty, subject to the terms and conditions defined in the LICENSE file provided with this distribution.


Declaration of class ExprStream, an output stream to pretty-print Expr in various nice output formats (presentation/internal/other languages, outo-indentation, bounded depth printing, DAG-ified printing, etc, etc...).

This stream is most useful for the decision procedure designer when writing a pretty-printer (Theory::print() method). ExprStream carries information about the current output language, and all the indentation and depth pretty-printing is done automagically by the operator<<().

Definition in file expr_stream.h.