change behavior for boolean flags
authorWilliam Morgan <wmorgan-github@masanjin.net>
Sun, 12 Aug 2012 22:11:14 +0000 (15:11 -0700)
committerWilliam Morgan <wmorgan-github@masanjin.net>
Wed, 15 Aug 2012 04:39:24 +0000 (21:39 -0700)
commit4ee290fe5709425acb24519fe3e4ea96857e231b
tree2aede492ce32e5e76c2664a62d7e591b45467673
parentc09a974a5670c573375bc89e076a1a999022cd3e
change behavior for boolean flags

With this change, specifying --x on the commandline sets the value of
option :x to true. Specifying --no-x sets the value of option :x to
false. Not specifying either on the commandline sets the value of option
:x to its default.

(Previously, using --x would set the value of :x to the opposite of its
default value, and not specifying it would set :x to the default value,
and using --no-x would result in an error.)

There is one special case to this, which is that an option called :no_x
gets the inverted behavior of what the option :x would have.
Specifically, specifying --no-x on the commandline will set the value of
:no_x to true, specifying --x will set the value of :no_x to false, and
not specifying either will set the value of :no_x to its default.
lib/trollop.rb
test/test_trollop.rb