diff options
author | Boris Kolpackov <boris@codesynthesis.com> | 2009-12-10 09:47:29 +0200 |
---|---|---|
committer | Boris Kolpackov <boris@codesynthesis.com> | 2009-12-10 09:47:29 +0200 |
commit | f8edfd22cb45b554a573d2722900196758e9e958 (patch) | |
tree | b2c800c8793f08be287a67ed72517f9cc2831fda /examples/file/driver.cxx | |
parent | eddefea6ea39e64e9eb5adf74a279a230a63cf5b (diff) |
Scanner-based parsing with support for element erasing
Also implement argv_file_scanner which provides support for reading command
line arguments from the argv array as well as files specified with command
line options. New examples: file. New tests: ctor, erase, file.
Diffstat (limited to 'examples/file/driver.cxx')
-rw-r--r-- | examples/file/driver.cxx | 36 |
1 files changed, 36 insertions, 0 deletions
diff --git a/examples/file/driver.cxx b/examples/file/driver.cxx new file mode 100644 index 0000000..df7a67c --- /dev/null +++ b/examples/file/driver.cxx @@ -0,0 +1,36 @@ +// file : examples/file/driver.cxx +// author : Boris Kolpackov <boris@codesynthesis.com> +// copyright : Copyright (c) 2009 Code Synthesis Tools CC +// license : MIT; see accompanying LICENSE file + +#include <iostream> +#include <iterator> +#include <algorithm> + +#include "options.hxx" + +using namespace std; + +int +main (int argc, char* argv[]) +{ + try + { + cli::argv_file_scanner s (argc, argv, "--options-file"); + options o (s); + + cout << "verbosity: " << o.verbose () << endl + << "values: "; + + copy (o.val ().begin (), + o.val ().end (), + ostream_iterator<int> (cout, " ")); + + cerr << endl; + } + catch (const cli::exception& e) + { + cerr << e << endl; + return 1; + } +} |