Collaboration diagram for Manipulators:
|
Set the indentation to the current position.
Definition at line 319 of file expr_stream.cpp. References CVCL::ExprStream::pushIndent(). Referenced by CVCL::TheoryUF::print(), CVCL::TheorySimulate::print(), CVCL::TheoryRecords::print(), CVCL::TheoryQuant::print(), CVCL::TheoryDatatype::print(), TheoryCore::print(), CVCL::TheoryBitvector::print(), CVCL::TheoryArray::print(), CVCL::TheoryArith::print(), CVCL::Expr::print(), CVCL::Expr::printAST(), CVCL::TheoryArith::printLhs(), CVCL::TheoryArith::printMinus(), CVCL::TheoryArith::printPlus(), CVCL::TheoryArith::printRational(), and CVCL::space(). |
|
Restore the indentation to the previous position.
Definition at line 322 of file expr_stream.cpp. References CVCL::ExprStream::popIndent(). Referenced by CVCL::TheoryUF::print(), CVCL::TheorySimulate::print(), CVCL::TheoryRecords::print(), CVCL::TheoryQuant::print(), TheoryCore::print(), CVCL::TheoryBitvector::print(), CVCL::TheoryArray::print(), CVCL::Expr::print(), CVCL::Expr::printAST(), and CVCL::space(). |
|
Remember the current indentation and pop to the previous position. There is only one register to save the previous position. If you use popSave() more than once, only the latest position can be restored with pushRestore(). Definition at line 327 of file expr_stream.cpp. References CVCL::ExprStream::d_indentReg, CVCL::ExprStream::d_indentStack, and CVCL::ExprStream::popIndent(). Referenced by TheoryCore::print(). |
|
Set the indentation to the position saved by popSave(). There is only one register to save the previous position. Using pushRestore() several times will set intendation to the same position. Definition at line 336 of file expr_stream.cpp. References CVCL::ExprStream::d_indentReg, and CVCL::ExprStream::pushIndent(). Referenced by TheoryCore::print(). |
|
Reset the indentation to the default at this level.
Definition at line 341 of file expr_stream.cpp. References CVCL::ExprStream::resetIndent(). |
|
Insert a single white space separator. It is preferred to use 'space' rather than a string of spaces (" ") because ExprStream needs to delete extra white space if it decides to end the line. If you use strings for spaces, you'll mess up the indentation. Definition at line 347 of file expr_stream.cpp. References CVCL::ExprStream::d_beginningOfLine, CVCL::pop(), and CVCL::push(). Referenced by CVCL::TheoryUF::print(), CVCL::TheorySimulate::print(), CVCL::TheoryRecords::print(), CVCL::TheoryQuant::print(), CVCL::TheoryDatatype::print(), TheoryCore::print(), CVCL::TheoryBitvector::print(), CVCL::TheoryArray::print(), CVCL::TheoryArith::print(), CVCL::Expr::print(), CVCL::Expr::printAST(), CVCL::TheoryArith::printLhs(), CVCL::TheoryArith::printMinus(), CVCL::TheoryArith::printPlus(), and CVCL::TheoryArith::printRational(). |
|
DAG-printing will resume for the children of the node. This is useful when printing definitions in the header of a DAGified LET expressions: defs have names, but must be printed expanded. Definition at line 353 of file expr_stream.cpp. References CVCL::ExprStream::d_nodag. Referenced by TheoryCore::print(), and CVCL::Expr::printAST(). |
|
For some constructs with bound variables (notably, quantifiers), shared subexpressions are not computed, because they cannot be defined outside the scope of bound variables. If this manipulator is applied before an expression within the scope of bound vars, these internal subexpressions will then be computed. Definition at line 358 of file expr_stream.cpp. References CVCL::ExprStream::pushDag(). Referenced by CVCL::TheoryUF::print(), CVCL::TheoryQuant::print(), and CVCL::TheoryArray::print(). |
|
Similar to push/pop, shared subexpressions are automatically deleted upon a return from a recursive call, so popdag is not necessary after a pushdag in theory-specific print() functions. Also, you cannot pop more than you pushed an the current recursion level. Definition at line 360 of file expr_stream.cpp. References CVCL::ExprStream::popDag(). Referenced by CVCL::TheoryUF::print(), CVCL::TheoryQuant::print(), and CVCL::TheoryArray::print(). |
|