DOTCONF++ library 0.0.4a review

Download
by rbytes.net on

DOTCONF++ library is a dotconf-like configuration file parser written in C++. dotconf++ is a dotconf like configuration file parse

License: LGPL (GNU Lesser General Public License)
File size: 0K
Developer: Aleksey Krivoshey
0 stars award from rbytes.net

DOTCONF++ library is a dotconf-like configuration file parser written in C++.

dotconf++ is a dotconf like configuration file parser written in C++. It supports macro substitution from the environment or from the file itself, config file inclusion, easy handling of XML like tags, checking for required tags, and more. The whole document (with all inclusions) is parsed into a useful tree structure that is easy to use in your program.

Here are some key features of "DOTCONFplusplus library":
Comments:

# some comment
; some comment
Multivalue parameters:
ParameterName value1 value2 value3 "value4 with spaces"
ParameterName1 = value11 value12 value13

Multiline parameters:

MultilineText id1 "Quick brown
fox jumps...
bla bla bla"
CustomLog /usr/local/apache-ssl/logs/ssl_request_log
"%t %h %{SSL_PROTOCOL}x %{SSL_CIPHER}x "%r" %b"

Macro substitution from environment or from config file, with default values if substitution not found:

LogFile ${TEMP_PATH:-"/tmp/default temp path"}
LogOptions ${PWD:-/tmp}/log_${USER}

Tags ( tags are normal parameters, but they become parent for all parameters between opening and closing tag):

< SectionTag allOnOneLine > onLineParameter=onLineValue < /SectionTag >
< SectionTag tagValue tagValue2 >
inTagParameter "disabled? # comment
< /SectionTag >
#nested tags
< SectionTag tagValue >
TagEnable #parameter without value
< SubSection SubsectionName >
subsectionParameterDisabled Yes;comment
subsectionParameter2Disabled No
< /SubSection >
< /SectionTag >

Quotes and line-terminators inside values:

Text = "this program is "dot conf-like"" "new line startsnhere"

Config file inclusion ( with recursion checks ):
DOTCONFPPIncludeFile ${PWD}/modules.conf

DOTCONF++ library 0.0.4a search tags