Fix some bad three-state logic in thrift_linter.
Review Request #3621 - Created March 28, 2016 and submitted
It was relying on a default of None in a boolean option
to detect if the option was explicitly provided or not.
But we never want boolean options to be None, as three
state logic is pointlessly complicated (and a pending
change enforces this).
This change replaces that logic with a proper check.
CI passed here: https://travis-ci.org/pantsbuild/pants/builds/118877858
Could you add a test for this? It looks like there isn't a covering test right now.
Also, should get_rank and the RankedValue enums be public APIs? This is the first use outside of the options code, apart from a hack in export. But, I feel like being able to determine where an option value came from would be a valuable thing to have as a public API. Just a thought.