Boost logo

Boost :

From: Daryle Walker (darylew_at_[hidden])
Date: 2003-11-28 02:55:20


I've done more work on "more_io" at the Sandbox and uploaded a copy on the
vault at <http://groups.yahoo.com/group/boost/files/more_io_3.zip>. Here's
the changes from the revised version done at the end of the last review
(called "more_io_revised.zip" in the vault):

* Revised the license text to match the new license
* Added three new stream (buffer) types
    1. Null-streams (sends output characters to oblivion, has no input
characters)
    2. Pointer-based streams (takes an external buffer, uses the default
streambuf routines)
    3. Pointer-to-constant streams (like [2], but only supports the
read-only operations; in the same header file as [2])
  The pointer-based streams are notable since they allow a character buffer
that is larger than half the available memory be used (because of no
copying). They also complete the legacy of std::strstreambuf (since
std::basic_stringbuf only carries over the dynamic portion of the old
character buffer stream class).
* Added three I/O manipulators
    1. Function "resetios" (changes all the non-locale attributes to their
default values)
    2. Function-object "multi_newl" (outputs multiple new-lines at once,
ending with an optional flush)
    3. Function-object "multi_skipl" (skips several input lines at once)
  The function-object manipulators can be used as inline temporary objects
with operators << or >>, or created in advance and applied on the stream
with the stream operators or applied to the stream with operator ().
* (Changed the implementation of the streambuf-wrapping classes to use a
common base class [again, but less obtuse].)
* (Enhanced the manipulator test file with a stream-buffer that records its
flushes.)

-- 
Daryle Walker
Mac, Internet, and Video Game Junkie
darylew AT hotmail DOT com

Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk