def LongFlag( self, long_name, # type: str arg_type=None, # type: Union[List[str], None, int] default=None, # type: Optional[Any] help=None, # type: Optional[str] ): # type: (...) -> None """ --rcfile """ assert long_name.startswith('--'), long_name name = long_name[2:] typ = _FlagType(arg_type) if arg_type is None: self.actions_long[name] = args.SetToTrue(name) else: self.actions_long[name] = _MakeAction(arg_type, name) attr_name = name.replace('-', '_') if self.typed: self.defaults[attr_name] = _Default(arg_type, arg_default=default) #log('%s DEFAULT %s', attr_name, self.defaults[attr_name]) else: self.defaults[attr_name] = args.PyToValue(default) self.fields[attr_name] = typ
def ShortFlag(self, short_name, arg_type=None, default=None, quit_parsing_flags=False, help=None): # type: (str, int, Optional[Any], bool, Optional[str]) -> None """ -c """ assert short_name.startswith('-'), short_name assert len(short_name) == 2, short_name char = short_name[1] typ = _FlagType(arg_type) if arg_type is None: assert quit_parsing_flags == False self.actions_short[char] = args.SetToTrue(char) else: self.actions_short[char] = _MakeAction( arg_type, char, quit_parsing_flags=quit_parsing_flags) if self.typed: self.defaults[char] = _Default(arg_type, arg_default=default) else: self.defaults[char] = args.PyToValue(default) self.fields[char] = typ
def ShortFlag(self, short_name, arg_type=None, long_name=None, help=None): # type: (str, Optional[int], Optional[str], Optional[str]) -> None """ This is very similar to ShortFlag for FlagSpecAndMore, except we have separate arity0 and arity1 dicts. """ assert short_name.startswith('-'), short_name assert len(short_name) == 2, short_name typ = _FlagType(arg_type) char = short_name[1] # Hack for read -0. Make it a valid variable name if char == '0': char = 'Z' if arg_type is None: self.arity0.append(char) else: self.arity1[char] = _MakeAction(arg_type, char) if long_name is not None: name = long_name[2:] # key for parsing if arg_type is None: self.actions_long[name] = args.SetToTrue(char) else: self.actions_long[name] = _MakeAction(arg_type, char) self.defaults[char] = _Default(arg_type) self.fields[char] = typ
def LongFlag( self, long_name, # type: str arg_type=None, # type: Union[List[str], None, int] default=None, # type: Optional[Any] help=None, # type: Optional[str] ): # type: (...) -> None """ --rcfile """ assert long_name.startswith('--'), long_name # TODO: Move this to runtime? So you don't have duplicate flag and key name = long_name[2:] if arg_type is None: typ = flag_type.Bool() # type: flag_type_t self.actions_long[long_name] = args.SetToTrue(name) else: typ = _FlagType(arg_type) self.actions_long[long_name] = args.SetToArgAction(name, typ) attr_name = name.replace('-', '_') if self.typed: self.defaults[attr_name] = _Default(arg_type, arg_default=default) #from core.pyerror import log #log('%s DEFAULT %s', attr_name, self.defaults[attr_name]) else: self.defaults[attr_name] = args.PyToValue(default) self.fields[attr_name] = typ
def LongFlag(self, long_name, arg_type=None, help=None): # type: (str, Optional[int], Optional[str]) -> None typ = _FlagType(arg_type) name = long_name[2:] # key for parsing if arg_type is None: self.actions_long[name] = args.SetToTrue(name) else: self.actions_long[name] = _MakeAction(arg_type, name) self.defaults[name] = _Default(arg_type) self.fields[name] = typ
def LongFlag( self, long_name, # type: str arg_type=None, # type: Union[List[str], None, int] default=None, # type: Optional[Any] help=None, # type: Optional[str] ): # type: (...) -> None """ --rcfile """ assert long_name.startswith('--'), long_name name = long_name[2:] if arg_type is None: self.actions_long[long_name] = args.SetToTrue(name) else: self.actions_long[long_name] = args.SetToArg( name, _FlagType(arg_type)) self.defaults[name] = args.PyToValue(default)