Option value tracking should refer to the option definitions, not just track option name.

UnparsedOptionValueDescription and OptionValueDescription both had redundant information about options, since they tracked options by their names, and not their definition. Remove the redundancy.

For getEffectiveOptions, the old behavior was relying on the fact that all options were given allowmulitple=false, which was wrong, so stop passing in the default value where it would get confused with values that have been created and tracked by the options parser. Instead, passing value=null is the way to indicate that an option is unset.

RELNOTES: None.
PiperOrigin-RevId: 168038067
GitOrigin-RevId: 95c1ee3261c6cd2263a954dc45611248ca4d5ce7
Change-Id: I2e9c6fd2580fcdc3eec2795d8b9c0d95c05905b4
2 files changed
tree: 5fcccfd4b757897841798e9f6df446eee1e54305
  1. java/