diff --git a/tests/cases/checker/03_functions.py.ref.json b/tests/cases/checker/03_functions.py.ref.json index 820a7ea..bd2f5a9 100644 --- a/tests/cases/checker/03_functions.py.ref.json +++ b/tests/cases/checker/03_functions.py.ref.json @@ -124,7 +124,7 @@ 22 ] }, - "message": "Multiple values for argument 'b'" + "message": "Multiple values for parameter 'b'" }, { "type": "Error", @@ -152,7 +152,7 @@ 12 ] }, - "message": "Unknown keyword argument 'a'" + "message": "Unknown keyword parameter 'a'" }, { "type": "Error", @@ -194,7 +194,7 @@ 17 ] }, - "message": "Unknown keyword argument 'g'" + "message": "Unknown keyword parameter 'g'" }, { "type": "Error", @@ -277,36 +277,38 @@ "name": "foo" }, "type": { - "pos_args": [ - { - "pos": 0, - "name": "a", - "type": { - "name": "int" - }, - "required": true - } - ], - "args": [ - { - "pos": 1, - "name": "b", - "type": { - "name": "float" - }, - "required": true - } - ], - "kw_args": [ - { - "pos": 2, - "name": "c", - "type": { - "name": "str" - }, - "required": true - } - ], + "params": { + "pos": [ + { + "pos": 0, + "name": "a", + "type": { + "name": "int" + }, + "required": true + } + ], + "mixed": [ + { + "pos": 1, + "name": "b", + "type": { + "name": "float" + }, + "required": true + } + ], + "kw": [ + { + "pos": 2, + "name": "c", + "type": { + "name": "str" + }, + "required": true + } + ] + }, "returns": { "name": "bool" } @@ -351,36 +353,38 @@ "name": "foo" }, "type": { - "pos_args": [ - { - "pos": 0, - "name": "a", - "type": { - "name": "int" - }, - "required": true - } - ], - "args": [ - { - "pos": 1, - "name": "b", - "type": { - "name": "float" - }, - "required": true - } - ], - "kw_args": [ - { - "pos": 2, - "name": "c", - "type": { - "name": "str" - }, - "required": true - } - ], + "params": { + "pos": [ + { + "pos": 0, + "name": "a", + "type": { + "name": "int" + }, + "required": true + } + ], + "mixed": [ + { + "pos": 1, + "name": "b", + "type": { + "name": "float" + }, + "required": true + } + ], + "kw": [ + { + "pos": 2, + "name": "c", + "type": { + "name": "str" + }, + "required": true + } + ] + }, "returns": { "name": "bool" } @@ -443,36 +447,38 @@ "name": "foo" }, "type": { - "pos_args": [ - { - "pos": 0, - "name": "a", - "type": { - "name": "int" - }, - "required": true - } - ], - "args": [ - { - "pos": 1, - "name": "b", - "type": { - "name": "float" - }, - "required": true - } - ], - "kw_args": [ - { - "pos": 2, - "name": "c", - "type": { - "name": "str" - }, - "required": true - } - ], + "params": { + "pos": [ + { + "pos": 0, + "name": "a", + "type": { + "name": "int" + }, + "required": true + } + ], + "mixed": [ + { + "pos": 1, + "name": "b", + "type": { + "name": "float" + }, + "required": true + } + ], + "kw": [ + { + "pos": 2, + "name": "c", + "type": { + "name": "str" + }, + "required": true + } + ] + }, "returns": { "name": "bool" } @@ -539,36 +545,38 @@ "name": "foo" }, "type": { - "pos_args": [ - { - "pos": 0, - "name": "a", - "type": { - "name": "int" - }, - "required": true - } - ], - "args": [ - { - "pos": 1, - "name": "b", - "type": { - "name": "float" - }, - "required": true - } - ], - "kw_args": [ - { - "pos": 2, - "name": "c", - "type": { - "name": "str" - }, - "required": true - } - ], + "params": { + "pos": [ + { + "pos": 0, + "name": "a", + "type": { + "name": "int" + }, + "required": true + } + ], + "mixed": [ + { + "pos": 1, + "name": "b", + "type": { + "name": "float" + }, + "required": true + } + ], + "kw": [ + { + "pos": 2, + "name": "c", + "type": { + "name": "str" + }, + "required": true + } + ] + }, "returns": { "name": "bool" } @@ -649,36 +657,38 @@ "name": "foo" }, "type": { - "pos_args": [ - { - "pos": 0, - "name": "a", - "type": { - "name": "int" - }, - "required": true - } - ], - "args": [ - { - "pos": 1, - "name": "b", - "type": { - "name": "float" - }, - "required": true - } - ], - "kw_args": [ - { - "pos": 2, - "name": "c", - "type": { - "name": "str" - }, - "required": true - } - ], + "params": { + "pos": [ + { + "pos": 0, + "name": "a", + "type": { + "name": "int" + }, + "required": true + } + ], + "mixed": [ + { + "pos": 1, + "name": "b", + "type": { + "name": "float" + }, + "required": true + } + ], + "kw": [ + { + "pos": 2, + "name": "c", + "type": { + "name": "str" + }, + "required": true + } + ] + }, "returns": { "name": "bool" } @@ -762,36 +772,38 @@ "name": "foo" }, "type": { - "pos_args": [ - { - "pos": 0, - "name": "a", - "type": { - "name": "int" - }, - "required": true - } - ], - "args": [ - { - "pos": 1, - "name": "b", - "type": { - "name": "float" - }, - "required": true - } - ], - "kw_args": [ - { - "pos": 2, - "name": "c", - "type": { - "name": "str" - }, - "required": true - } - ], + "params": { + "pos": [ + { + "pos": 0, + "name": "a", + "type": { + "name": "int" + }, + "required": true + } + ], + "mixed": [ + { + "pos": 1, + "name": "b", + "type": { + "name": "float" + }, + "required": true + } + ], + "kw": [ + { + "pos": 2, + "name": "c", + "type": { + "name": "str" + }, + "required": true + } + ] + }, "returns": { "name": "bool" } @@ -850,36 +862,38 @@ "name": "foo" }, "type": { - "pos_args": [ - { - "pos": 0, - "name": "a", - "type": { - "name": "int" - }, - "required": true - } - ], - "args": [ - { - "pos": 1, - "name": "b", - "type": { - "name": "float" - }, - "required": true - } - ], - "kw_args": [ - { - "pos": 2, - "name": "c", - "type": { - "name": "str" - }, - "required": true - } - ], + "params": { + "pos": [ + { + "pos": 0, + "name": "a", + "type": { + "name": "int" + }, + "required": true + } + ], + "mixed": [ + { + "pos": 1, + "name": "b", + "type": { + "name": "float" + }, + "required": true + } + ], + "kw": [ + { + "pos": 2, + "name": "c", + "type": { + "name": "str" + }, + "required": true + } + ] + }, "returns": { "name": "bool" } @@ -929,36 +943,38 @@ "name": "foo" }, "type": { - "pos_args": [ - { - "pos": 0, - "name": "a", - "type": { - "name": "int" - }, - "required": true - } - ], - "args": [ - { - "pos": 1, - "name": "b", - "type": { - "name": "float" - }, - "required": true - } - ], - "kw_args": [ - { - "pos": 2, - "name": "c", - "type": { - "name": "str" - }, - "required": true - } - ], + "params": { + "pos": [ + { + "pos": 0, + "name": "a", + "type": { + "name": "int" + }, + "required": true + } + ], + "mixed": [ + { + "pos": 1, + "name": "b", + "type": { + "name": "float" + }, + "required": true + } + ], + "kw": [ + { + "pos": 2, + "name": "c", + "type": { + "name": "str" + }, + "required": true + } + ] + }, "returns": { "name": "bool" } @@ -1034,36 +1050,38 @@ "name": "foo" }, "type": { - "pos_args": [ - { - "pos": 0, - "name": "a", - "type": { - "name": "int" - }, - "required": true - } - ], - "args": [ - { - "pos": 1, - "name": "b", - "type": { - "name": "float" - }, - "required": true - } - ], - "kw_args": [ - { - "pos": 2, - "name": "c", - "type": { - "name": "str" - }, - "required": true - } - ], + "params": { + "pos": [ + { + "pos": 0, + "name": "a", + "type": { + "name": "int" + }, + "required": true + } + ], + "mixed": [ + { + "pos": 1, + "name": "b", + "type": { + "name": "float" + }, + "required": true + } + ], + "kw": [ + { + "pos": 2, + "name": "c", + "type": { + "name": "str" + }, + "required": true + } + ] + }, "returns": { "name": "bool" } @@ -1150,36 +1168,38 @@ "name": "foo" }, "type": { - "pos_args": [ - { - "pos": 0, - "name": "a", - "type": { - "name": "int" - }, - "required": true - } - ], - "args": [ - { - "pos": 1, - "name": "b", - "type": { - "name": "float" - }, - "required": true - } - ], - "kw_args": [ - { - "pos": 2, - "name": "c", - "type": { - "name": "str" - }, - "required": true - } - ], + "params": { + "pos": [ + { + "pos": 0, + "name": "a", + "type": { + "name": "int" + }, + "required": true + } + ], + "mixed": [ + { + "pos": 1, + "name": "b", + "type": { + "name": "float" + }, + "required": true + } + ], + "kw": [ + { + "pos": 2, + "name": "c", + "type": { + "name": "str" + }, + "required": true + } + ] + }, "returns": { "name": "bool" } @@ -1266,36 +1286,38 @@ "name": "foo" }, "type": { - "pos_args": [ - { - "pos": 0, - "name": "a", - "type": { - "name": "int" - }, - "required": true - } - ], - "args": [ - { - "pos": 1, - "name": "b", - "type": { - "name": "float" - }, - "required": true - } - ], - "kw_args": [ - { - "pos": 2, - "name": "c", - "type": { - "name": "str" - }, - "required": true - } - ], + "params": { + "pos": [ + { + "pos": 0, + "name": "a", + "type": { + "name": "int" + }, + "required": true + } + ], + "mixed": [ + { + "pos": 1, + "name": "b", + "type": { + "name": "float" + }, + "required": true + } + ], + "kw": [ + { + "pos": 2, + "name": "c", + "type": { + "name": "str" + }, + "required": true + } + ] + }, "returns": { "name": "bool" } @@ -1382,36 +1404,38 @@ "name": "foo" }, "type": { - "pos_args": [ - { - "pos": 0, - "name": "a", - "type": { - "name": "int" - }, - "required": true - } - ], - "args": [ - { - "pos": 1, - "name": "b", - "type": { - "name": "float" - }, - "required": true - } - ], - "kw_args": [ - { - "pos": 2, - "name": "c", - "type": { - "name": "str" - }, - "required": true - } - ], + "params": { + "pos": [ + { + "pos": 0, + "name": "a", + "type": { + "name": "int" + }, + "required": true + } + ], + "mixed": [ + { + "pos": 1, + "name": "b", + "type": { + "name": "float" + }, + "required": true + } + ], + "kw": [ + { + "pos": 2, + "name": "c", + "type": { + "name": "str" + }, + "required": true + } + ] + }, "returns": { "name": "bool" } diff --git a/tests/cases/checker/06_subtyping.py.ref.json b/tests/cases/checker/06_subtyping.py.ref.json index 03194f1..fc56069 100644 --- a/tests/cases/checker/06_subtyping.py.ref.json +++ b/tests/cases/checker/06_subtyping.py.ref.json @@ -136,26 +136,28 @@ "name": "maximum" }, "type": { - "pos_args": [], - "args": [ - { - "pos": 0, - "name": "a", - "type": { - "name": "float" + "params": { + "pos": [], + "mixed": [ + { + "pos": 0, + "name": "a", + "type": { + "name": "float" + }, + "required": true }, - "required": true - }, - { - "pos": 1, - "name": "b", - "type": { - "name": "float" - }, - "required": true - } - ], - "kw_args": [], + { + "pos": 1, + "name": "b", + "type": { + "name": "float" + }, + "required": true + } + ], + "kw": [] + }, "returns": { "name": "float" } diff --git a/tests/cases/checker/07_variance.py.ref.json b/tests/cases/checker/07_variance.py.ref.json index abfebf3..b34c2e6 100644 --- a/tests/cases/checker/07_variance.py.ref.json +++ b/tests/cases/checker/07_variance.py.ref.json @@ -312,16 +312,18 @@ "name": "print" }, "type": { - "pos_args": [ - { - "pos": 0, - "name": "object", - "type": {}, - "required": false - } - ], - "args": [], - "kw_args": [], + "params": { + "pos": [ + { + "pos": 0, + "name": "object", + "type": {}, + "required": false + } + ], + "mixed": [], + "kw": [] + }, "returns": {} } }, diff --git a/tests/cases/checker/08_unification.py.ref.json b/tests/cases/checker/08_unification.py.ref.json index c384d8a..27309d4 100644 --- a/tests/cases/checker/08_unification.py.ref.json +++ b/tests/cases/checker/08_unification.py.ref.json @@ -120,16 +120,18 @@ "name": "bool" }, "type": { - "pos_args": [ - { - "pos": 0, - "name": "object", - "type": {}, - "required": false - } - ], - "args": [], - "kw_args": [], + "params": { + "pos": [ + { + "pos": 0, + "name": "object", + "type": {}, + "required": false + } + ], + "mixed": [], + "kw": [] + }, "returns": { "name": "bool" } @@ -377,18 +379,20 @@ "name": "double" }, "type": { - "pos_args": [], - "args": [ - { - "pos": 0, - "name": "value", - "type": { - "name": "float" - }, - "required": true - } - ], - "kw_args": [], + "params": { + "pos": [], + "mixed": [ + { + "pos": 0, + "name": "value", + "type": { + "name": "float" + }, + "required": true + } + ], + "kw": [] + }, "returns": { "name": "float" } @@ -439,54 +443,58 @@ } ], "body": { - "pos_args": [ - { - "pos": 0, - "name": "transform", - "type": { - "pos_args": [ - { - "pos": 0, - "name": "v", - "type": { - "name": "T", - "bound": null, - "variance": "INVARIANT" - }, - "required": true - } - ], - "args": [], - "kw_args": [], - "returns": { - "name": "U", - "bound": null, - "variance": "INVARIANT" - } - }, - "required": true - }, - { - "pos": 1, - "name": "iterable", - "type": { - "name": "list", - "args": [ - { - "name": "T", + "params": { + "pos": [ + { + "pos": 0, + "name": "transform", + "type": { + "params": { + "pos": [ + { + "pos": 0, + "name": "v", + "type": { + "name": "T", + "bound": null, + "variance": "INVARIANT" + }, + "required": true + } + ], + "mixed": [], + "kw": [] + }, + "returns": { + "name": "U", "bound": null, "variance": "INVARIANT" } - ], - "body": { - "name": "list" - } + }, + "required": true }, - "required": true - } - ], - "args": [], - "kw_args": [], + { + "pos": 1, + "name": "iterable", + "type": { + "name": "list", + "args": [ + { + "name": "T", + "bound": null, + "variance": "INVARIANT" + } + ], + "body": { + "name": "list" + } + }, + "required": true + } + ], + "mixed": [], + "kw": [] + }, "returns": { "name": "list", "args": [ @@ -548,18 +556,20 @@ "name": "double" }, "type": { - "pos_args": [], - "args": [ - { - "pos": 0, - "name": "value", - "type": { - "name": "float" - }, - "required": true - } - ], - "kw_args": [], + "params": { + "pos": [], + "mixed": [ + { + "pos": 0, + "name": "value", + "type": { + "name": "float" + }, + "required": true + } + ], + "kw": [] + }, "returns": { "name": "float" } @@ -610,54 +620,58 @@ } ], "body": { - "pos_args": [ - { - "pos": 0, - "name": "transform", - "type": { - "pos_args": [ - { - "pos": 0, - "name": "v", - "type": { - "name": "T", - "bound": null, - "variance": "INVARIANT" - }, - "required": true - } - ], - "args": [], - "kw_args": [], - "returns": { - "name": "U", - "bound": null, - "variance": "INVARIANT" - } - }, - "required": true - }, - { - "pos": 1, - "name": "iterable", - "type": { - "name": "list", - "args": [ - { - "name": "T", + "params": { + "pos": [ + { + "pos": 0, + "name": "transform", + "type": { + "params": { + "pos": [ + { + "pos": 0, + "name": "v", + "type": { + "name": "T", + "bound": null, + "variance": "INVARIANT" + }, + "required": true + } + ], + "mixed": [], + "kw": [] + }, + "returns": { + "name": "U", "bound": null, "variance": "INVARIANT" } - ], - "body": { - "name": "list" - } + }, + "required": true }, - "required": true - } - ], - "args": [], - "kw_args": [], + { + "pos": 1, + "name": "iterable", + "type": { + "name": "list", + "args": [ + { + "name": "T", + "bound": null, + "variance": "INVARIANT" + } + ], + "body": { + "name": "list" + } + }, + "required": true + } + ], + "mixed": [], + "kw": [] + }, "returns": { "name": "list", "args": [ @@ -709,18 +723,20 @@ "name": "is_odd" }, "type": { - "pos_args": [], - "args": [ - { - "pos": 0, - "name": "value", - "type": { - "name": "int" - }, - "required": true - } - ], - "kw_args": [], + "params": { + "pos": [], + "mixed": [ + { + "pos": 0, + "name": "value", + "type": { + "name": "int" + }, + "required": true + } + ], + "kw": [] + }, "returns": { "name": "bool" } @@ -771,54 +787,58 @@ } ], "body": { - "pos_args": [ - { - "pos": 0, - "name": "transform", - "type": { - "pos_args": [ - { - "pos": 0, - "name": "v", - "type": { - "name": "T", - "bound": null, - "variance": "INVARIANT" - }, - "required": true - } - ], - "args": [], - "kw_args": [], - "returns": { - "name": "U", - "bound": null, - "variance": "INVARIANT" - } - }, - "required": true - }, - { - "pos": 1, - "name": "iterable", - "type": { - "name": "list", - "args": [ - { - "name": "T", + "params": { + "pos": [ + { + "pos": 0, + "name": "transform", + "type": { + "params": { + "pos": [ + { + "pos": 0, + "name": "v", + "type": { + "name": "T", + "bound": null, + "variance": "INVARIANT" + }, + "required": true + } + ], + "mixed": [], + "kw": [] + }, + "returns": { + "name": "U", "bound": null, "variance": "INVARIANT" } - ], - "body": { - "name": "list" - } + }, + "required": true }, - "required": true - } - ], - "args": [], - "kw_args": [], + { + "pos": 1, + "name": "iterable", + "type": { + "name": "list", + "args": [ + { + "name": "T", + "bound": null, + "variance": "INVARIANT" + } + ], + "body": { + "name": "list" + } + }, + "required": true + } + ], + "mixed": [], + "kw": [] + }, "returns": { "name": "list", "args": [ diff --git a/tests/cases/python-parser/03_functions.py.ref.json b/tests/cases/python-parser/03_functions.py.ref.json index 2288b82..64e8c00 100644 --- a/tests/cases/python-parser/03_functions.py.ref.json +++ b/tests/cases/python-parser/03_functions.py.ref.json @@ -7,50 +7,51 @@ { "_type": "Function", "name": "func", - "posonlyargs": [], - "args": [ - { - "name": "col1", - "type": { - "_type": "BaseType", - "base": "Column", - "args": [ - { - "_type": "ConstraintType", - "type": { - "_type": "BaseType", - "base": "float", - "args": [] - }, - "constraint": "0 <= _ <= 1" - } - ] + "params": { + "_type": "ParamSpec", + "pos": [], + "mixed": [ + { + "name": "col1", + "type": { + "_type": "BaseType", + "base": "Column", + "args": [ + { + "_type": "ConstraintType", + "type": { + "_type": "BaseType", + "base": "float", + "args": [] + }, + "constraint": "0 <= _ <= 1" + } + ] + }, + "default": null }, - "default": null - }, - { - "name": "col2", - "type": { - "_type": "BaseType", - "base": "Column", - "args": [ - { - "_type": "ConstraintType", - "type": { - "_type": "BaseType", - "base": "float", - "args": [] - }, - "constraint": "0 <= _ <= 1" - } - ] - }, - "default": null - } - ], - "sink": null, - "kwonlyargs": [], - "kw_sink": null, + { + "name": "col2", + "type": { + "_type": "BaseType", + "base": "Column", + "args": [ + { + "_type": "ConstraintType", + "type": { + "_type": "BaseType", + "base": "float", + "args": [] + }, + "constraint": "0 <= _ <= 1" + } + ] + }, + "default": null + } + ], + "kw": [] + }, "returns": { "_type": "BaseType", "base": "Column", @@ -119,41 +120,42 @@ { "_type": "Function", "name": "func2", - "posonlyargs": [ - { - "name": "a", - "type": { - "_type": "BaseType", - "base": "int", - "args": [] - }, - "default": null - } - ], - "args": [ - { - "name": "b", - "type": { - "_type": "BaseType", - "base": "float", - "args": [] - }, - "default": null - } - ], - "sink": null, - "kwonlyargs": [ - { - "name": "c", - "type": { - "_type": "BaseType", - "base": "str", - "args": [] - }, - "default": null - } - ], - "kw_sink": null, + "params": { + "_type": "ParamSpec", + "pos": [ + { + "name": "a", + "type": { + "_type": "BaseType", + "base": "int", + "args": [] + }, + "default": null + } + ], + "mixed": [ + { + "name": "b", + "type": { + "_type": "BaseType", + "base": "float", + "args": [] + }, + "default": null + } + ], + "kw": [ + { + "name": "c", + "type": { + "_type": "BaseType", + "base": "str", + "args": [] + }, + "default": null + } + ] + }, "returns": null, "body": [] }