mirror of
https://github.com/SpaceVim/SpaceVim.git
synced 2025-02-03 21:40:05 +08:00
116 lines
1.7 KiB
Python
Vendored
116 lines
1.7 KiB
Python
Vendored
"""
|
|
PEP 526 introduced a new way of using type annotations on variables. It was
|
|
introduced in Python 3.6.
|
|
"""
|
|
# python >= 3.6
|
|
|
|
import typing
|
|
|
|
asdf = ''
|
|
asdf: int
|
|
# This is not necessarily correct, but for now this is ok (at least no error).
|
|
#? int()
|
|
asdf
|
|
|
|
|
|
direct: int = NOT_DEFINED
|
|
#? int()
|
|
direct
|
|
|
|
with_typing_module: typing.List[float] = NOT_DEFINED
|
|
#? float()
|
|
with_typing_module[0]
|
|
|
|
somelist = [1, 2, 3, "A", "A"]
|
|
element : int
|
|
for element in somelist:
|
|
#? int()
|
|
element
|
|
|
|
test_string: str = NOT_DEFINED
|
|
#? str()
|
|
test_string
|
|
|
|
|
|
char: str
|
|
for char in NOT_DEFINED:
|
|
#? str()
|
|
char
|
|
|
|
|
|
# -------------------------
|
|
# instance/class vars
|
|
# -------------------------
|
|
|
|
class Foo():
|
|
bar: int
|
|
baz: typing.ClassVar[str]
|
|
|
|
|
|
#?
|
|
Foo.bar
|
|
#? int()
|
|
Foo().bar
|
|
#? str()
|
|
Foo.baz
|
|
#? str()
|
|
Foo().baz
|
|
|
|
class VarClass:
|
|
var_instance1: int = ''
|
|
var_instance2: float
|
|
var_class1: typing.ClassVar[str] = 1
|
|
var_class2: typing.ClassVar[bytes]
|
|
|
|
def __init__(self):
|
|
#? int()
|
|
d.var_instance1
|
|
#? float()
|
|
d.var_instance2
|
|
#? str()
|
|
d.var_class1
|
|
#? bytes()
|
|
d.var_class2
|
|
#? []
|
|
d.int
|
|
#? ['var_class1', 'var_class2', 'var_instance1', 'var_instance2']
|
|
self.var_
|
|
|
|
|
|
#? ['var_class1', 'var_class2', 'var_instance1']
|
|
VarClass.var_
|
|
#? int()
|
|
VarClass.var_instance1
|
|
#?
|
|
VarClass.var_instance2
|
|
#? str()
|
|
VarClass.var_class1
|
|
#? bytes()
|
|
VarClass.var_class2
|
|
#? []
|
|
VarClass.int
|
|
|
|
d = VarClass()
|
|
#? ['var_class1', 'var_class2', 'var_instance1', 'var_instance2']
|
|
d.var_
|
|
#? int()
|
|
d.var_instance1
|
|
#? float()
|
|
d.var_instance2
|
|
#? str()
|
|
d.var_class1
|
|
#? bytes()
|
|
d.var_class2
|
|
#? []
|
|
d.int
|
|
|
|
|
|
|
|
import dataclasses
|
|
@dataclasses.dataclass
|
|
class DC:
|
|
name: int = 1
|
|
|
|
#? int()
|
|
DC().name
|