blob: 238e090a7196862d6477880fb626e0c6cfd92c8b [file] [log] [blame]
[/
/ Copyright (c) 2008 Marcin Kalicinski (kalita <at> poczta dot onet dot pl)
/ Copyright (c) 2009 Sebastian Redl (sebastian dot redl <at> getdesigned dot at)
/
/ Distributed under the Boost Software License, Version 1.0. (See accompanying
/ file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
/]
[section INFO Parser]
The INFO format was created specifically for the property tree library. It
provides a simple, efficient format that can be used to serialize property
trees that are otherwise only stored in memory. It can also be used for any
other purpose, although the lack of widespread existing use may prove to be an
impediment.
INFO provides several features that make it familiar to C++ programmers and
efficient for medium-sized datasets, especially those used for test input. It
supports C-style character escapes, nesting via curly braces, and file inclusion
via #include.
INFO is also used for visualization of property trees in this documentation.
A typical INFO file might look like this:
key1 value1
key2
{
key3 value3
{
key4 "value4 with spaces"
}
key5 value5
}
Here's a more complicated file demonstrating all of INFO's features:
; A comment
key1 value1 ; Another comment
key2 "value with special characters in it {};#\n\t\"\0"
{
subkey "value split "\
"over three"\
"lines"
{
a_key_without_value ""
"a key with special characters in it {};#\n\t\"\0" ""
"" value ; Empty key with a value
"" "" ; Empty key with empty value!
}
}
#include "file.info" ; included file
INFO round-trips except for the loss of comments and include directives.
[endsect] [/info_parser]