def test(
): ...
def test(
a,
b,
): ...
def single_line(aaaaaaaaaaaaaaaaaaaaaaaaaaaaa, bbbbbbbbbbbbbbb, ccccccccccccccccc):
pass
def arguments_on_their_own_line(aaaaaaaaaaaaaaaaaaaaaaaaaaaaa, bbbbbbbbbbbbbbb, ccccccccccc, ddddddddddddd, eeeeeee):
pass
def argument_per_line(aaaaaaaaaaaaaaaaaaaaaaaaaaaaa, bbbbbbbbbbbbbbb, ccccccccccccccccc, ddddddddddddd, eeeeeeeeeeeeeeee, ffffffffffff):
pass
def last_pos_only_trailing_comma(a, b, /,):
pass
def last_pos_no_trailing_comma(a, b, /):
pass
def varg_with_leading_comments(
a, b,
*args
): ...
def kwarg_with_leading_comments(
a, b,
**kwargs
): ...
def argument_with_long_default(
a,
b = ccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccc + [
dddddddddddddddddddd, eeeeeeeeeeeeeeeeeeee, ffffffffffffffffffffffff
],
h = []
): ...
def argument_with_long_type_annotation(
a,
b: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx | yyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyy | zzzzzzzzzzzzzzzzzzz = [0, 1, 2, 3],
h = []
): ...
def test(): ...
def test[
A,
B,
](): ...
def type_param_comments[ A,
B,
C,
D, ]():
pass
def single_line[Aaaaaaaaaaaaaaaaaaaaaaaaaaaaa, Bbbbbbbbbbbbbbb, Ccccccccccccccccc]():
pass
def params_on_their_own_line[Aaaaaaaaaaaaaaaaaaaaaaaaaaaaa, Bbbbbbbbbbbbbbb, Ccccccccccc, Ddddddddddddd, Eeeeeeee]():
pass
def param_per_line[Aaaaaaaaaaaaaaaaaaaaaaaaaaaaa, Bbbbbbbbbbbbbbb, Ccccccccccccccccc, Ddddddddddddd, Eeeeeeeeeeeeeeeee, ffffffffffff]():
pass
def single_line_trailing_comma[A, B, C,]():
pass
def with_leading_comment(): ...
if True:
def f1():
pass else:
pass
if True:
def f2():
pass
else:
pass
def f(arg1=1, *, kwonlyarg1, kwonlyarg2=2):
pass
def foo(
b=3 + 2 ):
...
def f11(
a,
/, b,
):
pass
def f12(
a=1,
/, b=2,
):
pass
def f13(
a,
/, ):
pass
def f21(
a=1,
*, b=2,
):
pass
def f22(
a,
*, b,
):
pass
def f23(
a,
*args, b,
):
pass
def f24(
*, a
):
pass
def f31(
a=1,
/, b=2,
*, c=3,
):
pass
def f32(
a,
/, b,
*, c,
):
pass
def f33(
a,
/, *args, c,
):
pass
def f34(
a,
/, *, c,
):
pass
def f35(
*, c,
):
pass
def f41(
a,
/ # 1
, * , c,
):
pass
def f42(
a,
/ # 1
# 2
, * , c,
):
pass
def f43(
__bar: str,
/,
**specifiers: typing.Any, ) -> int:
return len(specifiers)
def f(a, ): pass
def f(*args, ): pass
def f(**kwds, ): pass
def f(a, *args, ): pass
def f(a, **kwds, ): pass
def f(*args, b, ): pass
def f(*, b, ): pass
def f(*args, **kwds, ): pass
def f(a, *args, b, ): pass
def f(a, *, b, ): pass
def f(a, *args, **kwds, ): pass
def f(*args, b, **kwds, ): pass
def f(*, b, **kwds, ): pass
def f(a, *args, b, **kwds, ): pass
def f(a, *, b, **kwds, ): pass
def f(
):
...
def f( ): ...
def f( ): ...
def f(
a,
/,
b
):
...
def f( *,
b
):
...
def f( *,
b
):
...
def f( a,
): ...
def f( a
): ...
def f( a
): ...
def f( a,
/ # second
,
):
...
def this_is_unusual() -> (please := no): ...
def this_is_unusual(x) -> (please := no): ...
try:
def test():
pass
except ImportError:
pass
def default_arg_comments(
a: str = "a",
b: str =
"b",
c: str =( "c"
),
d: str =(
"d"
)
):
print(a, b, c, d)
def default_arg_comments2( x: int = 123 ):
print(x)
def function_with_one_argument_and_a_positional_separator(
argument: str, /
) -> ReallyReallyReallyReallyReallyReallyReallyReallyLongName:
pass
def function_with_one_argument_and_a_keyword_separator(
*, argument: str
) -> ReallyReallyReallyReallyReallyReallyReallyReallyLongName:
pass
def function_with_variadic_generics(*args: *tuple[int]): ...
def function_with_variadic_generics(*args: *tuple[int],): ...
def func[T](lotsoflongargs: T, lotsoflongargs2: T, lotsoflongargs3: T, lotsoflongargs4: T, lotsoflongargs5: T) -> T: ...
@decorator
def foo[S](x: S) -> S: ...
@decorator
def foo(x: S) -> S: ...
@decorator
def foo() -> S: ...
@decorator
@decorator2
def foo(x: S) -> S: ...
@decorator def foo(x: S) -> S: ...
def foo(
arg: ( int
),
):
pass
def foo(
arg: ( int
| range
| memoryview
),
):
pass
def foo(arg: (
int
)):
pass
def foo(
arg: (int),
):
pass
def args_no_type_annotation(*
args): pass
def args_type_annotation(*
args: int): pass
def args_trailing_end_of_line_comment(* args): pass
def args_blank_line_comment(*
args): pass
def args_with_leading_parameter_comment(
*
args): pass
def kargs_no_type_annotation(**
kwargs): pass
def kwargs_type_annotation(**
kwargs: int): pass
def args_many_comments(
*
args ): pass
def args_many_comments_with_type_annotation(
*
args : int ): pass
def args_with_type_annotations_no_after_colon_comment(
*
args :
int ): pass
def preserve_named_param_annotation(x: (value := int)):
pass
def preserve_yield_param_annotation(x: (yield 1)):
pass
async def preserve_await_param_annotation(x: (await g())):
pass