O
Oliver Schoenborn
Finally a packaged release of the iof library.
The iof library (iof.sf.net) provides formatted input (like scanf in C)
and output (like printf in C) using either functions or operators. It
improves on its predecessor (the "coutf" library at
http://noptrlib.sf.net/utils/coutf/) by adding formatted input,
exception safety of formatting, persistence (group formatting) and
operator based formatted I/O.
The library has been tested and used with g++ 3.4 and VC++ 7.1 in at
least one big project for formatted logging and messaging.
Latest can be downloaded from SourceForge
(http://sourceforge.net/project/showfiles.php?group_id=152971) or from
CVS (http://sourceforge.net/cvs/?group_id=152971).
For very small overhead (less than 10% slower than raw STL stream ops),
you get:
- all the advantages of stream output with printf conciseness
- stream format state exception safety
- explicit verification of chars for input, and easy use of skipping
- better parsing than raw input stream but without having to use
heavy-duty regexp-based parsing
- no build of lib necessary (all in headers)
Differences from boost::format:
- much faster
- provides functions for those who don't like the operator syntax
- simpler syntax for format markers
- formatted input too
- less restrictive (e.g. extra args allowed)
- support for dynamic stream formatting and format guards
More developments to come, such as support for wchar_t, format string
breakdown, etc. Sorry docs are still not complete.
Enjoy!
Oliver
The iof library (iof.sf.net) provides formatted input (like scanf in C)
and output (like printf in C) using either functions or operators. It
improves on its predecessor (the "coutf" library at
http://noptrlib.sf.net/utils/coutf/) by adding formatted input,
exception safety of formatting, persistence (group formatting) and
operator based formatted I/O.
The library has been tested and used with g++ 3.4 and VC++ 7.1 in at
least one big project for formatted logging and messaging.
Latest can be downloaded from SourceForge
(http://sourceforge.net/project/showfiles.php?group_id=152971) or from
CVS (http://sourceforge.net/cvs/?group_id=152971).
For very small overhead (less than 10% slower than raw STL stream ops),
you get:
- all the advantages of stream output with printf conciseness
- stream format state exception safety
- explicit verification of chars for input, and easy use of skipping
- better parsing than raw input stream but without having to use
heavy-duty regexp-based parsing
- no build of lib necessary (all in headers)
Differences from boost::format:
- much faster
- provides functions for those who don't like the operator syntax
- simpler syntax for format markers
- formatted input too
- less restrictive (e.g. extra args allowed)
- support for dynamic stream formatting and format guards
More developments to come, such as support for wchar_t, format string
breakdown, etc. Sorry docs are still not complete.
Enjoy!
Oliver