MarcoFalke
4490871ed7
Merge #12713 : Track negated options in the option parser
...
f7683cba7b Track negated arguments in the argument paser. (Evan Klitzke)
4f872b2450 Add additional tests for GetBoolArg() (Evan Klitzke)
Pull request description:
This change explicitly enable tracking negated options in the option parser. A negated option is one passed with a `-no` prefix. For example, `-nofoo` is the negated form of `-foo`. Negated options were originally added in the 0.6 release.
The change here allows code to explicitly distinguish between cases like `-nofoo` and `-foo=0`, which was not possible previously. The option parser does not have any changed semantics as a result of this change, and existing code will parse options just as it did before.
The motivation for this change is to provide a way to disable options that are otherwise not boolean options. For example, the `-debuglogfile` option is normally interpreted as a string, where the value is the log file name. With this change a user can pass in `-nodebuglogfile` and the code can see that it was explicitly negated, and use that to disable the log file.
This change originally split out from #12689 .
Tree-SHA512: cd5a7354eb03d2d402863c7b69e512cad382781d9b8f18c1ab104fc46d45a712530818d665203082da39572c8a42313c5be09306dc2a7227cdedb20ef7314823
2018-03-30 11:43:56 -04:00
..
2018-03-27 16:38:14 +02:00
2018-01-03 02:26:56 +09:00
2018-03-21 10:54:17 +01:00
2018-03-01 17:20:27 +08:00
2018-02-16 08:59:28 -05:00
2018-03-27 16:38:14 +02:00
2018-02-07 16:15:28 -05:00
2018-03-30 11:40:46 -04:00
2018-03-30 00:26:23 +02:00
2018-03-27 20:20:55 +02:00
2017-09-29 16:02:39 +02:00
2018-03-22 14:28:37 +01:00
2018-03-30 11:43:56 -04:00
2018-02-10 09:55:54 -05:00
2018-03-29 17:03:22 +02:00
2018-01-03 02:26:56 +09:00
2018-03-21 14:14:04 -07:00
2018-01-03 02:26:56 +09:00
2018-03-06 21:52:53 +01:00
2018-03-21 10:54:17 +01:00
2018-01-03 02:26:56 +09:00
2018-02-28 19:59:19 +09:00
2018-03-21 11:57:57 +08:00
2018-02-19 18:55:21 -08:00
2017-11-16 08:23:01 +13:00
2017-09-28 16:02:16 -07:00
2018-03-09 14:55:44 +01:00
2018-03-13 16:59:50 +01:00
2018-03-29 17:03:22 +02:00
2018-01-03 02:26:56 +09:00
2018-03-13 17:04:31 -07:00
2018-01-03 02:26:56 +09:00
2018-01-03 02:26:56 +09:00
2018-01-03 02:26:56 +09:00
2018-03-15 18:57:55 -05:00
2018-03-26 20:30:17 +02:00
2018-02-25 09:33:46 +08:00
2018-02-08 22:06:43 +01:00
2018-02-08 22:06:43 +01:00
2018-02-11 10:48:15 +01:00
2018-03-06 19:52:19 +00:00
2018-03-06 19:52:19 +00:00
2018-01-07 20:44:21 +00:00
2018-02-13 10:58:41 +01:00
2018-01-03 02:26:56 +09:00
2018-01-03 02:26:56 +09:00
2018-03-13 17:04:31 -07:00
2018-02-27 11:42:06 -08:00
2018-03-21 14:17:18 -07:00
2018-03-21 14:17:18 -07:00
2018-01-03 02:26:56 +09:00
2018-01-03 02:26:56 +09:00
2018-02-07 16:15:28 -05:00
2018-03-21 08:34:44 +02:00
2018-03-21 08:34:44 +02:00
2018-03-29 15:12:21 +02:00
2018-03-06 00:25:39 -05:00
2017-11-16 08:23:01 +13:00
2018-01-03 02:26:56 +09:00
2018-03-13 17:04:31 -07:00
2018-03-27 20:53:06 +02:00
2018-01-03 02:26:56 +09:00
2018-02-08 09:21:49 +01:00
2018-01-03 02:26:56 +09:00
2018-03-30 11:40:16 -04:00
2018-03-29 17:03:22 +02:00
2018-03-07 07:04:07 -08:00
2018-02-19 18:55:21 -08:00
2018-03-07 17:47:46 +01:00
2018-01-23 13:16:56 -05:00
2018-03-24 12:15:53 +00:00
2018-03-27 20:42:49 +02:00
2018-01-03 02:26:56 +09:00
2018-03-29 22:57:58 +02:00
2018-02-27 11:42:06 -08:00
2017-11-17 14:04:02 +01:00
2017-09-05 15:02:17 +12:00
2018-03-13 12:39:26 -04:00
2018-01-03 02:26:56 +09:00
2018-01-03 02:26:56 +09:00
2018-01-03 02:26:56 +09:00
2018-03-22 10:28:56 -04:00
2018-03-14 23:10:39 -07:00
2018-03-21 08:34:44 +02:00
2018-03-14 10:11:01 +01:00
2018-03-21 11:17:43 -04:00
2018-03-14 10:11:01 +01:00
2018-02-07 16:15:28 -05:00
2018-03-21 14:14:04 -07:00
2018-03-15 20:02:00 +01:00
2018-01-03 02:26:56 +09:00
2018-01-03 02:26:56 +09:00
2018-01-03 02:26:56 +09:00
2018-01-03 02:26:56 +09:00
2018-01-03 02:26:56 +09:00
2018-02-27 13:27:51 -08:00
2018-02-17 21:28:50 +11:00
2018-03-21 14:14:04 -07:00
2018-01-03 02:26:56 +09:00
2018-01-03 02:26:56 +09:00
2018-01-03 02:26:56 +09:00
2018-03-22 12:21:46 -04:00
2018-03-27 21:32:02 +02:00
2017-08-16 16:33:25 +02:00
2018-01-03 02:26:56 +09:00
2018-01-03 02:26:56 +09:00
2018-03-21 14:14:04 -07:00
2018-03-13 17:04:31 -07:00
2018-01-28 13:21:25 +01:00
2018-01-03 02:26:56 +09:00
2018-01-03 02:26:56 +09:00
2018-01-03 02:26:56 +09:00
2018-01-03 02:26:56 +09:00
2018-03-21 08:34:44 +02:00
2018-02-08 14:35:29 -05:00
2018-02-08 14:35:29 -05:00
2018-03-27 21:22:36 +02:00
2018-02-07 16:15:28 -05:00
2018-03-25 11:32:41 +03:00
2018-03-25 11:32:41 +03:00
2018-01-03 02:26:56 +09:00
2018-01-03 02:26:56 +09:00
2018-01-03 02:26:56 +09:00
2018-01-03 02:26:56 +09:00
2018-03-21 11:17:43 -04:00
2018-03-27 22:12:02 -07:00
2018-03-27 22:12:02 -07:00
2018-01-03 02:26:56 +09:00
2018-01-03 02:26:56 +09:00
2018-03-07 07:04:07 -08:00
2018-03-06 20:28:08 -08:00
2018-03-09 15:02:01 +01:00
2018-03-09 15:02:01 +01:00
2018-03-30 13:10:22 +02:00
2018-03-29 06:24:30 +02:00
2018-01-03 02:26:56 +09:00
2018-03-14 10:11:01 +01:00
2018-01-03 02:26:56 +09:00
2018-03-09 15:03:40 +01:00
2018-03-09 15:03:40 +01:00
2018-03-27 15:35:54 -04:00
2018-01-03 02:26:56 +09:00
2018-01-03 02:26:56 +09:00