rbs 3.9.2 → 4.0.0.dev.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/.github/workflows/ruby.yml +1 -1
- data/.github/workflows/windows.yml +1 -1
- data/CHANGELOG.md +0 -13
- data/Rakefile +28 -21
- data/Steepfile +1 -0
- data/config.yml +232 -62
- data/ext/rbs_extension/ast_translation.c +1149 -0
- data/ext/rbs_extension/ast_translation.h +30 -0
- data/{src/constants.c → ext/rbs_extension/class_constants.c} +15 -1
- data/{include/rbs/constants.h → ext/rbs_extension/class_constants.h} +10 -1
- data/ext/rbs_extension/extconf.rb +3 -1
- data/ext/rbs_extension/{location.c → legacy_location.c} +25 -34
- data/ext/rbs_extension/legacy_location.h +40 -0
- data/ext/rbs_extension/main.c +402 -8
- data/ext/rbs_extension/rbs_extension.h +3 -21
- data/ext/rbs_extension/rbs_string_bridging.c +9 -0
- data/ext/rbs_extension/rbs_string_bridging.h +20 -0
- data/include/rbs/ast.h +748 -0
- data/include/rbs/defines.h +60 -0
- data/{ext/rbs_extension → include/rbs}/lexer.h +40 -32
- data/include/rbs/location.h +59 -0
- data/include/rbs/parser.h +151 -0
- data/include/rbs/string.h +49 -0
- data/include/rbs/util/rbs_allocator.h +38 -0
- data/include/rbs/util/rbs_assert.h +9 -0
- data/include/rbs/util/rbs_buffer.h +83 -0
- data/include/rbs/util/rbs_constant_pool.h +3 -64
- data/include/rbs/util/rbs_encoding.h +280 -0
- data/include/rbs/util/rbs_unescape.h +23 -0
- data/include/rbs.h +1 -2
- data/lib/rbs/annotate/formatter.rb +3 -13
- data/lib/rbs/annotate/rdoc_annotator.rb +3 -1
- data/lib/rbs/annotate/rdoc_source.rb +1 -1
- data/lib/rbs/ast/ruby/annotations.rb +119 -0
- data/lib/rbs/ast/ruby/comment_block.rb +221 -0
- data/lib/rbs/ast/ruby/declarations.rb +86 -0
- data/lib/rbs/ast/ruby/helpers/constant_helper.rb +24 -0
- data/lib/rbs/ast/ruby/helpers/location_helper.rb +15 -0
- data/lib/rbs/ast/ruby/members.rb +213 -0
- data/lib/rbs/buffer.rb +104 -24
- data/lib/rbs/cli/validate.rb +39 -34
- data/lib/rbs/cli.rb +4 -5
- data/lib/rbs/definition.rb +6 -1
- data/lib/rbs/definition_builder/ancestor_builder.rb +63 -60
- data/lib/rbs/definition_builder/method_builder.rb +45 -30
- data/lib/rbs/definition_builder.rb +44 -9
- data/lib/rbs/environment/class_entry.rb +69 -0
- data/lib/rbs/environment/module_entry.rb +66 -0
- data/lib/rbs/environment.rb +185 -154
- data/lib/rbs/environment_loader.rb +2 -2
- data/lib/rbs/errors.rb +4 -3
- data/lib/rbs/inline_parser/comment_association.rb +117 -0
- data/lib/rbs/inline_parser.rb +206 -0
- data/lib/rbs/location_aux.rb +35 -3
- data/lib/rbs/parser_aux.rb +11 -1
- data/lib/rbs/prototype/runtime.rb +2 -2
- data/lib/rbs/source.rb +99 -0
- data/lib/rbs/subtractor.rb +4 -3
- data/lib/rbs/version.rb +1 -1
- data/lib/rbs.rb +12 -0
- data/lib/rdoc/discover.rb +1 -1
- data/lib/rdoc_plugin/parser.rb +2 -2
- data/rbs.gemspec +1 -0
- data/sig/ancestor_builder.rbs +1 -1
- data/sig/annotate/formatter.rbs +2 -2
- data/sig/annotate/rdoc_annotater.rbs +1 -1
- data/sig/ast/ruby/annotations.rbs +110 -0
- data/sig/ast/ruby/comment_block.rbs +119 -0
- data/sig/ast/ruby/declarations.rbs +60 -0
- data/sig/ast/ruby/helpers/constant_helper.rbs +11 -0
- data/sig/ast/ruby/helpers/location_helper.rbs +15 -0
- data/sig/ast/ruby/members.rbs +72 -0
- data/sig/buffer.rbs +63 -5
- data/sig/definition.rbs +1 -0
- data/sig/definition_builder.rbs +1 -1
- data/sig/environment/class_entry.rbs +50 -0
- data/sig/environment/module_entry.rbs +50 -0
- data/sig/environment.rbs +22 -76
- data/sig/errors.rbs +13 -6
- data/sig/inline_parser/comment_association.rbs +71 -0
- data/sig/inline_parser.rbs +87 -0
- data/sig/location.rbs +32 -7
- data/sig/method_builder.rbs +7 -4
- data/sig/parser.rbs +16 -0
- data/sig/source.rbs +48 -0
- data/src/ast.c +1345 -0
- data/src/lexer.c +2867 -0
- data/src/lexer.re +151 -0
- data/{ext/rbs_extension → src}/lexstate.c +58 -42
- data/src/location.c +71 -0
- data/src/parser.c +3739 -0
- data/src/string.c +89 -0
- data/src/util/rbs_allocator.c +149 -0
- data/src/util/rbs_assert.c +19 -0
- data/src/util/rbs_buffer.c +54 -0
- data/src/util/rbs_constant_pool.c +13 -81
- data/src/util/rbs_encoding.c +5273 -0
- data/src/util/rbs_unescape.c +130 -0
- data/stdlib/rdoc/0/code_object.rbs +2 -2
- data/stdlib/rdoc/0/comment.rbs +2 -0
- data/stdlib/rdoc/0/options.rbs +76 -0
- data/stdlib/rdoc/0/rdoc.rbs +6 -4
- data/stdlib/rdoc/0/store.rbs +1 -1
- metadata +70 -17
- data/ext/rbs_extension/lexer.c +0 -2728
- data/ext/rbs_extension/lexer.re +0 -147
- data/ext/rbs_extension/location.h +0 -85
- data/ext/rbs_extension/parser.c +0 -2982
- data/ext/rbs_extension/parser.h +0 -18
- data/ext/rbs_extension/parserstate.c +0 -411
- data/ext/rbs_extension/parserstate.h +0 -163
- data/ext/rbs_extension/unescape.c +0 -32
- data/include/rbs/ruby_objs.h +0 -72
- data/src/ruby_objs.c +0 -799
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: d0f208999624a32e97044b8427ec19fa233e21a530a6383efe4ea5b9333ab1ce
|
4
|
+
data.tar.gz: d03954e5a4fa29a428085183a90a86b481849b0994e0d454cccca395412a31f0
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 56da6e8a6a9336ae251d766b85c0d8ab62b42a8df1f1c828cd8f0c0ce898ac639a024c5b819e2e6a85733fa1d140ca5b06fc61de62b36fdb21074d34710bb003
|
7
|
+
data.tar.gz: de3ac4191be3ec60ab8bd25c4653cc2663effc2004c9d5e33d9fbb6eabace99fa883dfd5201d92c7f574d8730a74116867a853cb525343a639aeef6d0dd6d041
|
data/.github/workflows/ruby.yml
CHANGED
@@ -33,7 +33,7 @@ jobs:
|
|
33
33
|
|
34
34
|
res = URI.parse("https://stdgems.org/bundled_gems.json").read
|
35
35
|
bundled_gems = JSON.parse(res)["gems"].map{_1["gem"]}
|
36
|
-
system "gem uninstall
|
36
|
+
system "gem uninstall #{bundled_gems.join(" ")} --force", exception: true
|
37
37
|
'
|
38
38
|
- name: bundle install
|
39
39
|
run: |
|
data/CHANGELOG.md
CHANGED
@@ -1,18 +1,5 @@
|
|
1
1
|
# CHANGELOG
|
2
2
|
|
3
|
-
## 3.9.2 (2025-03-31)
|
4
|
-
|
5
|
-
### Library changes
|
6
|
-
|
7
|
-
* Change `{}` to `{ 0 }` ([#2354](https://github.com/ruby/rbs/pull/2354))
|
8
|
-
|
9
|
-
## 3.9.1 (2025-03-24)
|
10
|
-
|
11
|
-
### Miscellaneous
|
12
|
-
|
13
|
-
* `did_you_mean` is a default gem ([#2348](https://github.com/ruby/rbs/pull/2348))
|
14
|
-
* Skip loading ruby_memcheck ([#2347](https://github.com/ruby/rbs/pull/2347))
|
15
|
-
|
16
3
|
## 3.9.0 (2025-03-18)
|
17
4
|
|
18
5
|
### Miscellaneous
|
data/Rakefile
CHANGED
@@ -36,12 +36,12 @@ end
|
|
36
36
|
multitask :default => [:test, :stdlib_test, :typecheck_test, :rubocop, :validate, :test_doc]
|
37
37
|
|
38
38
|
task :lexer do
|
39
|
-
sh "re2c -W --no-generation-date -o
|
39
|
+
sh "re2c -W --no-generation-date -o src/lexer.c src/lexer.re"
|
40
40
|
end
|
41
41
|
|
42
42
|
task :confirm_lexer => :lexer do
|
43
43
|
puts "Testing if lexer.c is updated with respect to lexer.re"
|
44
|
-
sh "git diff --exit-code
|
44
|
+
sh "git diff --exit-code src/lexer.c"
|
45
45
|
end
|
46
46
|
|
47
47
|
task :confirm_templates => :templates do
|
@@ -70,17 +70,19 @@ task :confirm_annotation do
|
|
70
70
|
end
|
71
71
|
|
72
72
|
task :templates do
|
73
|
-
sh "#{ruby} templates/template.rb
|
74
|
-
sh "#{ruby} templates/template.rb
|
75
|
-
|
76
|
-
sh "#{ruby} templates/template.rb
|
73
|
+
sh "#{ruby} templates/template.rb ext/rbs_extension/ast_translation.h"
|
74
|
+
sh "#{ruby} templates/template.rb ext/rbs_extension/ast_translation.c"
|
75
|
+
|
76
|
+
sh "#{ruby} templates/template.rb ext/rbs_extension/class_constants.h"
|
77
|
+
sh "#{ruby} templates/template.rb ext/rbs_extension/class_constants.c"
|
78
|
+
|
79
|
+
sh "#{ruby} templates/template.rb include/rbs/ast.h"
|
80
|
+
sh "#{ruby} templates/template.rb src/ast.c"
|
77
81
|
end
|
78
82
|
|
79
|
-
task :compile => "ext/rbs_extension/
|
80
|
-
task :compile => "
|
81
|
-
task :compile => "
|
82
|
-
task :compile => "src/constants.c"
|
83
|
-
task :compile => "src/ruby_objs.c"
|
83
|
+
task :compile => "ext/rbs_extension/class_constants.h"
|
84
|
+
task :compile => "ext/rbs_extension/class_constants.c"
|
85
|
+
task :compile => "src/lexer.c"
|
84
86
|
|
85
87
|
task :test_doc do
|
86
88
|
files = Dir.chdir(File.expand_path('..', __FILE__)) do
|
@@ -141,16 +143,21 @@ task :stdlib_test => :compile do
|
|
141
143
|
end
|
142
144
|
|
143
145
|
task :typecheck_test => :compile do
|
144
|
-
|
145
|
-
|
146
|
-
|
147
|
-
|
148
|
-
|
149
|
-
|
150
|
-
|
151
|
-
|
152
|
-
|
153
|
-
|
146
|
+
puts
|
147
|
+
puts
|
148
|
+
puts "⛔️⛔️⛔️⛔️⛔️⛔️ Skipping type check test because RBS is incompatible with Steep (#{__FILE__}:#{__LINE__})"
|
149
|
+
puts
|
150
|
+
puts
|
151
|
+
# FileList["test/typecheck/*"].each do |test|
|
152
|
+
# Dir.chdir(test) do
|
153
|
+
# expectations = File.join(test, "steep_expectations.yml")
|
154
|
+
# if File.exist?(expectations)
|
155
|
+
# sh "steep check --with_expectations"
|
156
|
+
# else
|
157
|
+
# sh "steep check"
|
158
|
+
# end
|
159
|
+
# end
|
160
|
+
# end
|
154
161
|
end
|
155
162
|
|
156
163
|
task :raap => :compile do
|
data/Steepfile
CHANGED
@@ -9,6 +9,7 @@ target :lib do
|
|
9
9
|
)
|
10
10
|
|
11
11
|
library "pathname", "json", "logger", "monitor", "tsort", "uri", 'dbm', 'pstore', 'singleton', 'shellwords', 'fileutils', 'find', 'digest', 'prettyprint', 'yaml', "psych", "securerandom"
|
12
|
+
library "prism"
|
12
13
|
signature "stdlib/strscan/0/"
|
13
14
|
signature "stdlib/optparse/0/"
|
14
15
|
signature "stdlib/rdoc/0/"
|
data/config.yml
CHANGED
@@ -2,316 +2,486 @@ nodes:
|
|
2
2
|
- name: RBS::AST::Annotation
|
3
3
|
fields:
|
4
4
|
- name: string
|
5
|
-
|
5
|
+
c_type: rbs_string
|
6
|
+
- name: RBS::AST::Bool
|
7
|
+
expose_to_ruby: false
|
8
|
+
expose_location: false
|
9
|
+
fields:
|
10
|
+
- name: value
|
11
|
+
c_type: bool
|
6
12
|
- name: RBS::AST::Comment
|
7
13
|
fields:
|
8
14
|
- name: string
|
9
|
-
|
15
|
+
c_type: rbs_string
|
10
16
|
- name: RBS::AST::Declarations::Class
|
11
17
|
fields:
|
12
18
|
- name: name
|
19
|
+
c_type: rbs_type_name
|
13
20
|
- name: type_params
|
21
|
+
c_type: rbs_node_list
|
14
22
|
- name: super_class
|
23
|
+
c_type: rbs_ast_declarations_class_super
|
15
24
|
- name: members
|
25
|
+
c_type: rbs_node_list
|
16
26
|
- name: annotations
|
17
|
-
|
27
|
+
c_type: rbs_node_list
|
18
28
|
- name: comment
|
29
|
+
c_type: rbs_ast_comment
|
19
30
|
- name: RBS::AST::Declarations::Class::Super
|
20
31
|
fields:
|
21
32
|
- name: name
|
33
|
+
c_type: rbs_type_name
|
22
34
|
- name: args
|
23
|
-
|
35
|
+
c_type: rbs_node_list
|
24
36
|
- name: RBS::AST::Declarations::ClassAlias
|
25
37
|
fields:
|
26
38
|
- name: new_name
|
39
|
+
c_type: rbs_type_name
|
27
40
|
- name: old_name
|
28
|
-
|
41
|
+
c_type: rbs_type_name
|
29
42
|
- name: comment
|
43
|
+
c_type: rbs_ast_comment
|
30
44
|
- name: annotations
|
45
|
+
c_type: rbs_node_list
|
31
46
|
- name: RBS::AST::Declarations::Constant
|
32
47
|
fields:
|
33
48
|
- name: name
|
49
|
+
c_type: rbs_type_name
|
34
50
|
- name: type
|
35
|
-
|
51
|
+
c_type: rbs_node
|
36
52
|
- name: comment
|
53
|
+
c_type: rbs_ast_comment
|
37
54
|
- name: annotations
|
55
|
+
c_type: rbs_node_list
|
38
56
|
- name: RBS::AST::Declarations::Global
|
39
57
|
fields:
|
40
58
|
- name: name
|
59
|
+
c_type: rbs_ast_symbol
|
41
60
|
- name: type
|
42
|
-
|
61
|
+
c_type: rbs_node
|
43
62
|
- name: comment
|
63
|
+
c_type: rbs_ast_comment
|
44
64
|
- name: annotations
|
65
|
+
c_type: rbs_node_list
|
45
66
|
- name: RBS::AST::Declarations::Interface
|
46
67
|
fields:
|
47
68
|
- name: name
|
69
|
+
c_type: rbs_type_name
|
48
70
|
- name: type_params
|
71
|
+
c_type: rbs_node_list
|
49
72
|
- name: members
|
73
|
+
c_type: rbs_node_list
|
50
74
|
- name: annotations
|
51
|
-
|
75
|
+
c_type: rbs_node_list
|
52
76
|
- name: comment
|
77
|
+
c_type: rbs_ast_comment
|
53
78
|
- name: RBS::AST::Declarations::Module
|
54
79
|
fields:
|
55
80
|
- name: name
|
81
|
+
c_type: rbs_type_name
|
56
82
|
- name: type_params
|
83
|
+
c_type: rbs_node_list
|
57
84
|
- name: self_types
|
85
|
+
c_type: rbs_node_list
|
58
86
|
- name: members
|
87
|
+
c_type: rbs_node_list
|
59
88
|
- name: annotations
|
60
|
-
|
89
|
+
c_type: rbs_node_list
|
61
90
|
- name: comment
|
91
|
+
c_type: rbs_ast_comment
|
62
92
|
- name: RBS::AST::Declarations::Module::Self
|
63
93
|
fields:
|
64
94
|
- name: name
|
95
|
+
c_type: rbs_type_name
|
65
96
|
- name: args
|
66
|
-
|
97
|
+
c_type: rbs_node_list
|
67
98
|
- name: RBS::AST::Declarations::ModuleAlias
|
68
99
|
fields:
|
69
100
|
- name: new_name
|
101
|
+
c_type: rbs_type_name
|
70
102
|
- name: old_name
|
71
|
-
|
103
|
+
c_type: rbs_type_name
|
72
104
|
- name: comment
|
105
|
+
c_type: rbs_ast_comment
|
73
106
|
- name: annotations
|
107
|
+
c_type: rbs_node_list
|
74
108
|
- name: RBS::AST::Declarations::TypeAlias
|
75
109
|
fields:
|
76
110
|
- name: name
|
111
|
+
c_type: rbs_type_name
|
77
112
|
- name: type_params
|
113
|
+
c_type: rbs_node_list
|
78
114
|
- name: type
|
115
|
+
c_type: rbs_node
|
79
116
|
- name: annotations
|
80
|
-
|
117
|
+
c_type: rbs_node_list
|
81
118
|
- name: comment
|
119
|
+
c_type: rbs_ast_comment
|
82
120
|
- name: RBS::AST::Directives::Use
|
83
121
|
fields:
|
84
122
|
- name: clauses
|
85
|
-
|
123
|
+
c_type: rbs_node_list
|
86
124
|
- name: RBS::AST::Directives::Use::SingleClause
|
87
125
|
fields:
|
88
126
|
- name: type_name
|
127
|
+
c_type: rbs_type_name
|
89
128
|
- name: new_name
|
90
|
-
|
129
|
+
c_type: rbs_ast_symbol
|
91
130
|
- name: RBS::AST::Directives::Use::WildcardClause
|
92
131
|
fields:
|
93
132
|
- name: namespace
|
94
|
-
|
133
|
+
c_type: rbs_namespace
|
134
|
+
c_name: rbs_namespace
|
95
135
|
- name: RBS::AST::Members::Alias
|
96
136
|
fields:
|
97
137
|
- name: new_name
|
138
|
+
c_type: rbs_ast_symbol
|
98
139
|
- name: old_name
|
140
|
+
c_type: rbs_ast_symbol
|
99
141
|
- name: kind
|
142
|
+
c_type: rbs_keyword
|
100
143
|
- name: annotations
|
101
|
-
|
144
|
+
c_type: rbs_node_list
|
102
145
|
- name: comment
|
146
|
+
c_type: rbs_ast_comment
|
103
147
|
- name: RBS::AST::Members::AttrAccessor
|
104
148
|
fields:
|
105
149
|
- name: name
|
150
|
+
c_type: rbs_ast_symbol
|
106
151
|
- name: type
|
152
|
+
c_type: rbs_node
|
107
153
|
- name: ivar_name
|
154
|
+
c_type: rbs_node # rbs_ast_symbol_t, NULL or rbs_ast_bool_new(false)
|
108
155
|
- name: kind
|
156
|
+
c_type: rbs_keyword
|
109
157
|
- name: annotations
|
110
|
-
|
158
|
+
c_type: rbs_node_list
|
111
159
|
- name: comment
|
160
|
+
c_type: rbs_ast_comment
|
112
161
|
- name: visibility
|
162
|
+
c_type: rbs_keyword
|
113
163
|
- name: RBS::AST::Members::AttrReader
|
114
164
|
fields:
|
115
165
|
- name: name
|
166
|
+
c_type: rbs_ast_symbol
|
116
167
|
- name: type
|
168
|
+
c_type: rbs_node
|
117
169
|
- name: ivar_name
|
170
|
+
c_type: rbs_node # rbs_ast_symbol_t, NULL or rbs_ast_bool_new(false)
|
118
171
|
- name: kind
|
172
|
+
c_type: rbs_keyword
|
119
173
|
- name: annotations
|
120
|
-
|
174
|
+
c_type: rbs_node_list
|
121
175
|
- name: comment
|
176
|
+
c_type: rbs_ast_comment
|
122
177
|
- name: visibility
|
178
|
+
c_type: rbs_keyword
|
123
179
|
- name: RBS::AST::Members::AttrWriter
|
124
180
|
fields:
|
125
181
|
- name: name
|
182
|
+
c_type: rbs_ast_symbol
|
126
183
|
- name: type
|
184
|
+
c_type: rbs_node
|
127
185
|
- name: ivar_name
|
186
|
+
c_type: rbs_node # rbs_ast_symbol_t, NULL or rbs_ast_bool_new(false)
|
128
187
|
- name: kind
|
188
|
+
c_type: rbs_keyword
|
129
189
|
- name: annotations
|
130
|
-
|
190
|
+
c_type: rbs_node_list
|
131
191
|
- name: comment
|
192
|
+
c_type: rbs_ast_comment
|
132
193
|
- name: visibility
|
194
|
+
c_type: rbs_keyword
|
133
195
|
- name: RBS::AST::Members::ClassInstanceVariable
|
134
196
|
fields:
|
135
197
|
- name: name
|
198
|
+
c_type: rbs_ast_symbol
|
136
199
|
- name: type
|
137
|
-
|
200
|
+
c_type: rbs_node
|
138
201
|
- name: comment
|
202
|
+
c_type: rbs_ast_comment
|
139
203
|
- name: RBS::AST::Members::ClassVariable
|
140
204
|
fields:
|
141
205
|
- name: name
|
206
|
+
c_type: rbs_ast_symbol
|
142
207
|
- name: type
|
143
|
-
|
208
|
+
c_type: rbs_node
|
144
209
|
- name: comment
|
210
|
+
c_type: rbs_ast_comment
|
145
211
|
- name: RBS::AST::Members::Extend
|
146
212
|
fields:
|
147
213
|
- name: name
|
214
|
+
c_type: rbs_type_name
|
148
215
|
- name: args
|
216
|
+
c_type: rbs_node_list
|
149
217
|
- name: annotations
|
150
|
-
|
218
|
+
c_type: rbs_node_list
|
151
219
|
- name: comment
|
220
|
+
c_type: rbs_ast_comment
|
152
221
|
- name: RBS::AST::Members::Include
|
153
222
|
fields:
|
154
223
|
- name: name
|
224
|
+
c_type: rbs_type_name
|
155
225
|
- name: args
|
226
|
+
c_type: rbs_node_list
|
156
227
|
- name: annotations
|
157
|
-
|
228
|
+
c_type: rbs_node_list
|
158
229
|
- name: comment
|
230
|
+
c_type: rbs_ast_comment
|
159
231
|
- name: RBS::AST::Members::InstanceVariable
|
160
232
|
fields:
|
161
233
|
- name: name
|
234
|
+
c_type: rbs_ast_symbol
|
162
235
|
- name: type
|
163
|
-
|
236
|
+
c_type: rbs_node
|
164
237
|
- name: comment
|
238
|
+
c_type: rbs_ast_comment
|
165
239
|
- name: RBS::AST::Members::MethodDefinition
|
166
240
|
fields:
|
167
241
|
- name: name
|
242
|
+
c_type: rbs_ast_symbol
|
168
243
|
- name: kind
|
244
|
+
c_type: rbs_keyword
|
169
245
|
- name: overloads
|
246
|
+
c_type: rbs_node_list
|
170
247
|
- name: annotations
|
171
|
-
|
248
|
+
c_type: rbs_node_list
|
172
249
|
- name: comment
|
250
|
+
c_type: rbs_ast_comment
|
173
251
|
- name: overloading
|
252
|
+
c_type: bool
|
174
253
|
- name: visibility
|
254
|
+
c_type: rbs_keyword
|
175
255
|
- name: RBS::AST::Members::MethodDefinition::Overload
|
256
|
+
expose_location: false
|
176
257
|
fields:
|
177
258
|
- name: annotations
|
259
|
+
c_type: rbs_node_list
|
178
260
|
- name: method_type
|
261
|
+
c_type: rbs_node
|
179
262
|
- name: RBS::AST::Members::Prepend
|
180
263
|
fields:
|
181
264
|
- name: name
|
265
|
+
c_type: rbs_type_name
|
182
266
|
- name: args
|
267
|
+
c_type: rbs_node_list
|
183
268
|
- name: annotations
|
184
|
-
|
269
|
+
c_type: rbs_node_list
|
185
270
|
- name: comment
|
271
|
+
c_type: rbs_ast_comment
|
186
272
|
- name: RBS::AST::Members::Private
|
187
|
-
fields:
|
188
|
-
- name: location
|
189
273
|
- name: RBS::AST::Members::Public
|
190
|
-
fields:
|
191
|
-
- name: location
|
192
274
|
- name: RBS::AST::TypeParam
|
193
275
|
fields:
|
194
276
|
- name: name
|
277
|
+
c_type: rbs_ast_symbol
|
195
278
|
- name: variance
|
279
|
+
c_type: rbs_keyword
|
196
280
|
- name: upper_bound
|
281
|
+
c_type: rbs_node
|
197
282
|
- name: default_type
|
283
|
+
c_type: rbs_node
|
198
284
|
- name: unchecked
|
199
|
-
|
285
|
+
c_type: bool
|
286
|
+
- name: RBS::AST::Integer
|
287
|
+
expose_to_ruby: false
|
288
|
+
expose_location: false
|
289
|
+
fields:
|
290
|
+
- name: string_representation
|
291
|
+
c_type: rbs_string
|
292
|
+
- name: RBS::AST::String
|
293
|
+
expose_to_ruby: false
|
294
|
+
expose_location: false
|
295
|
+
fields:
|
296
|
+
- name: string
|
297
|
+
c_type: rbs_string
|
200
298
|
- name: RBS::MethodType
|
201
299
|
fields:
|
202
300
|
- name: type_params
|
301
|
+
c_type: rbs_node_list
|
203
302
|
- name: type
|
303
|
+
c_type: rbs_node
|
204
304
|
- name: block
|
205
|
-
|
305
|
+
c_type: rbs_types_block
|
206
306
|
- name: RBS::Namespace
|
307
|
+
expose_location: false
|
207
308
|
fields:
|
208
309
|
- name: path
|
310
|
+
c_type: rbs_node_list
|
209
311
|
- name: absolute
|
312
|
+
c_type: bool
|
313
|
+
- name: RBS::Signature
|
314
|
+
expose_to_ruby: false
|
315
|
+
expose_location: false
|
316
|
+
fields:
|
317
|
+
- name: directives
|
318
|
+
c_type: rbs_node_list
|
319
|
+
- name: declarations
|
320
|
+
c_type: rbs_node_list
|
210
321
|
- name: RBS::TypeName
|
322
|
+
expose_location: false
|
211
323
|
fields:
|
212
324
|
- name: namespace
|
325
|
+
c_type: rbs_namespace
|
326
|
+
c_name: rbs_namespace
|
213
327
|
- name: name
|
328
|
+
c_type: rbs_ast_symbol
|
214
329
|
- name: RBS::Types::Alias
|
215
330
|
fields:
|
216
331
|
- name: name
|
332
|
+
c_type: rbs_type_name
|
217
333
|
- name: args
|
218
|
-
|
334
|
+
c_type: rbs_node_list
|
219
335
|
- name: RBS::Types::Bases::Any
|
220
336
|
fields:
|
221
337
|
- name: todo
|
222
|
-
|
338
|
+
c_type: bool
|
223
339
|
- name: RBS::Types::Bases::Bool
|
224
|
-
fields:
|
225
|
-
- name: location
|
226
340
|
- name: RBS::Types::Bases::Bottom
|
227
|
-
fields:
|
228
|
-
- name: location
|
229
341
|
- name: RBS::Types::Bases::Class
|
230
|
-
fields:
|
231
|
-
- name: location
|
232
342
|
- name: RBS::Types::Bases::Instance
|
233
|
-
fields:
|
234
|
-
- name: location
|
235
343
|
- name: RBS::Types::Bases::Nil
|
236
|
-
fields:
|
237
|
-
- name: location
|
238
344
|
- name: RBS::Types::Bases::Self
|
239
|
-
fields:
|
240
|
-
- name: location
|
241
345
|
- name: RBS::Types::Bases::Top
|
242
|
-
fields:
|
243
|
-
- name: location
|
244
346
|
- name: RBS::Types::Bases::Void
|
245
|
-
fields:
|
246
|
-
- name: location
|
247
347
|
- name: RBS::Types::Block
|
348
|
+
expose_location: false
|
248
349
|
fields:
|
249
350
|
- name: type
|
351
|
+
c_type: rbs_node
|
250
352
|
- name: required
|
353
|
+
c_type: bool
|
251
354
|
- name: self_type
|
355
|
+
c_type: rbs_node
|
252
356
|
- name: RBS::Types::ClassInstance
|
253
357
|
fields:
|
254
358
|
- name: name
|
359
|
+
c_type: rbs_type_name
|
255
360
|
- name: args
|
256
|
-
|
361
|
+
c_type: rbs_node_list
|
257
362
|
- name: RBS::Types::ClassSingleton
|
258
363
|
fields:
|
259
364
|
- name: name
|
260
|
-
|
365
|
+
c_type: rbs_type_name
|
261
366
|
- name: RBS::Types::Function
|
367
|
+
expose_location: false
|
262
368
|
fields:
|
263
369
|
- name: required_positionals
|
370
|
+
c_type: rbs_node_list
|
264
371
|
- name: optional_positionals
|
372
|
+
c_type: rbs_node_list
|
265
373
|
- name: rest_positionals
|
374
|
+
c_type: rbs_node
|
266
375
|
- name: trailing_positionals
|
376
|
+
c_type: rbs_node_list
|
267
377
|
- name: required_keywords
|
378
|
+
c_type: rbs_hash
|
268
379
|
- name: optional_keywords
|
380
|
+
c_type: rbs_hash
|
269
381
|
- name: rest_keywords
|
382
|
+
c_type: rbs_node
|
270
383
|
- name: return_type
|
384
|
+
c_type: rbs_node
|
271
385
|
- name: RBS::Types::Function::Param
|
272
386
|
fields:
|
273
387
|
- name: type
|
388
|
+
c_type: rbs_node
|
274
389
|
- name: name
|
275
|
-
|
390
|
+
c_type: rbs_ast_symbol
|
276
391
|
- name: RBS::Types::Interface
|
277
392
|
fields:
|
278
393
|
- name: name
|
394
|
+
c_type: rbs_type_name
|
279
395
|
- name: args
|
280
|
-
|
396
|
+
c_type: rbs_node_list
|
281
397
|
- name: RBS::Types::Intersection
|
282
398
|
fields:
|
283
399
|
- name: types
|
284
|
-
|
400
|
+
c_type: rbs_node_list
|
285
401
|
- name: RBS::Types::Literal
|
286
402
|
fields:
|
287
403
|
- name: literal
|
288
|
-
|
404
|
+
c_type: rbs_node
|
289
405
|
- name: RBS::Types::Optional
|
290
406
|
fields:
|
291
407
|
- name: type
|
292
|
-
|
408
|
+
c_type: rbs_node
|
293
409
|
- name: RBS::Types::Proc
|
294
410
|
fields:
|
295
411
|
- name: type
|
412
|
+
c_type: rbs_node
|
296
413
|
- name: block
|
297
|
-
|
414
|
+
c_type: rbs_types_block
|
298
415
|
- name: self_type
|
416
|
+
c_type: rbs_node
|
299
417
|
- name: RBS::Types::Record
|
300
418
|
fields:
|
301
419
|
- name: all_fields
|
302
|
-
|
420
|
+
c_type: rbs_hash
|
421
|
+
- name: RBS::Types::Record::FieldType
|
422
|
+
expose_to_ruby: false
|
423
|
+
expose_location: false
|
424
|
+
fields:
|
425
|
+
- name: type
|
426
|
+
c_type: rbs_node
|
427
|
+
- name: required
|
428
|
+
c_type: bool
|
303
429
|
- name: RBS::Types::Tuple
|
304
430
|
fields:
|
305
431
|
- name: types
|
306
|
-
|
432
|
+
c_type: rbs_node_list
|
307
433
|
- name: RBS::Types::Union
|
308
434
|
fields:
|
309
435
|
- name: types
|
310
|
-
|
436
|
+
c_type: rbs_node_list
|
311
437
|
- name: RBS::Types::UntypedFunction
|
438
|
+
expose_location: false
|
312
439
|
fields:
|
313
440
|
- name: return_type
|
441
|
+
c_type: rbs_node
|
314
442
|
- name: RBS::Types::Variable
|
315
443
|
fields:
|
316
444
|
- name: name
|
317
|
-
|
445
|
+
c_type: rbs_ast_symbol
|
446
|
+
- name: RBS::AST::Ruby::Annotations::NodeTypeAssertion
|
447
|
+
fields:
|
448
|
+
- name: prefix_location
|
449
|
+
c_type: rbs_location
|
450
|
+
- name: type
|
451
|
+
c_type: rbs_node
|
452
|
+
- name: RBS::AST::Ruby::Annotations::ColonMethodTypeAnnotation
|
453
|
+
fields:
|
454
|
+
- name: prefix_location
|
455
|
+
c_type: rbs_location
|
456
|
+
- name: annotations
|
457
|
+
c_type: rbs_node_list
|
458
|
+
- name: method_type
|
459
|
+
c_type: rbs_node
|
460
|
+
- name: RBS::AST::Ruby::Annotations::MethodTypesAnnotation
|
461
|
+
fields:
|
462
|
+
- name: prefix_location
|
463
|
+
c_type: rbs_location
|
464
|
+
- name: overloads
|
465
|
+
c_type: rbs_node_list
|
466
|
+
- name: vertical_bar_locations
|
467
|
+
c_type: rbs_location_list
|
468
|
+
- name: RBS::AST::Ruby::Annotations::SkipAnnotation
|
469
|
+
fields:
|
470
|
+
- name: prefix_location
|
471
|
+
c_type: rbs_location
|
472
|
+
- name: skip_location
|
473
|
+
c_type: rbs_location
|
474
|
+
- name: comment_location
|
475
|
+
c_type: rbs_location
|
476
|
+
- name: RBS::AST::Ruby::Annotations::ReturnTypeAnnotation
|
477
|
+
fields:
|
478
|
+
- name: prefix_location
|
479
|
+
c_type: rbs_location
|
480
|
+
- name: return_location
|
481
|
+
c_type: rbs_location
|
482
|
+
- name: colon_location
|
483
|
+
c_type: rbs_location
|
484
|
+
- name: return_type
|
485
|
+
c_type: rbs_node
|
486
|
+
- name: comment_location
|
487
|
+
c_type: rbs_location
|