Projects / FastFormat


FastFormat is a C/C++ output and formatting library whose design parameters are complete type-safety, efficiency, genericity, and extensibility. It is simple to use and extend, highly portable (to any platform or compiler), and it upholds the C tradition of you only pay for what you use. FastFormat supports output and formatting of statements of arbitrary complexity, consisting of heterogeneous types. FastFormat writes to output "sinks", which can be of arbitrary type.

Operating Systems

Recent releases

  •  07 Aug 2012 09:37

    Release Notes: Forward-compatible changes were made to various inserters and shims to use new facilities in (the imminent) STLSoft 1.10. WindowsMessageBox sinks now elicit captions from the top-level parent when the caller specifies no caption. fastformat/sinks/iostream.hpp was added. The shorthand header includes a sink for std::ostream and standard header . fastformat/sinks/stlsoft/FILE_stream.hpp was added, which enables formatting to STLSoft's FILE_stream+thread_shareable_FILE_stream. An alias fastformat::ch was added for the fastformat::character inserter (fastformat/inserters/ch.hpp). shwild 0.9.20 and xTests 0.16.6 are bundled, and STLSoft 1.9.115 is required.

    •  27 Feb 2012 10:32

      Release Notes: This release changes the manner in which integer string forms is evaluated (now in terms of STLSoft's integral_printf_traits<>), to simplify definitions and fix a defect (found on I32LP64 systems). It adds a makefile for GCC 4.7. It adds fastformat.core.vcxproj (VC++ 10). It changes core source files to include new src/ximpl_core.hpp. It adds various unit/component tests. It bundles shwild 0.9.20 and xTests 0.16.5; and depends on STLSoft 1.9.112.

      •  11 Dec 2010 08:09

        Release Notes: This release adds three new inserters: fastformat::character and overloads of fastformat::to_i() for LARGE_INTEGER and ULARGE_INTEGER. A HOW_YOU_CAN_HELP.txt file was added to the distribution, along with a new example (example.sink.c_string) and a large number of trivial/minor renaming of internal components to aid consistency.

        •  29 Nov 2010 07:38

          Release Notes: fastformat/fastformat.hpp now includes fastformat/sinks/ostream.hpp by default, unless FASTFORMAT_LEAN_AND_MEAN is specified. A new example, example.pad.hash, was added. Finally, the FastFormat headers now require STLSoft 1.9.104, which is needed for improved compatibility with some compilers.

          •  11 Nov 2010 11:51

            Release Notes: This version includes some minor fixes and a new example program illustrating fastformat::flush(). It depends on STLSoft 1.9.102.


            Project Spotlight


            A Fluent OpenStack client API for Java.


            Project Spotlight

            TurnKey TWiki Appliance

            A TWiki appliance that is easy to use and lightweight.