Boost logo

Boost :

From: JD (jean.daniel.michaud_at_[hidden])
Date: 2007-08-13 14:27:02


David Abrahams wrote:
> on Thu Aug 02 2007, JD <jean.daniel.michaud-AT-gmail.com> wrote:
>
>> Hi all,
>>
>> I wrote a little command line interpreter based on the program option
>> library by Vladimir Prus. You can find it here:
>> http://minilien.com/?bNPy1ECuWv.
>>
>> It's not a big thing but can help sometime.
>> You also have the subversion repository there:
>> http://code.google.com/p/clipo/
>>
>>
>> Let me know what you think.
>
> Hi JD,
>
> I don't think you can expect anyone here to crawl through your source
> code or open a zip file without first having some idea what your code
> does. I suggest posting some examples, right in your email message,
> and making the docs available online.
>

But they are... Just click on the link above and you have an example :)
And if load a web page is really too much, here is what you will find:

Example:

/////
namespace po = boost::program_options;

void handler(const std::vector<std::string> &parameters)
{
   for (std::vector<std::string>::const_iterator it = parameters.begin();
        it != parameters.end();
        ++it)
     std::cout << *it << std::endl;
}

void exit_(unsigned int code = 0)
{
   exit(code);
}

int main(int argc, char **argv)
{
   boost::cli::commands_description desc;
   desc.add_options()
     ("handler", po::value< std::vector<std::string>
>()->notifier(&handler)->multitoken())
     ("exit", po::value< unsigned int >()->notifier(&exit_))
     ;

   boost::cli::command_line_interpreter cli(desc, ">");
   cli.interpret(std::cin);
}
//////

Output:

>handler
error: required parameter is missing in 'handler'
>handler 1 2 3
1
2
3
>toto
error: unknown option toto
>exit 0
Press any key to continue . . .

JD


Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk