GDScript: Add support for variadic functions
This commit is contained in:
parent
3b963ab8b6
commit
ee121ef80e
33 changed files with 416 additions and 65 deletions
|
|
@ -0,0 +1,38 @@
|
|||
class A:
|
||||
func f(x: int) -> void:
|
||||
print(x)
|
||||
|
||||
class B extends A:
|
||||
func f(x: int, ...args: Array) -> void:
|
||||
prints(x, args)
|
||||
|
||||
class C extends B:
|
||||
func f(x: int, y: int = 0, ...args: Array) -> void:
|
||||
prints(x, y, args)
|
||||
|
||||
class D extends C:
|
||||
func f(...args: Array) -> void:
|
||||
print(args)
|
||||
|
||||
func test_func(x: int, y: int = 0, ...args: Array) -> void:
|
||||
prints(x, y, args)
|
||||
|
||||
var test_lambda := func (x: int, y: int = 0, ...args: Array) -> void:
|
||||
prints(x, y, args)
|
||||
|
||||
func test():
|
||||
for method in get_method_list():
|
||||
if str(method.name).begins_with("test_"):
|
||||
print(Utils.get_method_signature(method))
|
||||
|
||||
test_func(1)
|
||||
test_func(1, 2)
|
||||
test_func(1, 2, 3)
|
||||
test_func(1, 2, 3, 4)
|
||||
test_func(1, 2, 3, 4, 5)
|
||||
|
||||
test_lambda.call(1)
|
||||
test_lambda.call(1, 2)
|
||||
test_lambda.call(1, 2, 3)
|
||||
test_lambda.call(1, 2, 3, 4)
|
||||
test_lambda.call(1, 2, 3, 4, 5)
|
||||
Loading…
Add table
Add a link
Reference in a new issue