diff options
Diffstat (limited to 'absl/flags/_defines.pyi')
-rw-r--r-- | absl/flags/_defines.pyi | 39 |
1 files changed, 36 insertions, 3 deletions
diff --git a/absl/flags/_defines.pyi b/absl/flags/_defines.pyi index 1f482a2..9bc8067 100644 --- a/absl/flags/_defines.pyi +++ b/absl/flags/_defines.pyi @@ -576,7 +576,23 @@ def DEFINE_multi_enum( @overload def DEFINE_multi_enum_class( name: Text, - default: Union[None, Iterable[_ET], _ET, Text], + # This is separate from `Union[None, _ET, Text]` to avoid a Pytype issue + # inferring the return value to FlagHolder[List[Union[_ET, enum.Enum]]] + # when an iterable of concrete enum subclasses are used. + default: Iterable[_ET], + enum_class: Type[_ET], + help: Text, + flag_values: _flagvalues.FlagValues = ..., + module_name: Optional[Text] = ..., + *, + required: Literal[True], + **args: Any) -> _flagvalues.FlagHolder[List[_ET]]: + ... + +@overload +def DEFINE_multi_enum_class( + name: Text, + default: Union[None, _ET, Text], enum_class: Type[_ET], help: Text, flag_values: _flagvalues.FlagValues = ..., @@ -601,7 +617,10 @@ def DEFINE_multi_enum_class( @overload def DEFINE_multi_enum_class( name: Text, - default: Union[Iterable[_ET], _ET, Text], + # This is separate from `Union[None, _ET, Text]` to avoid a Pytype issue + # inferring the return value to FlagHolder[List[Union[_ET, enum.Enum]]] + # when an iterable of concrete enum subclasses are used. + default: Iterable[_ET], enum_class: Type[_ET], help: Text, flag_values: _flagvalues.FlagValues = ..., @@ -610,6 +629,17 @@ def DEFINE_multi_enum_class( **args: Any) -> _flagvalues.FlagHolder[List[_ET]]: ... +@overload +def DEFINE_multi_enum_class( + name: Text, + default: Union[_ET, Text], + enum_class: Type[_ET], + help: Text, + flag_values: _flagvalues.FlagValues = ..., + module_name: Optional[Text] = ..., + required: bool = ..., + **args: Any) -> _flagvalues.FlagHolder[List[_ET]]: + ... def DEFINE_alias( @@ -620,8 +650,11 @@ def DEFINE_alias( ... +def set_default(flag_holder: _flagvalues.FlagHolder[_T], value: _T) -> None: + ... + -def declare_key_flag(flag_name: Text, +def declare_key_flag(flag_name: Union[Text, _flagvalues.FlagHolder], flag_values: _flagvalues.FlagValues = ...) -> None: ... |