| 35 | person some_person; |
| 36 | std::vector<person> some_person_list; |
| 37 | config() { |
| 38 | // Global options. |
| 39 | opt_group{custom_options_, "global"} |
| 40 | .add(some_string, "some-string,s", "some string") |
| 41 | .add(some_int, "some-int,i", "some integer") |
| 42 | .add(some_string_list, "some-string-list,l", "some string list") |
| 43 | .add(some_person, "some-person,p", "some person") |
| 44 | .add(some_person_list, "some-person-list,P", "some person list"); |
| 45 | // Options for group "foo". |
| 46 | opt_group{custom_options_, "foo"} |
| 47 | .add<int>("bar,b", "some integer") |
| 48 | .add<std::string>("baz,z", "some string"); |
| 49 | // Options for group "my-app" (my-app may be omitted from the command line). |
| 50 | opt_group{custom_options_, "?my-app"} |
| 51 | .add<int>("option-1,1,OPT1", "some integer") |
| 52 | .add<std::string>("option-2,2", "some string"); |
| 53 | } |
| 54 | |
| 55 | settings dump_content() const override { |
| 56 | auto result = super::dump_content(); |