Python typing.UnionMeta() Examples
The following are 3
code examples of typing.UnionMeta().
You can vote up the ones you like or vote down the ones you don't like,
and go to the original project or source file by following the links above each example.
You may also want to check out all available functions/classes of the module
typing
, or try the search function
.
Example #1
Source File: overloading.py From overloading.py with MIT License | 6 votes |
def type_cmp(t1, t2): if t1 is AnyType and t2 is not AnyType: return False if t2 is AnyType and t1 is not AnyType: return False if t1 == t2: return t1 if typing: if isinstance(t1, typing.UnionMeta) and isinstance(t2, typing.UnionMeta): common = t1.__union_set_params__ & t2.__union_set_params__ if common: return next(iter(common)) elif isinstance(t1, typing.UnionMeta) and t2 in t1.__union_params__: return t2 elif isinstance(t2, typing.UnionMeta) and t1 in t2.__union_params__: return t1 return False
Example #2
Source File: command.py From qutebrowser with GNU General Public License v3.0 | 5 votes |
def _get_param_value(self, param): """Get the converted value for an inspect.Parameter.""" value = getattr(self.namespace, param.name) typ = self._get_type(param) if isinstance(typ, tuple): raise TypeError("{}: Legacy tuple type annotation!".format( self.name)) if hasattr(typing, 'UnionMeta'): # Python 3.5.2 # pylint: disable=no-member,useless-suppression is_union = isinstance( typ, typing.UnionMeta) # type: ignore[attr-defined] else: is_union = getattr(typ, '__origin__', None) is typing.Union if is_union: # this is... slightly evil, I know try: types = list(typ.__args__) except AttributeError: # Python 3.5.2 types = list(typ.__union_params__) # pylint: enable=no-member,useless-suppression if param.default is not inspect.Parameter.empty: types.append(type(param.default)) choices = self.get_arg_info(param).choices value = argparser.multitype_conv(param, types, value, str_choices=choices) elif typ is str: choices = self.get_arg_info(param).choices value = argparser.type_conv(param, typ, value, str_choices=choices) elif typ is bool: # no type conversion for flags assert isinstance(value, bool) elif typ is None: pass else: value = argparser.type_conv(param, typ, value) return value
Example #3
Source File: type_util.py From pytypes with Apache License 2.0 | 5 votes |
def is_Union(tp): """Python version independent check if a type is typing.Union. Tested with CPython 2.7, 3.5, 3.6 and Jython 2.7.1. """ if tp is Union: return True try: # Python 3.6 return tp.__origin__ is Union except AttributeError: try: return isinstance(tp, typing.UnionMeta) except AttributeError: return False