* Licence details can be found in the file COPYING.
*
* Full author contact details are available in file CREDITS.
+ *
+ * Inspired by Dietmar Kuehl's prefix iostreams found on
+ * http://www.inf.uni-konstanz.de/~kuehl/
*/
#include <config.h>
class TexStreamBuffer : public TexStreamBase
{
public:
- TexStreamBuffer(TexStreamBase * sbuf, TexRow * texrow);
+ TexStreamBuffer(TexStreamBase * sbuf, TexRow * texrow);
int line() const { return line_; }
int column() const { return column_; }
protected:
- int overflow(int);
- int sync();
+ int overflow(int);
+ int sync();
private:
- TexStreamBase * sbuf_;
+ TexStreamBase * sbuf_;
TexRow * texrow_;
int column_;
int line_;
TexStreamBuffer::TexStreamBuffer(TexStreamBase *sb, TexRow * texrow)
: sbuf_(sb), texrow_(texrow), line_(0)
{
- setp(0, 0);
- setg(0, 0, 0);
+ setp(0, 0);
+ setg(0, 0, 0);
}
int TexStreamBuffer::overflow(int c)
int TexStreamBuffer::sync()
{
- sbuf_->pubsync();
- return 0;
+ sbuf_->pubsync();
+ return 0;
}
int main(int argc, char *argv[])
{
- TexStream out(std::cout.rdbuf());
+ TexStream out(cout.rdbuf());
char c;
- while (std::cin) {
- if (std::cin.get(c))
+ while (cin) {
+ if (cin.get(c))
out.put(c);
}
- std::cout << "line count: " << out.line() << std::endl;
+ cout << "line count: " << out.line() << endl;
- return 0;
+ return 0;
}
#endif