Cutelee
6.1.0
|
The OutputStream class is used to render templates to a QTextStream. More...
#include <cutelee/outputstream.h>
Public Member Functions | |
OutputStream () | |
OutputStream (QTextStream *stream) | |
virtual | ~OutputStream () |
virtual std::shared_ptr< OutputStream > | clone (QTextStream *stream) const |
QString | conditionalEscape (const Cutelee::SafeString &input) const |
virtual QString | escape (const QString &input) const |
QString | escape (const SafeString &input) const |
OutputStream & | operator<< (const QString &input) |
OutputStream & | operator<< (const SafeString &input) |
OutputStream & | operator<< (QTextStream *stream) |
A OutputStream instance may be passed to the render method of a Template to render the template to a stream.
The OutputStream is used to escape the content streamed to it. By default, the escaping is html escaping, converting "&" to "&" for example. If generating non-html output, the escape method may be overriden to perform a different escaping, or non at all.
If overriding the escape method, the clone method must also be overriden to return an OutputStream with the same escaping behaviour.
Definition at line 80 of file outputstream.h.
OutputStream::OutputStream | ( | ) |
Creates a null OutputStream. Content streamed to this OutputStream is sent to /dev/null
Definition at line 27 of file outputstream.cpp.
Referenced by clone().
|
explicit |
Creates an OutputStream which will stream content to stream
with appropriate escaping.
Definition at line 29 of file outputstream.cpp.
|
virtual |
Destructor
Definition at line 31 of file outputstream.cpp.
|
virtual |
Returns a cloned OutputStream with the same filtering behaviour.
Reimplemented in JSOutputStream, and NoEscapeOutputStream.
Definition at line 71 of file outputstream.cpp.
References OutputStream().
Referenced by BlockNode::getSuper(), CycleNode::render(), FilterNode::render(), IfChangedNode::render(), and SpacelessNode::render().
QString OutputStream::conditionalEscape | ( | const Cutelee::SafeString & | input | ) | const |
Returns after
escaping it, unless input
is "safe", in which case, input
is returned unmodified.
Definition at line 64 of file outputstream.cpp.
References escape(), Cutelee::SafeString::get(), and Cutelee::SafeString::isSafe().
Returns an escaped version of input
. Does not write anything to the stream.
Reimplemented in JSOutputStream, and NoEscapeOutputStream.
Definition at line 33 of file outputstream.cpp.
Referenced by conditionalEscape(), escape(), and operator<<().
QString OutputStream::escape | ( | const SafeString & | input | ) | const |
Returns an escaped version of input
. Does not write anything to the stream.
Definition at line 59 of file outputstream.cpp.
References escape(), and Cutelee::SafeString::get().
OutputStream & OutputStream::operator<< | ( | const QString & | input | ) |
Writes input
to the stream after escaping it.
Definition at line 76 of file outputstream.cpp.
OutputStream & OutputStream::operator<< | ( | const SafeString & | input | ) |
Writes input
to the stream after escaping it if necessary.
Definition at line 83 of file outputstream.cpp.
References escape(), Cutelee::SafeString::get(), and Cutelee::SafeString::needsEscape().
OutputStream & OutputStream::operator<< | ( | QTextStream * | stream | ) |
Reads the content of stream
and writes it unmodified to the result stream.
Definition at line 100 of file outputstream.cpp.