rbs 4.1.0.pre.1 → 4.1.0

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.
Files changed (130) hide show
  1. checksums.yaml +4 -4
  2. data/.dockerignore +37 -0
  3. data/.github/workflows/bundle-update.yml +1 -1
  4. data/.github/workflows/c-check.yml +14 -6
  5. data/.github/workflows/comments.yml +2 -2
  6. data/.github/workflows/dependabot.yml +2 -2
  7. data/.github/workflows/jruby.yml +79 -0
  8. data/.github/workflows/milestone.yml +13 -2
  9. data/.github/workflows/ruby.yml +16 -4
  10. data/.github/workflows/rust.yml +13 -8
  11. data/.github/workflows/truffleruby.yml +54 -0
  12. data/.github/workflows/typecheck.yml +5 -2
  13. data/.github/workflows/wasm.yml +55 -0
  14. data/.github/workflows/windows.yml +8 -2
  15. data/.gitignore +8 -0
  16. data/CHANGELOG.md +88 -0
  17. data/Dockerfile.jruby +53 -0
  18. data/README.md +3 -3
  19. data/Rakefile +103 -1
  20. data/Steepfile +9 -0
  21. data/core/array.rbs +243 -180
  22. data/core/builtin.rbs +6 -6
  23. data/core/enumerable.rbs +109 -109
  24. data/core/enumerator/product.rbs +5 -5
  25. data/core/enumerator.rbs +28 -28
  26. data/core/file.rbs +24 -1018
  27. data/core/file_constants.rbs +463 -0
  28. data/core/file_stat.rbs +534 -0
  29. data/core/float.rbs +0 -24
  30. data/core/hash.rbs +117 -101
  31. data/core/integer.rbs +21 -58
  32. data/core/io.rbs +25 -7
  33. data/core/match_data.rbs +1 -1
  34. data/core/module.rbs +88 -74
  35. data/core/numeric.rbs +3 -0
  36. data/core/object_space/weak_key_map.rbs +7 -7
  37. data/core/pathname.rbs +0 -10
  38. data/core/ractor.rbs +0 -10
  39. data/core/range.rbs +23 -23
  40. data/core/rbs/ops.rbs +154 -0
  41. data/core/rbs/unnamed/argf.rbs +3 -3
  42. data/core/rubygems/errors.rbs +4 -1
  43. data/core/rubygems/requirement.rbs +0 -10
  44. data/core/rubygems/rubygems.rbs +4 -1
  45. data/core/rubygems/specification.rbs +8 -0
  46. data/core/rubygems/version.rbs +0 -160
  47. data/core/set.rbs +3 -3
  48. data/core/struct.rbs +16 -16
  49. data/core/thread.rbs +9 -14
  50. data/docs/CONTRIBUTING.md +2 -1
  51. data/docs/inline.md +36 -6
  52. data/docs/rbs_by_example.md +20 -20
  53. data/docs/release.md +69 -0
  54. data/docs/syntax.md +2 -2
  55. data/docs/wasm_serialization.md +80 -0
  56. data/ext/rbs_extension/ast_translation.c +1294 -973
  57. data/ext/rbs_extension/ast_translation.h +4 -0
  58. data/ext/rbs_extension/legacy_location.c +11 -6
  59. data/ext/rbs_extension/main.c +139 -4
  60. data/include/rbs/ast.h +9 -1
  61. data/include/rbs/serialize.h +39 -0
  62. data/lib/rbs/ast/ruby/comment_block.rb +6 -4
  63. data/lib/rbs/ast/ruby/helpers/location_helper.rb +1 -1
  64. data/lib/rbs/ast/ruby/members.rb +12 -1
  65. data/lib/rbs/buffer.rb +48 -11
  66. data/lib/rbs/collection/sources/git.rb +6 -0
  67. data/lib/rbs/definition_builder/method_builder.rb +12 -6
  68. data/lib/rbs/environment.rb +4 -3
  69. data/lib/rbs/inline_parser.rb +5 -3
  70. data/lib/rbs/namespace.rb +47 -11
  71. data/lib/rbs/parser_aux.rb +4 -2
  72. data/lib/rbs/prototype/rbi.rb +193 -25
  73. data/lib/rbs/prototype/runtime.rb +2 -0
  74. data/lib/rbs/resolver/type_name_resolver.rb +12 -14
  75. data/lib/rbs/type_name.rb +33 -13
  76. data/lib/rbs/unit_test/type_assertions.rb +9 -0
  77. data/lib/rbs/version.rb +1 -1
  78. data/lib/rbs/wasm/deserializer.rb +213 -0
  79. data/lib/rbs/wasm/location.rb +61 -0
  80. data/lib/rbs/wasm/parser.rb +137 -0
  81. data/lib/rbs/wasm/runtime.rb +196 -0
  82. data/lib/rbs/wasm/serialization_schema.rb +110 -0
  83. data/lib/rbs.rb +13 -2
  84. data/lib/rbs_jars.rb +39 -0
  85. data/lib/rdoc_plugin/parser.rb +5 -0
  86. data/rbs.gemspec +32 -2
  87. data/sig/ast/ruby/members.rbs +6 -1
  88. data/sig/buffer.rbs +19 -1
  89. data/sig/namespace.rbs +20 -0
  90. data/sig/parser.rbs +10 -0
  91. data/sig/prototype/rbi.rbs +33 -4
  92. data/sig/resolver/type_name_resolver.rbs +2 -4
  93. data/sig/typename.rbs +15 -0
  94. data/sig/unit_test/type_assertions.rbs +4 -0
  95. data/sig/wasm/deserializer.rbs +66 -0
  96. data/sig/wasm/serialization_schema.rbs +13 -0
  97. data/src/ast.c +78 -78
  98. data/src/lexer.c +97 -93
  99. data/src/lexer.re +1 -1
  100. data/src/lexstate.c +9 -1
  101. data/src/serialize.c +958 -0
  102. data/src/util/rbs_allocator.c +14 -8
  103. data/stdlib/abbrev/0/array.rbs +1 -1
  104. data/stdlib/csv/0/csv.rbs +5 -5
  105. data/stdlib/delegate/0/delegator.rbs +2 -1
  106. data/stdlib/digest/0/digest.rbs +11 -5
  107. data/stdlib/erb/0/erb.rbs +1 -1
  108. data/stdlib/etc/0/etc.rbs +18 -4
  109. data/stdlib/fileutils/0/fileutils.rbs +21 -21
  110. data/stdlib/ipaddr/0/ipaddr.rbs +0 -5
  111. data/stdlib/json/0/json.rbs +6 -6
  112. data/stdlib/monitor/0/monitor.rbs +2 -2
  113. data/stdlib/openssl/0/openssl.rbs +44 -38
  114. data/stdlib/resolv/0/resolv.rbs +1 -1
  115. data/stdlib/shellwords/0/shellwords.rbs +1 -1
  116. data/stdlib/stringio/0/stringio.rbs +32 -10
  117. data/stdlib/strscan/0/string_scanner.rbs +74 -55
  118. data/stdlib/tempfile/0/manifest.yaml +3 -0
  119. data/stdlib/timeout/0/timeout.rbs +0 -5
  120. data/stdlib/tsort/0/cyclic.rbs +1 -1
  121. data/stdlib/tsort/0/interfaces.rbs +8 -8
  122. data/stdlib/tsort/0/tsort.rbs +9 -9
  123. data/stdlib/uri/0/generic.rbs +0 -5
  124. data/stdlib/zlib/0/gzip_reader.rbs +2 -2
  125. data/stdlib/zlib/0/zstream.rbs +0 -1
  126. data/wasm/README.md +60 -0
  127. data/wasm/rbs_wasm.c +423 -0
  128. metadata +26 -5
  129. data/.vscode/extensions.json +0 -5
  130. data/.vscode/settings.json +0 -19
data/src/ast.c CHANGED
@@ -5,7 +5,7 @@
5
5
  /* templates/src/ast.c.erb */
6
6
  /*----------------------------------------------------------------------------*/
7
7
 
8
- #line 2 "prism/templates/src/ast.c.erb"
8
+ #line 2 "templates/src/ast.c.erb"
9
9
  #include "rbs/ast.h"
10
10
 
11
11
  #include <stdio.h>
@@ -292,7 +292,7 @@ rbs_ast_symbol_t *RBS_NONNULL rbs_ast_symbol_new(rbs_allocator_t *RBS_NONNULL al
292
292
  return instance;
293
293
  }
294
294
 
295
- #line 140 "prism/templates/src/ast.c.erb"
295
+ #line 140 "templates/src/ast.c.erb"
296
296
  rbs_ast_annotation_t *RBS_NONNULL rbs_ast_annotation_new(rbs_allocator_t *RBS_NONNULL allocator, rbs_location_range location, rbs_string_t string) {
297
297
  rbs_ast_annotation_t *instance = rbs_allocator_alloc(allocator, rbs_ast_annotation_t);
298
298
 
@@ -306,7 +306,7 @@ rbs_ast_annotation_t *RBS_NONNULL rbs_ast_annotation_new(rbs_allocator_t *RBS_NO
306
306
 
307
307
  return instance;
308
308
  }
309
- #line 140 "prism/templates/src/ast.c.erb"
309
+ #line 140 "templates/src/ast.c.erb"
310
310
  rbs_ast_bool_t *RBS_NONNULL rbs_ast_bool_new(rbs_allocator_t *RBS_NONNULL allocator, rbs_location_range location, bool value) {
311
311
  rbs_ast_bool_t *instance = rbs_allocator_alloc(allocator, rbs_ast_bool_t);
312
312
 
@@ -320,7 +320,7 @@ rbs_ast_bool_t *RBS_NONNULL rbs_ast_bool_new(rbs_allocator_t *RBS_NONNULL alloca
320
320
 
321
321
  return instance;
322
322
  }
323
- #line 140 "prism/templates/src/ast.c.erb"
323
+ #line 140 "templates/src/ast.c.erb"
324
324
  rbs_ast_comment_t *RBS_NONNULL rbs_ast_comment_new(rbs_allocator_t *RBS_NONNULL allocator, rbs_location_range location, rbs_string_t string) {
325
325
  rbs_ast_comment_t *instance = rbs_allocator_alloc(allocator, rbs_ast_comment_t);
326
326
 
@@ -334,7 +334,7 @@ rbs_ast_comment_t *RBS_NONNULL rbs_ast_comment_new(rbs_allocator_t *RBS_NONNULL
334
334
 
335
335
  return instance;
336
336
  }
337
- #line 140 "prism/templates/src/ast.c.erb"
337
+ #line 140 "templates/src/ast.c.erb"
338
338
  rbs_ast_declarations_class_t *RBS_NONNULL rbs_ast_declarations_class_new(rbs_allocator_t *RBS_NONNULL allocator, rbs_location_range location, rbs_type_name_t *RBS_NONNULL name, rbs_node_list_t *RBS_NONNULL type_params, rbs_ast_declarations_class_super_t *RBS_NULLABLE super_class, rbs_node_list_t *RBS_NONNULL members, rbs_node_list_t *RBS_NONNULL annotations, rbs_ast_comment_t *RBS_NULLABLE comment, rbs_location_range keyword_range, rbs_location_range name_range, rbs_location_range end_range) {
339
339
  rbs_ast_declarations_class_t *instance = rbs_allocator_alloc(allocator, rbs_ast_declarations_class_t);
340
340
 
@@ -358,7 +358,7 @@ rbs_ast_declarations_class_t *RBS_NONNULL rbs_ast_declarations_class_new(rbs_all
358
358
 
359
359
  return instance;
360
360
  }
361
- #line 140 "prism/templates/src/ast.c.erb"
361
+ #line 140 "templates/src/ast.c.erb"
362
362
  rbs_ast_declarations_class_super_t *RBS_NONNULL rbs_ast_declarations_class_super_new(rbs_allocator_t *RBS_NONNULL allocator, rbs_location_range location, rbs_type_name_t *RBS_NONNULL name, rbs_node_list_t *RBS_NONNULL args, rbs_location_range name_range) {
363
363
  rbs_ast_declarations_class_super_t *instance = rbs_allocator_alloc(allocator, rbs_ast_declarations_class_super_t);
364
364
 
@@ -375,7 +375,7 @@ rbs_ast_declarations_class_super_t *RBS_NONNULL rbs_ast_declarations_class_super
375
375
 
376
376
  return instance;
377
377
  }
378
- #line 140 "prism/templates/src/ast.c.erb"
378
+ #line 140 "templates/src/ast.c.erb"
379
379
  rbs_ast_declarations_class_alias_t *RBS_NONNULL rbs_ast_declarations_class_alias_new(rbs_allocator_t *RBS_NONNULL allocator, rbs_location_range location, rbs_type_name_t *RBS_NONNULL new_name, rbs_type_name_t *RBS_NONNULL old_name, rbs_ast_comment_t *RBS_NULLABLE comment, rbs_node_list_t *RBS_NONNULL annotations, rbs_location_range keyword_range, rbs_location_range new_name_range, rbs_location_range eq_range, rbs_location_range old_name_range) {
380
380
  rbs_ast_declarations_class_alias_t *instance = rbs_allocator_alloc(allocator, rbs_ast_declarations_class_alias_t);
381
381
 
@@ -396,7 +396,7 @@ rbs_ast_declarations_class_alias_t *RBS_NONNULL rbs_ast_declarations_class_alias
396
396
 
397
397
  return instance;
398
398
  }
399
- #line 140 "prism/templates/src/ast.c.erb"
399
+ #line 140 "templates/src/ast.c.erb"
400
400
  rbs_ast_declarations_constant_t *RBS_NONNULL rbs_ast_declarations_constant_new(rbs_allocator_t *RBS_NONNULL allocator, rbs_location_range location, rbs_type_name_t *RBS_NONNULL name, rbs_node_t *RBS_NONNULL type, rbs_ast_comment_t *RBS_NULLABLE comment, rbs_node_list_t *RBS_NONNULL annotations, rbs_location_range name_range, rbs_location_range colon_range) {
401
401
  rbs_ast_declarations_constant_t *instance = rbs_allocator_alloc(allocator, rbs_ast_declarations_constant_t);
402
402
 
@@ -415,7 +415,7 @@ rbs_ast_declarations_constant_t *RBS_NONNULL rbs_ast_declarations_constant_new(r
415
415
 
416
416
  return instance;
417
417
  }
418
- #line 140 "prism/templates/src/ast.c.erb"
418
+ #line 140 "templates/src/ast.c.erb"
419
419
  rbs_ast_declarations_global_t *RBS_NONNULL rbs_ast_declarations_global_new(rbs_allocator_t *RBS_NONNULL allocator, rbs_location_range location, rbs_ast_symbol_t *RBS_NONNULL name, rbs_node_t *RBS_NONNULL type, rbs_ast_comment_t *RBS_NULLABLE comment, rbs_node_list_t *RBS_NONNULL annotations, rbs_location_range name_range, rbs_location_range colon_range) {
420
420
  rbs_ast_declarations_global_t *instance = rbs_allocator_alloc(allocator, rbs_ast_declarations_global_t);
421
421
 
@@ -434,7 +434,7 @@ rbs_ast_declarations_global_t *RBS_NONNULL rbs_ast_declarations_global_new(rbs_a
434
434
 
435
435
  return instance;
436
436
  }
437
- #line 140 "prism/templates/src/ast.c.erb"
437
+ #line 140 "templates/src/ast.c.erb"
438
438
  rbs_ast_declarations_interface_t *RBS_NONNULL rbs_ast_declarations_interface_new(rbs_allocator_t *RBS_NONNULL allocator, rbs_location_range location, rbs_type_name_t *RBS_NONNULL name, rbs_node_list_t *RBS_NONNULL type_params, rbs_node_list_t *RBS_NONNULL members, rbs_node_list_t *RBS_NONNULL annotations, rbs_ast_comment_t *RBS_NULLABLE comment, rbs_location_range keyword_range, rbs_location_range name_range, rbs_location_range end_range) {
439
439
  rbs_ast_declarations_interface_t *instance = rbs_allocator_alloc(allocator, rbs_ast_declarations_interface_t);
440
440
 
@@ -456,7 +456,7 @@ rbs_ast_declarations_interface_t *RBS_NONNULL rbs_ast_declarations_interface_new
456
456
 
457
457
  return instance;
458
458
  }
459
- #line 140 "prism/templates/src/ast.c.erb"
459
+ #line 140 "templates/src/ast.c.erb"
460
460
  rbs_ast_declarations_module_t *RBS_NONNULL rbs_ast_declarations_module_new(rbs_allocator_t *RBS_NONNULL allocator, rbs_location_range location, rbs_type_name_t *RBS_NONNULL name, rbs_node_list_t *RBS_NONNULL type_params, rbs_node_list_t *RBS_NONNULL self_types, rbs_node_list_t *RBS_NONNULL members, rbs_node_list_t *RBS_NONNULL annotations, rbs_ast_comment_t *RBS_NULLABLE comment, rbs_location_range keyword_range, rbs_location_range name_range, rbs_location_range end_range) {
461
461
  rbs_ast_declarations_module_t *instance = rbs_allocator_alloc(allocator, rbs_ast_declarations_module_t);
462
462
 
@@ -481,7 +481,7 @@ rbs_ast_declarations_module_t *RBS_NONNULL rbs_ast_declarations_module_new(rbs_a
481
481
 
482
482
  return instance;
483
483
  }
484
- #line 140 "prism/templates/src/ast.c.erb"
484
+ #line 140 "templates/src/ast.c.erb"
485
485
  rbs_ast_declarations_module_self_t *RBS_NONNULL rbs_ast_declarations_module_self_new(rbs_allocator_t *RBS_NONNULL allocator, rbs_location_range location, rbs_type_name_t *RBS_NONNULL name, rbs_node_list_t *RBS_NONNULL args, rbs_location_range name_range) {
486
486
  rbs_ast_declarations_module_self_t *instance = rbs_allocator_alloc(allocator, rbs_ast_declarations_module_self_t);
487
487
 
@@ -498,7 +498,7 @@ rbs_ast_declarations_module_self_t *RBS_NONNULL rbs_ast_declarations_module_self
498
498
 
499
499
  return instance;
500
500
  }
501
- #line 140 "prism/templates/src/ast.c.erb"
501
+ #line 140 "templates/src/ast.c.erb"
502
502
  rbs_ast_declarations_module_alias_t *RBS_NONNULL rbs_ast_declarations_module_alias_new(rbs_allocator_t *RBS_NONNULL allocator, rbs_location_range location, rbs_type_name_t *RBS_NONNULL new_name, rbs_type_name_t *RBS_NONNULL old_name, rbs_ast_comment_t *RBS_NULLABLE comment, rbs_node_list_t *RBS_NONNULL annotations, rbs_location_range keyword_range, rbs_location_range new_name_range, rbs_location_range eq_range, rbs_location_range old_name_range) {
503
503
  rbs_ast_declarations_module_alias_t *instance = rbs_allocator_alloc(allocator, rbs_ast_declarations_module_alias_t);
504
504
 
@@ -519,7 +519,7 @@ rbs_ast_declarations_module_alias_t *RBS_NONNULL rbs_ast_declarations_module_ali
519
519
 
520
520
  return instance;
521
521
  }
522
- #line 140 "prism/templates/src/ast.c.erb"
522
+ #line 140 "templates/src/ast.c.erb"
523
523
  rbs_ast_declarations_type_alias_t *RBS_NONNULL rbs_ast_declarations_type_alias_new(rbs_allocator_t *RBS_NONNULL allocator, rbs_location_range location, rbs_type_name_t *RBS_NONNULL name, rbs_node_list_t *RBS_NONNULL type_params, rbs_node_t *RBS_NONNULL type, rbs_node_list_t *RBS_NONNULL annotations, rbs_ast_comment_t *RBS_NULLABLE comment, rbs_location_range keyword_range, rbs_location_range name_range, rbs_location_range eq_range) {
524
524
  rbs_ast_declarations_type_alias_t *instance = rbs_allocator_alloc(allocator, rbs_ast_declarations_type_alias_t);
525
525
 
@@ -541,7 +541,7 @@ rbs_ast_declarations_type_alias_t *RBS_NONNULL rbs_ast_declarations_type_alias_n
541
541
 
542
542
  return instance;
543
543
  }
544
- #line 140 "prism/templates/src/ast.c.erb"
544
+ #line 140 "templates/src/ast.c.erb"
545
545
  rbs_ast_directives_use_t *RBS_NONNULL rbs_ast_directives_use_new(rbs_allocator_t *RBS_NONNULL allocator, rbs_location_range location, rbs_node_list_t *RBS_NONNULL clauses, rbs_location_range keyword_range) {
546
546
  rbs_ast_directives_use_t *instance = rbs_allocator_alloc(allocator, rbs_ast_directives_use_t);
547
547
 
@@ -556,7 +556,7 @@ rbs_ast_directives_use_t *RBS_NONNULL rbs_ast_directives_use_new(rbs_allocator_t
556
556
 
557
557
  return instance;
558
558
  }
559
- #line 140 "prism/templates/src/ast.c.erb"
559
+ #line 140 "templates/src/ast.c.erb"
560
560
  rbs_ast_directives_use_single_clause_t *RBS_NONNULL rbs_ast_directives_use_single_clause_new(rbs_allocator_t *RBS_NONNULL allocator, rbs_location_range location, rbs_type_name_t *RBS_NONNULL type_name, rbs_ast_symbol_t *RBS_NULLABLE new_name, rbs_location_range type_name_range) {
561
561
  rbs_ast_directives_use_single_clause_t *instance = rbs_allocator_alloc(allocator, rbs_ast_directives_use_single_clause_t);
562
562
 
@@ -574,7 +574,7 @@ rbs_ast_directives_use_single_clause_t *RBS_NONNULL rbs_ast_directives_use_singl
574
574
 
575
575
  return instance;
576
576
  }
577
- #line 140 "prism/templates/src/ast.c.erb"
577
+ #line 140 "templates/src/ast.c.erb"
578
578
  rbs_ast_directives_use_wildcard_clause_t *RBS_NONNULL rbs_ast_directives_use_wildcard_clause_new(rbs_allocator_t *RBS_NONNULL allocator, rbs_location_range location, rbs_namespace_t *RBS_NONNULL rbs_namespace, rbs_location_range namespace_range, rbs_location_range star_range) {
579
579
  rbs_ast_directives_use_wildcard_clause_t *instance = rbs_allocator_alloc(allocator, rbs_ast_directives_use_wildcard_clause_t);
580
580
 
@@ -590,7 +590,7 @@ rbs_ast_directives_use_wildcard_clause_t *RBS_NONNULL rbs_ast_directives_use_wil
590
590
 
591
591
  return instance;
592
592
  }
593
- #line 140 "prism/templates/src/ast.c.erb"
593
+ #line 140 "templates/src/ast.c.erb"
594
594
  rbs_ast_integer_t *RBS_NONNULL rbs_ast_integer_new(rbs_allocator_t *RBS_NONNULL allocator, rbs_location_range location, rbs_string_t string_representation) {
595
595
  rbs_ast_integer_t *instance = rbs_allocator_alloc(allocator, rbs_ast_integer_t);
596
596
 
@@ -604,7 +604,7 @@ rbs_ast_integer_t *RBS_NONNULL rbs_ast_integer_new(rbs_allocator_t *RBS_NONNULL
604
604
 
605
605
  return instance;
606
606
  }
607
- #line 140 "prism/templates/src/ast.c.erb"
607
+ #line 140 "templates/src/ast.c.erb"
608
608
  rbs_ast_members_alias_t *RBS_NONNULL rbs_ast_members_alias_new(rbs_allocator_t *RBS_NONNULL allocator, rbs_location_range location, rbs_ast_symbol_t *RBS_NONNULL new_name, rbs_ast_symbol_t *RBS_NONNULL old_name, enum rbs_alias_kind kind, rbs_node_list_t *RBS_NONNULL annotations, rbs_ast_comment_t *RBS_NULLABLE comment, rbs_location_range keyword_range, rbs_location_range new_name_range, rbs_location_range old_name_range) {
609
609
  rbs_ast_members_alias_t *instance = rbs_allocator_alloc(allocator, rbs_ast_members_alias_t);
610
610
 
@@ -627,7 +627,7 @@ rbs_ast_members_alias_t *RBS_NONNULL rbs_ast_members_alias_new(rbs_allocator_t *
627
627
 
628
628
  return instance;
629
629
  }
630
- #line 140 "prism/templates/src/ast.c.erb"
630
+ #line 140 "templates/src/ast.c.erb"
631
631
  rbs_ast_members_attr_accessor_t *RBS_NONNULL rbs_ast_members_attr_accessor_new(rbs_allocator_t *RBS_NONNULL allocator, rbs_location_range location, rbs_ast_symbol_t *RBS_NONNULL name, rbs_node_t *RBS_NONNULL type, rbs_attr_ivar_name_t ivar_name, enum rbs_attribute_kind kind, rbs_node_list_t *RBS_NONNULL annotations, rbs_ast_comment_t *RBS_NULLABLE comment, enum rbs_attribute_visibility visibility, rbs_location_range keyword_range, rbs_location_range name_range, rbs_location_range colon_range) {
632
632
  rbs_ast_members_attr_accessor_t *instance = rbs_allocator_alloc(allocator, rbs_ast_members_attr_accessor_t);
633
633
 
@@ -654,7 +654,7 @@ rbs_ast_members_attr_accessor_t *RBS_NONNULL rbs_ast_members_attr_accessor_new(r
654
654
 
655
655
  return instance;
656
656
  }
657
- #line 140 "prism/templates/src/ast.c.erb"
657
+ #line 140 "templates/src/ast.c.erb"
658
658
  rbs_ast_members_attr_reader_t *RBS_NONNULL rbs_ast_members_attr_reader_new(rbs_allocator_t *RBS_NONNULL allocator, rbs_location_range location, rbs_ast_symbol_t *RBS_NONNULL name, rbs_node_t *RBS_NONNULL type, rbs_attr_ivar_name_t ivar_name, enum rbs_attribute_kind kind, rbs_node_list_t *RBS_NONNULL annotations, rbs_ast_comment_t *RBS_NULLABLE comment, enum rbs_attribute_visibility visibility, rbs_location_range keyword_range, rbs_location_range name_range, rbs_location_range colon_range) {
659
659
  rbs_ast_members_attr_reader_t *instance = rbs_allocator_alloc(allocator, rbs_ast_members_attr_reader_t);
660
660
 
@@ -681,7 +681,7 @@ rbs_ast_members_attr_reader_t *RBS_NONNULL rbs_ast_members_attr_reader_new(rbs_a
681
681
 
682
682
  return instance;
683
683
  }
684
- #line 140 "prism/templates/src/ast.c.erb"
684
+ #line 140 "templates/src/ast.c.erb"
685
685
  rbs_ast_members_attr_writer_t *RBS_NONNULL rbs_ast_members_attr_writer_new(rbs_allocator_t *RBS_NONNULL allocator, rbs_location_range location, rbs_ast_symbol_t *RBS_NONNULL name, rbs_node_t *RBS_NONNULL type, rbs_attr_ivar_name_t ivar_name, enum rbs_attribute_kind kind, rbs_node_list_t *RBS_NONNULL annotations, rbs_ast_comment_t *RBS_NULLABLE comment, enum rbs_attribute_visibility visibility, rbs_location_range keyword_range, rbs_location_range name_range, rbs_location_range colon_range) {
686
686
  rbs_ast_members_attr_writer_t *instance = rbs_allocator_alloc(allocator, rbs_ast_members_attr_writer_t);
687
687
 
@@ -708,7 +708,7 @@ rbs_ast_members_attr_writer_t *RBS_NONNULL rbs_ast_members_attr_writer_new(rbs_a
708
708
 
709
709
  return instance;
710
710
  }
711
- #line 140 "prism/templates/src/ast.c.erb"
711
+ #line 140 "templates/src/ast.c.erb"
712
712
  rbs_ast_members_class_instance_variable_t *RBS_NONNULL rbs_ast_members_class_instance_variable_new(rbs_allocator_t *RBS_NONNULL allocator, rbs_location_range location, rbs_ast_symbol_t *RBS_NONNULL name, rbs_node_t *RBS_NONNULL type, rbs_ast_comment_t *RBS_NULLABLE comment, rbs_location_range name_range, rbs_location_range colon_range) {
713
713
  rbs_ast_members_class_instance_variable_t *instance = rbs_allocator_alloc(allocator, rbs_ast_members_class_instance_variable_t);
714
714
 
@@ -727,7 +727,7 @@ rbs_ast_members_class_instance_variable_t *RBS_NONNULL rbs_ast_members_class_ins
727
727
 
728
728
  return instance;
729
729
  }
730
- #line 140 "prism/templates/src/ast.c.erb"
730
+ #line 140 "templates/src/ast.c.erb"
731
731
  rbs_ast_members_class_variable_t *RBS_NONNULL rbs_ast_members_class_variable_new(rbs_allocator_t *RBS_NONNULL allocator, rbs_location_range location, rbs_ast_symbol_t *RBS_NONNULL name, rbs_node_t *RBS_NONNULL type, rbs_ast_comment_t *RBS_NULLABLE comment, rbs_location_range name_range, rbs_location_range colon_range) {
732
732
  rbs_ast_members_class_variable_t *instance = rbs_allocator_alloc(allocator, rbs_ast_members_class_variable_t);
733
733
 
@@ -746,7 +746,7 @@ rbs_ast_members_class_variable_t *RBS_NONNULL rbs_ast_members_class_variable_new
746
746
 
747
747
  return instance;
748
748
  }
749
- #line 140 "prism/templates/src/ast.c.erb"
749
+ #line 140 "templates/src/ast.c.erb"
750
750
  rbs_ast_members_extend_t *RBS_NONNULL rbs_ast_members_extend_new(rbs_allocator_t *RBS_NONNULL allocator, rbs_location_range location, rbs_type_name_t *RBS_NONNULL name, rbs_node_list_t *RBS_NONNULL args, rbs_node_list_t *RBS_NONNULL annotations, rbs_ast_comment_t *RBS_NULLABLE comment, rbs_location_range name_range, rbs_location_range keyword_range) {
751
751
  rbs_ast_members_extend_t *instance = rbs_allocator_alloc(allocator, rbs_ast_members_extend_t);
752
752
 
@@ -766,7 +766,7 @@ rbs_ast_members_extend_t *RBS_NONNULL rbs_ast_members_extend_new(rbs_allocator_t
766
766
 
767
767
  return instance;
768
768
  }
769
- #line 140 "prism/templates/src/ast.c.erb"
769
+ #line 140 "templates/src/ast.c.erb"
770
770
  rbs_ast_members_include_t *RBS_NONNULL rbs_ast_members_include_new(rbs_allocator_t *RBS_NONNULL allocator, rbs_location_range location, rbs_type_name_t *RBS_NONNULL name, rbs_node_list_t *RBS_NONNULL args, rbs_node_list_t *RBS_NONNULL annotations, rbs_ast_comment_t *RBS_NULLABLE comment, rbs_location_range name_range, rbs_location_range keyword_range) {
771
771
  rbs_ast_members_include_t *instance = rbs_allocator_alloc(allocator, rbs_ast_members_include_t);
772
772
 
@@ -786,7 +786,7 @@ rbs_ast_members_include_t *RBS_NONNULL rbs_ast_members_include_new(rbs_allocator
786
786
 
787
787
  return instance;
788
788
  }
789
- #line 140 "prism/templates/src/ast.c.erb"
789
+ #line 140 "templates/src/ast.c.erb"
790
790
  rbs_ast_members_instance_variable_t *RBS_NONNULL rbs_ast_members_instance_variable_new(rbs_allocator_t *RBS_NONNULL allocator, rbs_location_range location, rbs_ast_symbol_t *RBS_NONNULL name, rbs_node_t *RBS_NONNULL type, rbs_ast_comment_t *RBS_NULLABLE comment, rbs_location_range name_range, rbs_location_range colon_range) {
791
791
  rbs_ast_members_instance_variable_t *instance = rbs_allocator_alloc(allocator, rbs_ast_members_instance_variable_t);
792
792
 
@@ -805,7 +805,7 @@ rbs_ast_members_instance_variable_t *RBS_NONNULL rbs_ast_members_instance_variab
805
805
 
806
806
  return instance;
807
807
  }
808
- #line 140 "prism/templates/src/ast.c.erb"
808
+ #line 140 "templates/src/ast.c.erb"
809
809
  rbs_ast_members_method_definition_t *RBS_NONNULL rbs_ast_members_method_definition_new(rbs_allocator_t *RBS_NONNULL allocator, rbs_location_range location, rbs_ast_symbol_t *RBS_NONNULL name, enum rbs_method_definition_kind kind, rbs_node_list_t *RBS_NONNULL overloads, rbs_node_list_t *RBS_NONNULL annotations, rbs_ast_comment_t *RBS_NULLABLE comment, bool overloading, enum rbs_method_definition_visibility visibility, rbs_location_range keyword_range, rbs_location_range name_range) {
810
810
  rbs_ast_members_method_definition_t *instance = rbs_allocator_alloc(allocator, rbs_ast_members_method_definition_t);
811
811
 
@@ -830,7 +830,7 @@ rbs_ast_members_method_definition_t *RBS_NONNULL rbs_ast_members_method_definiti
830
830
 
831
831
  return instance;
832
832
  }
833
- #line 140 "prism/templates/src/ast.c.erb"
833
+ #line 140 "templates/src/ast.c.erb"
834
834
  rbs_ast_members_method_definition_overload_t *RBS_NONNULL rbs_ast_members_method_definition_overload_new(rbs_allocator_t *RBS_NONNULL allocator, rbs_location_range location, rbs_node_list_t *RBS_NONNULL annotations, rbs_node_t *RBS_NONNULL method_type) {
835
835
  rbs_ast_members_method_definition_overload_t *instance = rbs_allocator_alloc(allocator, rbs_ast_members_method_definition_overload_t);
836
836
 
@@ -845,7 +845,7 @@ rbs_ast_members_method_definition_overload_t *RBS_NONNULL rbs_ast_members_method
845
845
 
846
846
  return instance;
847
847
  }
848
- #line 140 "prism/templates/src/ast.c.erb"
848
+ #line 140 "templates/src/ast.c.erb"
849
849
  rbs_ast_members_prepend_t *RBS_NONNULL rbs_ast_members_prepend_new(rbs_allocator_t *RBS_NONNULL allocator, rbs_location_range location, rbs_type_name_t *RBS_NONNULL name, rbs_node_list_t *RBS_NONNULL args, rbs_node_list_t *RBS_NONNULL annotations, rbs_ast_comment_t *RBS_NULLABLE comment, rbs_location_range name_range, rbs_location_range keyword_range) {
850
850
  rbs_ast_members_prepend_t *instance = rbs_allocator_alloc(allocator, rbs_ast_members_prepend_t);
851
851
 
@@ -865,7 +865,7 @@ rbs_ast_members_prepend_t *RBS_NONNULL rbs_ast_members_prepend_new(rbs_allocator
865
865
 
866
866
  return instance;
867
867
  }
868
- #line 140 "prism/templates/src/ast.c.erb"
868
+ #line 140 "templates/src/ast.c.erb"
869
869
  rbs_ast_members_private_t *RBS_NONNULL rbs_ast_members_private_new(rbs_allocator_t *RBS_NONNULL allocator, rbs_location_range location) {
870
870
  rbs_ast_members_private_t *instance = rbs_allocator_alloc(allocator, rbs_ast_members_private_t);
871
871
 
@@ -878,7 +878,7 @@ rbs_ast_members_private_t *RBS_NONNULL rbs_ast_members_private_new(rbs_allocator
878
878
 
879
879
  return instance;
880
880
  }
881
- #line 140 "prism/templates/src/ast.c.erb"
881
+ #line 140 "templates/src/ast.c.erb"
882
882
  rbs_ast_members_public_t *RBS_NONNULL rbs_ast_members_public_new(rbs_allocator_t *RBS_NONNULL allocator, rbs_location_range location) {
883
883
  rbs_ast_members_public_t *instance = rbs_allocator_alloc(allocator, rbs_ast_members_public_t);
884
884
 
@@ -891,7 +891,7 @@ rbs_ast_members_public_t *RBS_NONNULL rbs_ast_members_public_new(rbs_allocator_t
891
891
 
892
892
  return instance;
893
893
  }
894
- #line 140 "prism/templates/src/ast.c.erb"
894
+ #line 140 "templates/src/ast.c.erb"
895
895
  rbs_ast_ruby_annotations_block_param_type_annotation_t *RBS_NONNULL rbs_ast_ruby_annotations_block_param_type_annotation_new(rbs_allocator_t *RBS_NONNULL allocator, rbs_location_range location, rbs_location_range prefix_location, rbs_location_range ampersand_location, rbs_location_range name_location, rbs_location_range colon_location, rbs_location_range question_location, rbs_location_range type_location, rbs_node_t *RBS_NONNULL type_, rbs_location_range comment_location) {
896
896
  rbs_ast_ruby_annotations_block_param_type_annotation_t *instance = rbs_allocator_alloc(allocator, rbs_ast_ruby_annotations_block_param_type_annotation_t);
897
897
 
@@ -912,7 +912,7 @@ rbs_ast_ruby_annotations_block_param_type_annotation_t *RBS_NONNULL rbs_ast_ruby
912
912
 
913
913
  return instance;
914
914
  }
915
- #line 140 "prism/templates/src/ast.c.erb"
915
+ #line 140 "templates/src/ast.c.erb"
916
916
  rbs_ast_ruby_annotations_class_alias_annotation_t *RBS_NONNULL rbs_ast_ruby_annotations_class_alias_annotation_new(rbs_allocator_t *RBS_NONNULL allocator, rbs_location_range location, rbs_location_range prefix_location, rbs_location_range keyword_location, rbs_type_name_t *RBS_NONNULL type_name, rbs_location_range type_name_location) {
917
917
  rbs_ast_ruby_annotations_class_alias_annotation_t *instance = rbs_allocator_alloc(allocator, rbs_ast_ruby_annotations_class_alias_annotation_t);
918
918
 
@@ -929,7 +929,7 @@ rbs_ast_ruby_annotations_class_alias_annotation_t *RBS_NONNULL rbs_ast_ruby_anno
929
929
 
930
930
  return instance;
931
931
  }
932
- #line 140 "prism/templates/src/ast.c.erb"
932
+ #line 140 "templates/src/ast.c.erb"
933
933
  rbs_ast_ruby_annotations_colon_method_type_annotation_t *RBS_NONNULL rbs_ast_ruby_annotations_colon_method_type_annotation_new(rbs_allocator_t *RBS_NONNULL allocator, rbs_location_range location, rbs_location_range prefix_location, rbs_node_list_t *RBS_NONNULL annotations, rbs_node_t *RBS_NONNULL method_type) {
934
934
  rbs_ast_ruby_annotations_colon_method_type_annotation_t *instance = rbs_allocator_alloc(allocator, rbs_ast_ruby_annotations_colon_method_type_annotation_t);
935
935
 
@@ -945,7 +945,7 @@ rbs_ast_ruby_annotations_colon_method_type_annotation_t *RBS_NONNULL rbs_ast_rub
945
945
 
946
946
  return instance;
947
947
  }
948
- #line 140 "prism/templates/src/ast.c.erb"
948
+ #line 140 "templates/src/ast.c.erb"
949
949
  rbs_ast_ruby_annotations_double_splat_param_type_annotation_t *RBS_NONNULL rbs_ast_ruby_annotations_double_splat_param_type_annotation_new(rbs_allocator_t *RBS_NONNULL allocator, rbs_location_range location, rbs_location_range prefix_location, rbs_location_range star2_location, rbs_location_range name_location, rbs_location_range colon_location, rbs_node_t *RBS_NONNULL param_type, rbs_location_range comment_location) {
950
950
  rbs_ast_ruby_annotations_double_splat_param_type_annotation_t *instance = rbs_allocator_alloc(allocator, rbs_ast_ruby_annotations_double_splat_param_type_annotation_t);
951
951
 
@@ -964,7 +964,7 @@ rbs_ast_ruby_annotations_double_splat_param_type_annotation_t *RBS_NONNULL rbs_a
964
964
 
965
965
  return instance;
966
966
  }
967
- #line 140 "prism/templates/src/ast.c.erb"
967
+ #line 140 "templates/src/ast.c.erb"
968
968
  rbs_ast_ruby_annotations_instance_variable_annotation_t *RBS_NONNULL rbs_ast_ruby_annotations_instance_variable_annotation_new(rbs_allocator_t *RBS_NONNULL allocator, rbs_location_range location, rbs_location_range prefix_location, rbs_ast_symbol_t *RBS_NONNULL ivar_name, rbs_location_range ivar_name_location, rbs_location_range colon_location, rbs_node_t *RBS_NONNULL type, rbs_location_range comment_location) {
969
969
  rbs_ast_ruby_annotations_instance_variable_annotation_t *instance = rbs_allocator_alloc(allocator, rbs_ast_ruby_annotations_instance_variable_annotation_t);
970
970
 
@@ -983,7 +983,7 @@ rbs_ast_ruby_annotations_instance_variable_annotation_t *RBS_NONNULL rbs_ast_rub
983
983
 
984
984
  return instance;
985
985
  }
986
- #line 140 "prism/templates/src/ast.c.erb"
986
+ #line 140 "templates/src/ast.c.erb"
987
987
  rbs_ast_ruby_annotations_method_types_annotation_t *RBS_NONNULL rbs_ast_ruby_annotations_method_types_annotation_new(rbs_allocator_t *RBS_NONNULL allocator, rbs_location_range location, rbs_location_range prefix_location, rbs_node_list_t *RBS_NONNULL overloads, rbs_location_range_list_t *RBS_NONNULL vertical_bar_locations, rbs_location_range dot3_location) {
988
988
  rbs_ast_ruby_annotations_method_types_annotation_t *instance = rbs_allocator_alloc(allocator, rbs_ast_ruby_annotations_method_types_annotation_t);
989
989
 
@@ -1000,7 +1000,7 @@ rbs_ast_ruby_annotations_method_types_annotation_t *RBS_NONNULL rbs_ast_ruby_ann
1000
1000
 
1001
1001
  return instance;
1002
1002
  }
1003
- #line 140 "prism/templates/src/ast.c.erb"
1003
+ #line 140 "templates/src/ast.c.erb"
1004
1004
  rbs_ast_ruby_annotations_module_alias_annotation_t *RBS_NONNULL rbs_ast_ruby_annotations_module_alias_annotation_new(rbs_allocator_t *RBS_NONNULL allocator, rbs_location_range location, rbs_location_range prefix_location, rbs_location_range keyword_location, rbs_type_name_t *RBS_NONNULL type_name, rbs_location_range type_name_location) {
1005
1005
  rbs_ast_ruby_annotations_module_alias_annotation_t *instance = rbs_allocator_alloc(allocator, rbs_ast_ruby_annotations_module_alias_annotation_t);
1006
1006
 
@@ -1017,7 +1017,7 @@ rbs_ast_ruby_annotations_module_alias_annotation_t *RBS_NONNULL rbs_ast_ruby_ann
1017
1017
 
1018
1018
  return instance;
1019
1019
  }
1020
- #line 140 "prism/templates/src/ast.c.erb"
1020
+ #line 140 "templates/src/ast.c.erb"
1021
1021
  rbs_ast_ruby_annotations_module_self_annotation_t *RBS_NONNULL rbs_ast_ruby_annotations_module_self_annotation_new(rbs_allocator_t *RBS_NONNULL allocator, rbs_location_range location, rbs_location_range prefix_location, rbs_location_range keyword_location, rbs_location_range colon_location, rbs_type_name_t *RBS_NONNULL name, rbs_node_list_t *RBS_NONNULL args, rbs_location_range open_bracket_location, rbs_location_range close_bracket_location, rbs_location_range_list_t *RBS_NONNULL args_comma_locations, rbs_location_range comment_location) {
1022
1022
  rbs_ast_ruby_annotations_module_self_annotation_t *instance = rbs_allocator_alloc(allocator, rbs_ast_ruby_annotations_module_self_annotation_t);
1023
1023
 
@@ -1039,7 +1039,7 @@ rbs_ast_ruby_annotations_module_self_annotation_t *RBS_NONNULL rbs_ast_ruby_anno
1039
1039
 
1040
1040
  return instance;
1041
1041
  }
1042
- #line 140 "prism/templates/src/ast.c.erb"
1042
+ #line 140 "templates/src/ast.c.erb"
1043
1043
  rbs_ast_ruby_annotations_node_type_assertion_t *RBS_NONNULL rbs_ast_ruby_annotations_node_type_assertion_new(rbs_allocator_t *RBS_NONNULL allocator, rbs_location_range location, rbs_location_range prefix_location, rbs_node_t *RBS_NONNULL type) {
1044
1044
  rbs_ast_ruby_annotations_node_type_assertion_t *instance = rbs_allocator_alloc(allocator, rbs_ast_ruby_annotations_node_type_assertion_t);
1045
1045
 
@@ -1054,7 +1054,7 @@ rbs_ast_ruby_annotations_node_type_assertion_t *RBS_NONNULL rbs_ast_ruby_annotat
1054
1054
 
1055
1055
  return instance;
1056
1056
  }
1057
- #line 140 "prism/templates/src/ast.c.erb"
1057
+ #line 140 "templates/src/ast.c.erb"
1058
1058
  rbs_ast_ruby_annotations_param_type_annotation_t *RBS_NONNULL rbs_ast_ruby_annotations_param_type_annotation_new(rbs_allocator_t *RBS_NONNULL allocator, rbs_location_range location, rbs_location_range prefix_location, rbs_location_range name_location, rbs_location_range colon_location, rbs_node_t *RBS_NONNULL param_type, rbs_location_range comment_location) {
1059
1059
  rbs_ast_ruby_annotations_param_type_annotation_t *instance = rbs_allocator_alloc(allocator, rbs_ast_ruby_annotations_param_type_annotation_t);
1060
1060
 
@@ -1072,7 +1072,7 @@ rbs_ast_ruby_annotations_param_type_annotation_t *RBS_NONNULL rbs_ast_ruby_annot
1072
1072
 
1073
1073
  return instance;
1074
1074
  }
1075
- #line 140 "prism/templates/src/ast.c.erb"
1075
+ #line 140 "templates/src/ast.c.erb"
1076
1076
  rbs_ast_ruby_annotations_return_type_annotation_t *RBS_NONNULL rbs_ast_ruby_annotations_return_type_annotation_new(rbs_allocator_t *RBS_NONNULL allocator, rbs_location_range location, rbs_location_range prefix_location, rbs_location_range return_location, rbs_location_range colon_location, rbs_node_t *RBS_NONNULL return_type, rbs_location_range comment_location) {
1077
1077
  rbs_ast_ruby_annotations_return_type_annotation_t *instance = rbs_allocator_alloc(allocator, rbs_ast_ruby_annotations_return_type_annotation_t);
1078
1078
 
@@ -1090,7 +1090,7 @@ rbs_ast_ruby_annotations_return_type_annotation_t *RBS_NONNULL rbs_ast_ruby_anno
1090
1090
 
1091
1091
  return instance;
1092
1092
  }
1093
- #line 140 "prism/templates/src/ast.c.erb"
1093
+ #line 140 "templates/src/ast.c.erb"
1094
1094
  rbs_ast_ruby_annotations_skip_annotation_t *RBS_NONNULL rbs_ast_ruby_annotations_skip_annotation_new(rbs_allocator_t *RBS_NONNULL allocator, rbs_location_range location, rbs_location_range prefix_location, rbs_location_range skip_location, rbs_location_range comment_location) {
1095
1095
  rbs_ast_ruby_annotations_skip_annotation_t *instance = rbs_allocator_alloc(allocator, rbs_ast_ruby_annotations_skip_annotation_t);
1096
1096
 
@@ -1106,7 +1106,7 @@ rbs_ast_ruby_annotations_skip_annotation_t *RBS_NONNULL rbs_ast_ruby_annotations
1106
1106
 
1107
1107
  return instance;
1108
1108
  }
1109
- #line 140 "prism/templates/src/ast.c.erb"
1109
+ #line 140 "templates/src/ast.c.erb"
1110
1110
  rbs_ast_ruby_annotations_splat_param_type_annotation_t *RBS_NONNULL rbs_ast_ruby_annotations_splat_param_type_annotation_new(rbs_allocator_t *RBS_NONNULL allocator, rbs_location_range location, rbs_location_range prefix_location, rbs_location_range star_location, rbs_location_range name_location, rbs_location_range colon_location, rbs_node_t *RBS_NONNULL param_type, rbs_location_range comment_location) {
1111
1111
  rbs_ast_ruby_annotations_splat_param_type_annotation_t *instance = rbs_allocator_alloc(allocator, rbs_ast_ruby_annotations_splat_param_type_annotation_t);
1112
1112
 
@@ -1125,7 +1125,7 @@ rbs_ast_ruby_annotations_splat_param_type_annotation_t *RBS_NONNULL rbs_ast_ruby
1125
1125
 
1126
1126
  return instance;
1127
1127
  }
1128
- #line 140 "prism/templates/src/ast.c.erb"
1128
+ #line 140 "templates/src/ast.c.erb"
1129
1129
  rbs_ast_ruby_annotations_type_application_annotation_t *RBS_NONNULL rbs_ast_ruby_annotations_type_application_annotation_new(rbs_allocator_t *RBS_NONNULL allocator, rbs_location_range location, rbs_location_range prefix_location, rbs_node_list_t *RBS_NONNULL type_args, rbs_location_range close_bracket_location, rbs_location_range_list_t *RBS_NONNULL comma_locations) {
1130
1130
  rbs_ast_ruby_annotations_type_application_annotation_t *instance = rbs_allocator_alloc(allocator, rbs_ast_ruby_annotations_type_application_annotation_t);
1131
1131
 
@@ -1142,7 +1142,7 @@ rbs_ast_ruby_annotations_type_application_annotation_t *RBS_NONNULL rbs_ast_ruby
1142
1142
 
1143
1143
  return instance;
1144
1144
  }
1145
- #line 140 "prism/templates/src/ast.c.erb"
1145
+ #line 140 "templates/src/ast.c.erb"
1146
1146
  rbs_ast_string_t *RBS_NONNULL rbs_ast_string_new(rbs_allocator_t *RBS_NONNULL allocator, rbs_location_range location, rbs_string_t string) {
1147
1147
  rbs_ast_string_t *instance = rbs_allocator_alloc(allocator, rbs_ast_string_t);
1148
1148
 
@@ -1156,7 +1156,7 @@ rbs_ast_string_t *RBS_NONNULL rbs_ast_string_new(rbs_allocator_t *RBS_NONNULL al
1156
1156
 
1157
1157
  return instance;
1158
1158
  }
1159
- #line 140 "prism/templates/src/ast.c.erb"
1159
+ #line 140 "templates/src/ast.c.erb"
1160
1160
  rbs_ast_type_param_t *RBS_NONNULL rbs_ast_type_param_new(rbs_allocator_t *RBS_NONNULL allocator, rbs_location_range location, rbs_ast_symbol_t *RBS_NONNULL name, enum rbs_type_param_variance variance, rbs_node_t *RBS_NULLABLE upper_bound, rbs_node_t *RBS_NULLABLE lower_bound, rbs_node_t *RBS_NULLABLE default_type, bool unchecked, rbs_location_range name_range) {
1161
1161
  rbs_ast_type_param_t *instance = rbs_allocator_alloc(allocator, rbs_ast_type_param_t);
1162
1162
 
@@ -1181,7 +1181,7 @@ rbs_ast_type_param_t *RBS_NONNULL rbs_ast_type_param_new(rbs_allocator_t *RBS_NO
1181
1181
 
1182
1182
  return instance;
1183
1183
  }
1184
- #line 140 "prism/templates/src/ast.c.erb"
1184
+ #line 140 "templates/src/ast.c.erb"
1185
1185
  rbs_method_type_t *RBS_NONNULL rbs_method_type_new(rbs_allocator_t *RBS_NONNULL allocator, rbs_location_range location, rbs_node_list_t *RBS_NONNULL type_params, rbs_node_t *RBS_NONNULL type, rbs_types_block_t *RBS_NULLABLE block, rbs_location_range type_range) {
1186
1186
  rbs_method_type_t *instance = rbs_allocator_alloc(allocator, rbs_method_type_t);
1187
1187
 
@@ -1199,7 +1199,7 @@ rbs_method_type_t *RBS_NONNULL rbs_method_type_new(rbs_allocator_t *RBS_NONNULL
1199
1199
 
1200
1200
  return instance;
1201
1201
  }
1202
- #line 140 "prism/templates/src/ast.c.erb"
1202
+ #line 140 "templates/src/ast.c.erb"
1203
1203
  rbs_namespace_t *RBS_NONNULL rbs_namespace_new(rbs_allocator_t *RBS_NONNULL allocator, rbs_location_range location, rbs_node_list_t *RBS_NONNULL path, bool absolute) {
1204
1204
  rbs_namespace_t *instance = rbs_allocator_alloc(allocator, rbs_namespace_t);
1205
1205
 
@@ -1214,7 +1214,7 @@ rbs_namespace_t *RBS_NONNULL rbs_namespace_new(rbs_allocator_t *RBS_NONNULL allo
1214
1214
 
1215
1215
  return instance;
1216
1216
  }
1217
- #line 140 "prism/templates/src/ast.c.erb"
1217
+ #line 140 "templates/src/ast.c.erb"
1218
1218
  rbs_signature_t *RBS_NONNULL rbs_signature_new(rbs_allocator_t *RBS_NONNULL allocator, rbs_location_range location, rbs_node_list_t *RBS_NONNULL directives, rbs_node_list_t *RBS_NONNULL declarations) {
1219
1219
  rbs_signature_t *instance = rbs_allocator_alloc(allocator, rbs_signature_t);
1220
1220
 
@@ -1229,7 +1229,7 @@ rbs_signature_t *RBS_NONNULL rbs_signature_new(rbs_allocator_t *RBS_NONNULL allo
1229
1229
 
1230
1230
  return instance;
1231
1231
  }
1232
- #line 140 "prism/templates/src/ast.c.erb"
1232
+ #line 140 "templates/src/ast.c.erb"
1233
1233
  rbs_type_name_t *RBS_NONNULL rbs_type_name_new(rbs_allocator_t *RBS_NONNULL allocator, rbs_location_range location, rbs_namespace_t *RBS_NONNULL rbs_namespace, rbs_ast_symbol_t *RBS_NONNULL name) {
1234
1234
  rbs_type_name_t *instance = rbs_allocator_alloc(allocator, rbs_type_name_t);
1235
1235
 
@@ -1244,7 +1244,7 @@ rbs_type_name_t *RBS_NONNULL rbs_type_name_new(rbs_allocator_t *RBS_NONNULL allo
1244
1244
 
1245
1245
  return instance;
1246
1246
  }
1247
- #line 140 "prism/templates/src/ast.c.erb"
1247
+ #line 140 "templates/src/ast.c.erb"
1248
1248
  rbs_types_alias_t *RBS_NONNULL rbs_types_alias_new(rbs_allocator_t *RBS_NONNULL allocator, rbs_location_range location, rbs_type_name_t *RBS_NONNULL name, rbs_node_list_t *RBS_NONNULL args, rbs_location_range name_range) {
1249
1249
  rbs_types_alias_t *instance = rbs_allocator_alloc(allocator, rbs_types_alias_t);
1250
1250
 
@@ -1261,7 +1261,7 @@ rbs_types_alias_t *RBS_NONNULL rbs_types_alias_new(rbs_allocator_t *RBS_NONNULL
1261
1261
 
1262
1262
  return instance;
1263
1263
  }
1264
- #line 140 "prism/templates/src/ast.c.erb"
1264
+ #line 140 "templates/src/ast.c.erb"
1265
1265
  rbs_types_bases_any_t *RBS_NONNULL rbs_types_bases_any_new(rbs_allocator_t *RBS_NONNULL allocator, rbs_location_range location, bool todo) {
1266
1266
  rbs_types_bases_any_t *instance = rbs_allocator_alloc(allocator, rbs_types_bases_any_t);
1267
1267
 
@@ -1275,7 +1275,7 @@ rbs_types_bases_any_t *RBS_NONNULL rbs_types_bases_any_new(rbs_allocator_t *RBS_
1275
1275
 
1276
1276
  return instance;
1277
1277
  }
1278
- #line 140 "prism/templates/src/ast.c.erb"
1278
+ #line 140 "templates/src/ast.c.erb"
1279
1279
  rbs_types_bases_bool_t *RBS_NONNULL rbs_types_bases_bool_new(rbs_allocator_t *RBS_NONNULL allocator, rbs_location_range location) {
1280
1280
  rbs_types_bases_bool_t *instance = rbs_allocator_alloc(allocator, rbs_types_bases_bool_t);
1281
1281
 
@@ -1288,7 +1288,7 @@ rbs_types_bases_bool_t *RBS_NONNULL rbs_types_bases_bool_new(rbs_allocator_t *RB
1288
1288
 
1289
1289
  return instance;
1290
1290
  }
1291
- #line 140 "prism/templates/src/ast.c.erb"
1291
+ #line 140 "templates/src/ast.c.erb"
1292
1292
  rbs_types_bases_bottom_t *RBS_NONNULL rbs_types_bases_bottom_new(rbs_allocator_t *RBS_NONNULL allocator, rbs_location_range location) {
1293
1293
  rbs_types_bases_bottom_t *instance = rbs_allocator_alloc(allocator, rbs_types_bases_bottom_t);
1294
1294
 
@@ -1301,7 +1301,7 @@ rbs_types_bases_bottom_t *RBS_NONNULL rbs_types_bases_bottom_new(rbs_allocator_t
1301
1301
 
1302
1302
  return instance;
1303
1303
  }
1304
- #line 140 "prism/templates/src/ast.c.erb"
1304
+ #line 140 "templates/src/ast.c.erb"
1305
1305
  rbs_types_bases_class_t *RBS_NONNULL rbs_types_bases_class_new(rbs_allocator_t *RBS_NONNULL allocator, rbs_location_range location) {
1306
1306
  rbs_types_bases_class_t *instance = rbs_allocator_alloc(allocator, rbs_types_bases_class_t);
1307
1307
 
@@ -1314,7 +1314,7 @@ rbs_types_bases_class_t *RBS_NONNULL rbs_types_bases_class_new(rbs_allocator_t *
1314
1314
 
1315
1315
  return instance;
1316
1316
  }
1317
- #line 140 "prism/templates/src/ast.c.erb"
1317
+ #line 140 "templates/src/ast.c.erb"
1318
1318
  rbs_types_bases_instance_t *RBS_NONNULL rbs_types_bases_instance_new(rbs_allocator_t *RBS_NONNULL allocator, rbs_location_range location) {
1319
1319
  rbs_types_bases_instance_t *instance = rbs_allocator_alloc(allocator, rbs_types_bases_instance_t);
1320
1320
 
@@ -1327,7 +1327,7 @@ rbs_types_bases_instance_t *RBS_NONNULL rbs_types_bases_instance_new(rbs_allocat
1327
1327
 
1328
1328
  return instance;
1329
1329
  }
1330
- #line 140 "prism/templates/src/ast.c.erb"
1330
+ #line 140 "templates/src/ast.c.erb"
1331
1331
  rbs_types_bases_nil_t *RBS_NONNULL rbs_types_bases_nil_new(rbs_allocator_t *RBS_NONNULL allocator, rbs_location_range location) {
1332
1332
  rbs_types_bases_nil_t *instance = rbs_allocator_alloc(allocator, rbs_types_bases_nil_t);
1333
1333
 
@@ -1340,7 +1340,7 @@ rbs_types_bases_nil_t *RBS_NONNULL rbs_types_bases_nil_new(rbs_allocator_t *RBS_
1340
1340
 
1341
1341
  return instance;
1342
1342
  }
1343
- #line 140 "prism/templates/src/ast.c.erb"
1343
+ #line 140 "templates/src/ast.c.erb"
1344
1344
  rbs_types_bases_self_t *RBS_NONNULL rbs_types_bases_self_new(rbs_allocator_t *RBS_NONNULL allocator, rbs_location_range location) {
1345
1345
  rbs_types_bases_self_t *instance = rbs_allocator_alloc(allocator, rbs_types_bases_self_t);
1346
1346
 
@@ -1353,7 +1353,7 @@ rbs_types_bases_self_t *RBS_NONNULL rbs_types_bases_self_new(rbs_allocator_t *RB
1353
1353
 
1354
1354
  return instance;
1355
1355
  }
1356
- #line 140 "prism/templates/src/ast.c.erb"
1356
+ #line 140 "templates/src/ast.c.erb"
1357
1357
  rbs_types_bases_top_t *RBS_NONNULL rbs_types_bases_top_new(rbs_allocator_t *RBS_NONNULL allocator, rbs_location_range location) {
1358
1358
  rbs_types_bases_top_t *instance = rbs_allocator_alloc(allocator, rbs_types_bases_top_t);
1359
1359
 
@@ -1366,7 +1366,7 @@ rbs_types_bases_top_t *RBS_NONNULL rbs_types_bases_top_new(rbs_allocator_t *RBS_
1366
1366
 
1367
1367
  return instance;
1368
1368
  }
1369
- #line 140 "prism/templates/src/ast.c.erb"
1369
+ #line 140 "templates/src/ast.c.erb"
1370
1370
  rbs_types_bases_void_t *RBS_NONNULL rbs_types_bases_void_new(rbs_allocator_t *RBS_NONNULL allocator, rbs_location_range location) {
1371
1371
  rbs_types_bases_void_t *instance = rbs_allocator_alloc(allocator, rbs_types_bases_void_t);
1372
1372
 
@@ -1379,7 +1379,7 @@ rbs_types_bases_void_t *RBS_NONNULL rbs_types_bases_void_new(rbs_allocator_t *RB
1379
1379
 
1380
1380
  return instance;
1381
1381
  }
1382
- #line 140 "prism/templates/src/ast.c.erb"
1382
+ #line 140 "templates/src/ast.c.erb"
1383
1383
  rbs_types_block_t *RBS_NONNULL rbs_types_block_new(rbs_allocator_t *RBS_NONNULL allocator, rbs_location_range location, rbs_node_t *RBS_NONNULL type, bool required, rbs_node_t *RBS_NULLABLE self_type) {
1384
1384
  rbs_types_block_t *instance = rbs_allocator_alloc(allocator, rbs_types_block_t);
1385
1385
 
@@ -1395,7 +1395,7 @@ rbs_types_block_t *RBS_NONNULL rbs_types_block_new(rbs_allocator_t *RBS_NONNULL
1395
1395
 
1396
1396
  return instance;
1397
1397
  }
1398
- #line 140 "prism/templates/src/ast.c.erb"
1398
+ #line 140 "templates/src/ast.c.erb"
1399
1399
  rbs_types_class_instance_t *RBS_NONNULL rbs_types_class_instance_new(rbs_allocator_t *RBS_NONNULL allocator, rbs_location_range location, rbs_type_name_t *RBS_NONNULL name, rbs_node_list_t *RBS_NONNULL args, rbs_location_range name_range) {
1400
1400
  rbs_types_class_instance_t *instance = rbs_allocator_alloc(allocator, rbs_types_class_instance_t);
1401
1401
 
@@ -1412,7 +1412,7 @@ rbs_types_class_instance_t *RBS_NONNULL rbs_types_class_instance_new(rbs_allocat
1412
1412
 
1413
1413
  return instance;
1414
1414
  }
1415
- #line 140 "prism/templates/src/ast.c.erb"
1415
+ #line 140 "templates/src/ast.c.erb"
1416
1416
  rbs_types_class_singleton_t *RBS_NONNULL rbs_types_class_singleton_new(rbs_allocator_t *RBS_NONNULL allocator, rbs_location_range location, rbs_type_name_t *RBS_NONNULL name, rbs_node_list_t *RBS_NONNULL args, rbs_location_range name_range) {
1417
1417
  rbs_types_class_singleton_t *instance = rbs_allocator_alloc(allocator, rbs_types_class_singleton_t);
1418
1418
 
@@ -1429,7 +1429,7 @@ rbs_types_class_singleton_t *RBS_NONNULL rbs_types_class_singleton_new(rbs_alloc
1429
1429
 
1430
1430
  return instance;
1431
1431
  }
1432
- #line 140 "prism/templates/src/ast.c.erb"
1432
+ #line 140 "templates/src/ast.c.erb"
1433
1433
  rbs_types_function_t *RBS_NONNULL rbs_types_function_new(rbs_allocator_t *RBS_NONNULL allocator, rbs_location_range location, rbs_node_list_t *RBS_NONNULL required_positionals, rbs_node_list_t *RBS_NONNULL optional_positionals, rbs_node_t *RBS_NULLABLE rest_positionals, rbs_node_list_t *RBS_NONNULL trailing_positionals, rbs_hash_t *RBS_NONNULL required_keywords, rbs_hash_t *RBS_NONNULL optional_keywords, rbs_node_t *RBS_NULLABLE rest_keywords, rbs_node_t *RBS_NONNULL return_type) {
1434
1434
  rbs_types_function_t *instance = rbs_allocator_alloc(allocator, rbs_types_function_t);
1435
1435
 
@@ -1450,7 +1450,7 @@ rbs_types_function_t *RBS_NONNULL rbs_types_function_new(rbs_allocator_t *RBS_NO
1450
1450
 
1451
1451
  return instance;
1452
1452
  }
1453
- #line 140 "prism/templates/src/ast.c.erb"
1453
+ #line 140 "templates/src/ast.c.erb"
1454
1454
  rbs_types_function_param_t *RBS_NONNULL rbs_types_function_param_new(rbs_allocator_t *RBS_NONNULL allocator, rbs_location_range location, rbs_node_t *RBS_NONNULL type, rbs_ast_symbol_t *RBS_NULLABLE name) {
1455
1455
  rbs_types_function_param_t *instance = rbs_allocator_alloc(allocator, rbs_types_function_param_t);
1456
1456
 
@@ -1466,7 +1466,7 @@ rbs_types_function_param_t *RBS_NONNULL rbs_types_function_param_new(rbs_allocat
1466
1466
 
1467
1467
  return instance;
1468
1468
  }
1469
- #line 140 "prism/templates/src/ast.c.erb"
1469
+ #line 140 "templates/src/ast.c.erb"
1470
1470
  rbs_types_interface_t *RBS_NONNULL rbs_types_interface_new(rbs_allocator_t *RBS_NONNULL allocator, rbs_location_range location, rbs_type_name_t *RBS_NONNULL name, rbs_node_list_t *RBS_NONNULL args, rbs_location_range name_range) {
1471
1471
  rbs_types_interface_t *instance = rbs_allocator_alloc(allocator, rbs_types_interface_t);
1472
1472
 
@@ -1483,7 +1483,7 @@ rbs_types_interface_t *RBS_NONNULL rbs_types_interface_new(rbs_allocator_t *RBS_
1483
1483
 
1484
1484
  return instance;
1485
1485
  }
1486
- #line 140 "prism/templates/src/ast.c.erb"
1486
+ #line 140 "templates/src/ast.c.erb"
1487
1487
  rbs_types_intersection_t *RBS_NONNULL rbs_types_intersection_new(rbs_allocator_t *RBS_NONNULL allocator, rbs_location_range location, rbs_node_list_t *RBS_NONNULL types) {
1488
1488
  rbs_types_intersection_t *instance = rbs_allocator_alloc(allocator, rbs_types_intersection_t);
1489
1489
 
@@ -1497,7 +1497,7 @@ rbs_types_intersection_t *RBS_NONNULL rbs_types_intersection_new(rbs_allocator_t
1497
1497
 
1498
1498
  return instance;
1499
1499
  }
1500
- #line 140 "prism/templates/src/ast.c.erb"
1500
+ #line 140 "templates/src/ast.c.erb"
1501
1501
  rbs_types_literal_t *RBS_NONNULL rbs_types_literal_new(rbs_allocator_t *RBS_NONNULL allocator, rbs_location_range location, rbs_node_t *RBS_NONNULL literal) {
1502
1502
  rbs_types_literal_t *instance = rbs_allocator_alloc(allocator, rbs_types_literal_t);
1503
1503
 
@@ -1511,7 +1511,7 @@ rbs_types_literal_t *RBS_NONNULL rbs_types_literal_new(rbs_allocator_t *RBS_NONN
1511
1511
 
1512
1512
  return instance;
1513
1513
  }
1514
- #line 140 "prism/templates/src/ast.c.erb"
1514
+ #line 140 "templates/src/ast.c.erb"
1515
1515
  rbs_types_optional_t *RBS_NONNULL rbs_types_optional_new(rbs_allocator_t *RBS_NONNULL allocator, rbs_location_range location, rbs_node_t *RBS_NONNULL type) {
1516
1516
  rbs_types_optional_t *instance = rbs_allocator_alloc(allocator, rbs_types_optional_t);
1517
1517
 
@@ -1525,7 +1525,7 @@ rbs_types_optional_t *RBS_NONNULL rbs_types_optional_new(rbs_allocator_t *RBS_NO
1525
1525
 
1526
1526
  return instance;
1527
1527
  }
1528
- #line 140 "prism/templates/src/ast.c.erb"
1528
+ #line 140 "templates/src/ast.c.erb"
1529
1529
  rbs_types_proc_t *RBS_NONNULL rbs_types_proc_new(rbs_allocator_t *RBS_NONNULL allocator, rbs_location_range location, rbs_node_t *RBS_NONNULL type, rbs_types_block_t *RBS_NULLABLE block, rbs_node_t *RBS_NULLABLE self_type) {
1530
1530
  rbs_types_proc_t *instance = rbs_allocator_alloc(allocator, rbs_types_proc_t);
1531
1531
 
@@ -1541,7 +1541,7 @@ rbs_types_proc_t *RBS_NONNULL rbs_types_proc_new(rbs_allocator_t *RBS_NONNULL al
1541
1541
 
1542
1542
  return instance;
1543
1543
  }
1544
- #line 140 "prism/templates/src/ast.c.erb"
1544
+ #line 140 "templates/src/ast.c.erb"
1545
1545
  rbs_types_record_t *RBS_NONNULL rbs_types_record_new(rbs_allocator_t *RBS_NONNULL allocator, rbs_location_range location, rbs_hash_t *RBS_NONNULL all_fields) {
1546
1546
  rbs_types_record_t *instance = rbs_allocator_alloc(allocator, rbs_types_record_t);
1547
1547
 
@@ -1555,7 +1555,7 @@ rbs_types_record_t *RBS_NONNULL rbs_types_record_new(rbs_allocator_t *RBS_NONNUL
1555
1555
 
1556
1556
  return instance;
1557
1557
  }
1558
- #line 140 "prism/templates/src/ast.c.erb"
1558
+ #line 140 "templates/src/ast.c.erb"
1559
1559
  rbs_types_record_field_type_t *RBS_NONNULL rbs_types_record_field_type_new(rbs_allocator_t *RBS_NONNULL allocator, rbs_location_range location, rbs_node_t *RBS_NONNULL type, bool required) {
1560
1560
  rbs_types_record_field_type_t *instance = rbs_allocator_alloc(allocator, rbs_types_record_field_type_t);
1561
1561
 
@@ -1570,7 +1570,7 @@ rbs_types_record_field_type_t *RBS_NONNULL rbs_types_record_field_type_new(rbs_a
1570
1570
 
1571
1571
  return instance;
1572
1572
  }
1573
- #line 140 "prism/templates/src/ast.c.erb"
1573
+ #line 140 "templates/src/ast.c.erb"
1574
1574
  rbs_types_tuple_t *RBS_NONNULL rbs_types_tuple_new(rbs_allocator_t *RBS_NONNULL allocator, rbs_location_range location, rbs_node_list_t *RBS_NONNULL types) {
1575
1575
  rbs_types_tuple_t *instance = rbs_allocator_alloc(allocator, rbs_types_tuple_t);
1576
1576
 
@@ -1584,7 +1584,7 @@ rbs_types_tuple_t *RBS_NONNULL rbs_types_tuple_new(rbs_allocator_t *RBS_NONNULL
1584
1584
 
1585
1585
  return instance;
1586
1586
  }
1587
- #line 140 "prism/templates/src/ast.c.erb"
1587
+ #line 140 "templates/src/ast.c.erb"
1588
1588
  rbs_types_union_t *RBS_NONNULL rbs_types_union_new(rbs_allocator_t *RBS_NONNULL allocator, rbs_location_range location, rbs_node_list_t *RBS_NONNULL types) {
1589
1589
  rbs_types_union_t *instance = rbs_allocator_alloc(allocator, rbs_types_union_t);
1590
1590
 
@@ -1598,7 +1598,7 @@ rbs_types_union_t *RBS_NONNULL rbs_types_union_new(rbs_allocator_t *RBS_NONNULL
1598
1598
 
1599
1599
  return instance;
1600
1600
  }
1601
- #line 140 "prism/templates/src/ast.c.erb"
1601
+ #line 140 "templates/src/ast.c.erb"
1602
1602
  rbs_types_untyped_function_t *RBS_NONNULL rbs_types_untyped_function_new(rbs_allocator_t *RBS_NONNULL allocator, rbs_location_range location, rbs_node_t *RBS_NONNULL return_type) {
1603
1603
  rbs_types_untyped_function_t *instance = rbs_allocator_alloc(allocator, rbs_types_untyped_function_t);
1604
1604
 
@@ -1612,7 +1612,7 @@ rbs_types_untyped_function_t *RBS_NONNULL rbs_types_untyped_function_new(rbs_all
1612
1612
 
1613
1613
  return instance;
1614
1614
  }
1615
- #line 140 "prism/templates/src/ast.c.erb"
1615
+ #line 140 "templates/src/ast.c.erb"
1616
1616
  rbs_types_variable_t *RBS_NONNULL rbs_types_variable_new(rbs_allocator_t *RBS_NONNULL allocator, rbs_location_range location, rbs_ast_symbol_t *RBS_NONNULL name) {
1617
1617
  rbs_types_variable_t *instance = rbs_allocator_alloc(allocator, rbs_types_variable_t);
1618
1618