d0aab9212a
fuzz / fuzz (3.11) (push) Failing after 1s
fuzz / fuzz (3.12) (push) Failing after 1s
build and publish / sdist + pure wheel (push) Failing after 0s
diff-shades / analysis / base / ${{ matrix.mode }} (push) Has been skipped
docs / docs (ubuntu-latest) (push) Failing after 2s
fuzz / fuzz (3.10) (push) Failing after 1s
fuzz / fuzz (3.14) (push) Failing after 0s
lint and format / lint (push) Failing after 1s
diff-shades / configure (push) Failing after 1s
docker / build (linux/amd64) (push) Has been skipped
diff-shades / analysis / target / ${{ matrix.mode }} (push) Has been skipped
fuzz / fuzz (3.13) (push) Failing after 0s
build and publish / generate wheels matrix (push) Failing after 0s
test release tool / test-release-tool (ubuntu-latest, 3.13) (push) Failing after 1s
build and publish / mypyc wheels ${{ matrix.only }} (push) Has been skipped
test / test (ubuntu-latest, 3.10) (push) Failing after 0s
test / test (ubuntu-latest, 3.11) (push) Failing after 1s
test / test (ubuntu-latest, 3.13) (push) Failing after 0s
test / test (ubuntu-latest, pypy3.11-v7.3.22) (push) Failing after 1s
test / test (ubuntu-latest, 3.15) (push) Failing after 1s
test release tool / test-release-tool (ubuntu-latest, 3.15) (push) Failing after 0s
zizmor / zizmor (push) Failing after 0s
test release tool / test-release-tool (ubuntu-latest, 3.12) (push) Failing after 4s
test release tool / test-release-tool (ubuntu-latest, 3.14) (push) Failing after 3s
test / uvloop (ubuntu-latest) (push) Failing after 1s
test / test (ubuntu-latest, 3.14) (push) Failing after 1s
test / test (ubuntu-latest, 3.12.10) (push) Failing after 5s
docker / build (linux/arm64) (push) Has been cancelled
docker / push (push) Has been cancelled
docs / docs (windows-latest) (push) Has been cancelled
test release tool / test-release-tool (windows-latest, 3.14) (push) Has been cancelled
test release tool / test-release-tool (windows-latest, 3.15) (push) Has been cancelled
test release tool / test-release-tool (macOS-latest, 3.12) (push) Has been cancelled
test release tool / test-release-tool (macOS-latest, 3.13) (push) Has been cancelled
test release tool / test-release-tool (macOS-latest, 3.14) (push) Has been cancelled
test release tool / test-release-tool (macOS-latest, 3.15) (push) Has been cancelled
test release tool / test-release-tool (windows-latest, 3.12) (push) Has been cancelled
test release tool / test-release-tool (windows-latest, 3.13) (push) Has been cancelled
test / test (macOS-latest, 3.11) (push) Has been cancelled
test / test (macOS-latest, 3.12.10) (push) Has been cancelled
test / test (macOS-latest, 3.13) (push) Has been cancelled
test / test (macOS-latest, 3.14) (push) Has been cancelled
test / test (macOS-latest, 3.15) (push) Has been cancelled
test / test (macOS-latest, pypy3.11-v7.3.22) (push) Has been cancelled
test / test (windows-11-arm, 3.11) (push) Has been cancelled
test / test (windows-11-arm, 3.12.10) (push) Has been cancelled
test / test (windows-11-arm, 3.13) (push) Has been cancelled
test / test (macOS-latest, 3.10) (push) Has been cancelled
test / coveralls-finish (push) Has been cancelled
test / uvloop (macOS-latest) (push) Has been cancelled
test / uvloop (windows-11-arm) (push) Has been cancelled
test / uvloop (windows-latest) (push) Has been cancelled
test / test (windows-11-arm, 3.14) (push) Has been cancelled
test / test (windows-11-arm, 3.15) (push) Has been cancelled
test / test (windows-latest, 3.10) (push) Has been cancelled
test / test (windows-latest, 3.11) (push) Has been cancelled
test / test (windows-latest, 3.12.10) (push) Has been cancelled
test / test (windows-latest, 3.13) (push) Has been cancelled
test / test (windows-latest, 3.14) (push) Has been cancelled
test / test (windows-latest, 3.15) (push) Has been cancelled
test / test (windows-latest, pypy3.11-v7.3.22) (push) Has been cancelled
diff-shades / compare / ${{ matrix.mode }} (push) Has been cancelled
fuzz / create-issue (push) Has been cancelled
build and publish / publish-mypyc (push) Has been cancelled
build and publish / publish-hatch (push) Has been cancelled
250 lines
3.3 KiB
Python
250 lines
3.3 KiB
Python
from typing import NoReturn, Protocol, Union, overload
|
|
|
|
class Empty:
|
|
...
|
|
|
|
def dummy(a): ...
|
|
async def other(b): ...
|
|
|
|
|
|
@overload
|
|
def a(arg: int) -> int: ...
|
|
@overload
|
|
def a(arg: str) -> str: ...
|
|
@overload
|
|
def a(arg: object) -> NoReturn: ...
|
|
def a(arg: Union[int, str, object]) -> Union[int, str]:
|
|
if not isinstance(arg, (int, str)):
|
|
raise TypeError
|
|
return arg
|
|
|
|
class Proto(Protocol):
|
|
def foo(self, a: int) -> int:
|
|
...
|
|
|
|
def bar(self, b: str) -> str: ...
|
|
def baz(self, c: bytes) -> str:
|
|
...
|
|
|
|
|
|
def dummy_two():
|
|
...
|
|
@dummy
|
|
def dummy_three():
|
|
...
|
|
|
|
def dummy_four():
|
|
...
|
|
|
|
@overload
|
|
def b(arg: int) -> int: ...
|
|
|
|
@overload
|
|
def b(arg: str) -> str: ...
|
|
@overload
|
|
def b(arg: object) -> NoReturn: ...
|
|
|
|
def b(arg: Union[int, str, object]) -> Union[int, str]:
|
|
if not isinstance(arg, (int, str)):
|
|
raise TypeError
|
|
return arg
|
|
|
|
def has_comment():
|
|
... # still a dummy
|
|
|
|
if some_condition:
|
|
...
|
|
|
|
if already_dummy: ...
|
|
|
|
class AsyncCls:
|
|
async def async_method(self):
|
|
...
|
|
|
|
async def async_function(self):
|
|
...
|
|
|
|
@decorated
|
|
async def async_function(self):
|
|
...
|
|
|
|
class ClassA:
|
|
def f(self):
|
|
|
|
...
|
|
|
|
|
|
class ClassB:
|
|
def f(self):
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
...
|
|
|
|
|
|
class ClassC:
|
|
def f(self):
|
|
|
|
...
|
|
# Comment
|
|
|
|
|
|
class ClassD:
|
|
def f(self):# Comment 1
|
|
|
|
...# Comment 2
|
|
# Comment 3
|
|
|
|
|
|
class ClassE:
|
|
def f(self):
|
|
|
|
...
|
|
def f2(self):
|
|
print(10)
|
|
|
|
|
|
class ClassF:
|
|
def f(self):
|
|
|
|
...# Comment 2
|
|
|
|
|
|
class ClassG:
|
|
def f(self):#Comment 1
|
|
|
|
...# Comment 2
|
|
|
|
|
|
class ClassH:
|
|
def f(self):
|
|
#Comment
|
|
|
|
...
|
|
|
|
|
|
# output
|
|
|
|
from typing import NoReturn, Protocol, Union, overload
|
|
|
|
|
|
class Empty: ...
|
|
|
|
|
|
def dummy(a): ...
|
|
async def other(b): ...
|
|
|
|
|
|
@overload
|
|
def a(arg: int) -> int: ...
|
|
@overload
|
|
def a(arg: str) -> str: ...
|
|
@overload
|
|
def a(arg: object) -> NoReturn: ...
|
|
def a(arg: Union[int, str, object]) -> Union[int, str]:
|
|
if not isinstance(arg, (int, str)):
|
|
raise TypeError
|
|
return arg
|
|
|
|
|
|
class Proto(Protocol):
|
|
def foo(self, a: int) -> int: ...
|
|
|
|
def bar(self, b: str) -> str: ...
|
|
def baz(self, c: bytes) -> str: ...
|
|
|
|
|
|
def dummy_two(): ...
|
|
@dummy
|
|
def dummy_three(): ...
|
|
|
|
|
|
def dummy_four(): ...
|
|
|
|
|
|
@overload
|
|
def b(arg: int) -> int: ...
|
|
|
|
|
|
@overload
|
|
def b(arg: str) -> str: ...
|
|
@overload
|
|
def b(arg: object) -> NoReturn: ...
|
|
|
|
|
|
def b(arg: Union[int, str, object]) -> Union[int, str]:
|
|
if not isinstance(arg, (int, str)):
|
|
raise TypeError
|
|
return arg
|
|
|
|
|
|
def has_comment(): ... # still a dummy
|
|
|
|
|
|
if some_condition:
|
|
...
|
|
|
|
if already_dummy:
|
|
...
|
|
|
|
|
|
class AsyncCls:
|
|
async def async_method(self): ...
|
|
|
|
|
|
async def async_function(self): ...
|
|
|
|
|
|
@decorated
|
|
async def async_function(self): ...
|
|
|
|
|
|
class ClassA:
|
|
def f(self): ...
|
|
|
|
|
|
class ClassB:
|
|
def f(self): ...
|
|
|
|
|
|
class ClassC:
|
|
def f(self):
|
|
|
|
...
|
|
# Comment
|
|
|
|
|
|
class ClassD:
|
|
def f(self): # Comment 1
|
|
|
|
... # Comment 2
|
|
# Comment 3
|
|
|
|
|
|
class ClassE:
|
|
def f(self): ...
|
|
def f2(self):
|
|
print(10)
|
|
|
|
|
|
class ClassF:
|
|
def f(self): ... # Comment 2
|
|
|
|
|
|
class ClassG:
|
|
def f(self): # Comment 1
|
|
... # Comment 2
|
|
|
|
|
|
class ClassH:
|
|
def f(self):
|
|
# Comment
|
|
|
|
...
|