diff --git a/schema/decls.json b/schema/decls.json index 456a798186..3695a0a8b6 100644 --- a/schema/decls.json +++ b/schema/decls.json @@ -116,6 +116,21 @@ }, { "$ref": "members.json#/definitions/alias" + }, + { + "$ref": "#/definitions/alias" + }, + { + "$ref": "#/definitions/constant" + }, + { + "$ref": "#/definitions/class" + }, + { + "$ref": "#/definitions/module" + }, + { + "$ref": "#/definitions/interface" } ] }, diff --git a/schema/members.json b/schema/members.json index 1643eb2d0f..88b31807bd 100644 --- a/schema/members.json +++ b/schema/members.json @@ -34,6 +34,9 @@ }, "location": { "$ref": "location.json" + }, + "overload": { + "type": "boolean" } }, "required": ["member", "kind", "types", "comment", "annotations", "location"] diff --git a/test/rbs/schema_test.rb b/test/rbs/schema_test.rb index 0bd976ad0d..0eeda658ab 100644 --- a/test/rbs/schema_test.rb +++ b/test/rbs/schema_test.rb @@ -262,4 +262,17 @@ def foo: () -> Integer assert_decl decl, :interface end + + def test_nested + decl, = RBS::Parser.parse_signature(<