options: Read cmdline flags into bool variables
commit84c49fd9099a2b70bf79d39bafba085390cf1bd2
authorToni Gundogdu <legatvs@gmail.com>
Wed, 9 Jan 2013 09:30:25 +0000 (9 11:30 +0200)
committerToni Gundogdu <legatvs@gmail.com>
Wed, 9 Jan 2013 12:36:07 +0000 (9 14:36 +0200)
tree269ab4c6b8a3e8a611554a0f4f2ea8c449ff551b
parent3c3b2086d54e4534f7079cf207051e30f713ac39
options: Read cmdline flags into bool variables

Read flags (or switches) into boolean variables instead of using
boost::program_options::variables_map for storage, making it possible to
read the same variables from the configuration file with the expected
results.

For example:
  $ grep < ~/.ccliverc cont
  continue = {1,true,0,false}  # boost::program_options would parse all
                               # four as "continue=1"

By forcing the use of "zero_tokens" and reading the value into a boolean
variable, we get the expected results:
  continue = {0,false}  # continue=0
  continue = {1,true}   # continue=1

Other:
  Add cc::opts (an instance of cc::options) as a global variable which
  may be accessed from other modules, making it possible to get away
  without having to write a more complete cc::flags class to be passed
  by reference along with boost::program_options::variables_map.

  Inline the cc::options::map function.

Signed-off-by: Toni Gundogdu <legatvs@gmail.com>
src/cc/options.cpp
src/cc/options.h