Subject: Re: [boost] [log] init methods and named parameters
From: Andrey Semashev (andrey.semashev_at_[hidden])
Date: 2010-03-05 10:34:36


On 03/05/2010 04:37 PM, Christoph Heindl wrote:
> On Sun, Feb 28, 2010 at 11:14 AM, Andrey Semashev
> <andrey.semashev_at_[hidden]> wrote:
>>
>>> And now for my latest documentation hiccup: init_from_stream and
>>> init_from_settings both look promising. I pull up the docs and
>>> take a look at each. I follow the basic_settings link. I poke around
>>> some more..... and now I'm getting frustrated again. Where do I
>>> find list of possible settings? Why isn't there a link in the docs
>>> to give me a hint of where to go?
>>
>> http://tinyurl.com/ybxzlec
>>
>> All parameters are described in tables, with an example in the end.
>
>> From skimming the implementation I saw that you implemented parsing the
> configuration files yourself. Without knowing your code/requirements in detail,
> I wondered if the initialize by settings functionality couldn't be
> implemented by reusing
> boost.program_options [1] and therby reducing the amount of code to
> maintain in boost.log?

I don't think so, from my knowledge of Boost.ProgramOptions. The problem
is that in order to employ Boost.ProgramOptions I'd have to describe all
options I expect in the file. IOW, the set of parameters is fixed. The
current parser in Boost.Log, on the other hand, parses all options given
and then acts accordingly. For example, a user may specify different
sets of sinks (represented with sections in the settings file), and the
library should register the sinks as specified in the file.