|
From: | Papp Gyozo (VBuster) |
Subject: | Re: [help-gengetopt] mutually exclusive group of options |
Date: | Thu, 14 Jun 2007 12:47:03 +0200 |
> What would happen if such a base option (btw how do you call it when > other options depend on it?) may not be required if it had a default > value? (Or enabled/switched on by default like "flag on") I see in dependant_option.h_skel which condition is needed to modify/extend: if (args_info->@address@hidden && ! args_info->@address@hidden) { ... } But I don't know how. (It was a long time ago when I made changes to the gengetopt source...) So here is my theory as a pseudo code: if (args_info->@address@hidden && !(args_info->@address@hidden #if @dep_option@ is flag || args_info->@address@hidden #elif @dep_option@ has arg || !args_info->@address@hidden #endif )) { ... } AFAIR gengen supports some kind of #if .. #endif contructs. > defgroup "mode" > groupoption "init" default="..." group="mode" > groupoption "attach" group="mode" > > option "dir1" dependon="init" > option "dir2" dependon="init" > > option "attach-arg" dependon="attach" > > This way all below are valid: > > scan --dir1 > scan --dir2 > scan --dir1 --dir2 > scan --init --dir1 --dir2 > etc. > > but these generate errors in parsing phase: > > scan --init --attach-arg > scan --attach --dir1 > scan --attach --dir2 >
[Prev in Thread] | Current Thread | [Next in Thread] |