Platon Technologies
not logged in Login Registration
EnglishSlovak
open source software development celebrating 10 years of open source development! Friday, October 16, 2026

Diff for libcfg+/src/cfg+.c between version 1.16 and 1.17

version 1.16, 2001/12/09 15:07:37 version 1.17, 2001/12/10 21:01:48
Line 187  int main(int argc, char **argv)
Line 187  int main(int argc, char **argv)
   
   
         struct cfg_option options[] = {          struct cfg_option options[] = {
                 { "nice", 'n', "nice", CFG_INT, (void *) &o_nice, 0 },                  {"nice", 'n', "nice", CFG_INT, (void *) &o_nice, 0 },
                 { "verbose", 'v', "verbose", CFG_BOOLEAN + CFG_MULTI, (void *) &o_verbose, 0 },                  {"verbose", 'v', "verbose", CFG_BOOLEAN + CFG_MULTI, (void *) &o_verbose, 0 },
                 { "name", 'a', "name", CFG_STRING + CFG_MULTI_SEPARATED, (void *) &o_name, 0 },                  {"name", 'a', "name", CFG_STRING + CFG_MULTI_SEPARATED, (void *) &o_name, 0 },
                 { "config-file", 'f', NULL, CFG_STRING, (void *) &o_cfgfile, 0 },                  {"config-file", 'f', NULL, CFG_STRING, (void *) &o_cfgfile, 0 },
   
                 { "bool", 'b', "boolean", CFG_BOOLEAN, (void *) &o_boolean, 1 },                  {"bool", 'b', "boolean", CFG_BOOLEAN, (void *) &o_boolean, 1 },
                 { "int", 'i', "int", CFG_INT, (void *) &o_int, 0 },                  {"int", 'i', "int", CFG_INT, (void *) &o_int, 0 },
                 { "multi_int", 'I', "multi int", CFG_INT + CFG_MULTI_SEPARATED, (void *) &o_multi_int,0},                  {"multi_int", 'I', "multi int", CFG_INT + CFG_MULTI_SEPARATED, (void *) &o_multi_int,0},
                 { "uint", 'u', "unsigned int", CFG_UINT, (void *) &o_uint, 0 },                  {"uint", 'u', "unsigned int", CFG_UINT, (void *) &o_uint, 0 },
                 { "multi_uint", 'U', "multi unsigned int", CFG_UINT + CFG_MULTI,(void*)&o_multi_uint,0},                  {"multi_uint", 'U', "multi unsigned int", CFG_UINT + CFG_MULTI,(void*)&o_multi_uint,0},
                 { "long", 'l', "long", CFG_LONG, (void *) &o_long, 0 },                  {"long", 'l', "long", CFG_LONG, (void *) &o_long, 0 },
                 { "multi_long", 'L', "multi long", CFG_LONG + CFG_MULTI_SEPARATED,(void*)&o_multi_long,0},                  {"multi_long", 'L', "multi long", CFG_LONG + CFG_MULTI_SEPARATED,(void*)&o_multi_long,0},
                 { "ulong", 'o', "unsigned long", CFG_ULONG, (void *) &o_ulong, 0 },                  {"ulong", 'o', "unsigned long", CFG_ULONG, (void *) &o_ulong, 0 },
                 { "multi_ulong",'O',"multi unsigned long",CFG_ULONG + CFG_MULTI,(void*)&o_multi_ulong,0},                  {"multi_ulong",'O',"multi unsigned long",CFG_ULONG + CFG_MULTI,(void*)&o_multi_ulong,0},
                 { "float", 'f', "float", CFG_FLOAT, (void *) &o_float, 0 },                  {"float", 'f', "float", CFG_FLOAT, (void *) &o_float, 0 },
                 { "multi_float",'F',"multi float",CFG_FLOAT+CFG_MULTI_SEPARATED,(void*)&o_multi_float,0},                  {"multi_float",'F',"multi float",CFG_FLOAT+CFG_MULTI_SEPARATED,(void*)&o_multi_float,0},
                 { "double", 'd', "double", CFG_DOUBLE, (void *) &o_double, 0 },                  {"double", 'd', "double", CFG_DOUBLE, (void *) &o_double, 0 },
                 { "multi_double",'D',"mdouble",CFG_DOUBLE+CFG_MULTI_SEPARATED,(void*)&o_multi_double,0},                  {"multi_double",'D',"mdouble",CFG_DOUBLE+CFG_MULTI_SEPARATED,(void*)&o_multi_double,0},
                 { "string", 's', "string", CFG_STRING + CFG_MULTI, (void *) &o_string, 0 },                  {"string", 's', "string", CFG_STRING + CFG_MULTI, (void *) &o_string, 0 },
                 { NULL,'\0',"argv",CFG_STRING+CFG_MULTI_SEPARATED+CFG_LEFTOVER_ARGS,(void*)&o_leftover,0},                  {NULL,'\0',"argv",CFG_STRING+CFG_MULTI_SEPARATED+CFG_LEFTOVER_ARGS,(void*)&o_leftover,0},
                 CFG_END_OF_LIST                  CFG_END_OF_LIST
         };          };
   
         con = cfg_get_cmdline_context(argc, argv, options);          con = cfg_get_cmdline_context(argc, argv, options);
   
         cfg_set_context_flags(con, con->flags + CFG_ADVANCED_LEFTOVERS);          /* Deprecated and obsolote context flags initialization. */
           /* cfg_set_context_flags(con, con->flags + CFG_ADVANCED_LEFTOVERS); */
   
           /* This is powerful testing stuff :)
   
              printf("advanced leftovers: %d\n", cfg_get_context_flag(con, CFG_ADVANCED_LEFTOVERS));
              cfg_set_context_flag(con, CFG_ADVANCED_LEFTOVERS);
              cfg_set_context_flag(con, CFG_ADVANCED_LEFTOVERS);
              printf("advanced leftovers: %d\n", cfg_get_context_flag(con, CFG_ADVANCED_LEFTOVERS));
              cfg_clear_context_flag(con, CFG_ADVANCED_LEFTOVERS);
              printf("advanced leftovers: %d\n", cfg_get_context_flag(con, CFG_ADVANCED_LEFTOVERS));
              cfg_set_context_flag(con, CFG_ADVANCED_LEFTOVERS);
              printf("advanced leftovers: %d\n", cfg_get_context_flag(con, CFG_ADVANCED_LEFTOVERS));
            */
   
           cfg_set_context_flag(con, CFG_ADVANCED_LEFTOVERS);
   
         while ((ret = cfg_get_next_opt(con)) > 0) {          while ((ret = cfg_get_next_opt(con)) > 0) {
                 printf("ret = %d, opt = '%s', arg = '%s', idx = %d, argv[idx] = '%s'\n",                  printf("ret = %d, opt = '%s', arg = '%s', idx = %d, argv[idx] = '%s'\n",

Legend:
Removed from v.1.16  
changed lines
  Added in v.1.17

Platon Group <platon@platon.org> http://platon.org/
Copyright © 2002-2006 Platon Group
Site powered by Metafox CMS
Go to Top