roast-ai 0.4.7 → 0.4.9

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 (311) hide show
  1. checksums.yaml +4 -4
  2. data/.gitignore +1 -0
  3. data/.rubocop.yml +1 -0
  4. data/Gemfile.lock +3 -3
  5. data/README.md +9 -5
  6. data/Rakefile +2 -0
  7. data/dsl/less_simple.rb +112 -0
  8. data/dsl/prototype.rb +17 -0
  9. data/dsl/simple.rb +5 -7
  10. data/dsl/step_communication.rb +18 -0
  11. data/examples/README.md +9 -0
  12. data/examples/available_tools_demo/workflow.yml +1 -1
  13. data/examples/basic_prompt_workflow/workflow.md +1 -0
  14. data/examples/basic_prompt_workflow/workflow.yml +14 -0
  15. data/examples/grading/README.md +1 -26
  16. data/examples/grading/analyze_coverage/prompt.md +1 -1
  17. data/examples/grading/calculate_final_grade.rb +10 -13
  18. data/examples/grading/format_result.rb +5 -8
  19. data/examples/grading/generate_grades/prompt.md +1 -1
  20. data/examples/grading/generate_recommendations/prompt.md +1 -1
  21. data/examples/grading/read_dependencies/prompt.md +0 -1
  22. data/examples/grading/verify_test_helpers/prompt.md +1 -1
  23. data/examples/grading/workflow.md +1 -4
  24. data/examples/grading/workflow.yml +3 -16
  25. data/lib/roast/dsl/cog/config.rb +31 -0
  26. data/lib/roast/dsl/cog/stack.rb +21 -0
  27. data/lib/roast/dsl/cog/store.rb +26 -0
  28. data/lib/roast/dsl/cog.rb +70 -0
  29. data/lib/roast/dsl/cog_execution_context.rb +29 -0
  30. data/lib/roast/dsl/cogs/cmd.rb +55 -0
  31. data/lib/roast/dsl/cogs/graph.rb +53 -0
  32. data/lib/roast/dsl/cogs.rb +65 -0
  33. data/lib/roast/dsl/config_context.rb +54 -0
  34. data/lib/roast/dsl/executor.rb +62 -7
  35. data/lib/roast/dsl/workflow_execution_context.rb +47 -0
  36. data/lib/roast/error.rb +7 -0
  37. data/lib/roast/errors.rb +3 -3
  38. data/lib/roast/graph/edge.rb +25 -0
  39. data/lib/roast/graph/node.rb +40 -0
  40. data/lib/roast/graph/quantum_edge.rb +27 -0
  41. data/lib/roast/graph/threaded_exec.rb +93 -0
  42. data/lib/roast/graph.rb +233 -0
  43. data/lib/roast/resources/api_resource.rb +2 -2
  44. data/lib/roast/resources/url_resource.rb +2 -2
  45. data/lib/roast/tools/apply_diff.rb +1 -1
  46. data/lib/roast/tools/ask_user.rb +1 -1
  47. data/lib/roast/tools/bash.rb +1 -1
  48. data/lib/roast/tools/cmd.rb +2 -2
  49. data/lib/roast/tools/coding_agent.rb +2 -2
  50. data/lib/roast/tools/grep.rb +1 -1
  51. data/lib/roast/tools/read_file.rb +1 -1
  52. data/lib/roast/tools/search_file.rb +1 -1
  53. data/lib/roast/tools/swarm.rb +1 -1
  54. data/lib/roast/tools/update_files.rb +2 -2
  55. data/lib/roast/tools/write_file.rb +1 -1
  56. data/lib/roast/tools.rb +1 -1
  57. data/lib/roast/value_objects/api_token.rb +1 -1
  58. data/lib/roast/value_objects/uri_base.rb +1 -1
  59. data/lib/roast/value_objects/workflow_path.rb +1 -1
  60. data/lib/roast/version.rb +1 -1
  61. data/lib/roast/workflow/base_step.rb +2 -3
  62. data/lib/roast/workflow/base_workflow.rb +38 -2
  63. data/lib/roast/workflow/command_executor.rb +1 -1
  64. data/lib/roast/workflow/configuration_loader.rb +1 -1
  65. data/lib/roast/workflow/error_handler.rb +1 -1
  66. data/lib/roast/workflow/step_executor_registry.rb +1 -1
  67. data/lib/roast/workflow/step_loader.rb +3 -8
  68. data/lib/roast/workflow/workflow_executor.rb +1 -1
  69. data/lib/roast.rb +7 -2
  70. data/sorbet/config +2 -0
  71. data/sorbet/rbi/annotations/.gitattributes +1 -0
  72. data/sorbet/rbi/annotations/activesupport.rbi +495 -0
  73. data/sorbet/rbi/annotations/faraday.rbi +17 -0
  74. data/sorbet/rbi/annotations/minitest.rbi +119 -0
  75. data/sorbet/rbi/annotations/mocha.rbi +34 -0
  76. data/sorbet/rbi/annotations/rainbow.rbi +269 -0
  77. data/sorbet/rbi/annotations/webmock.rbi +9 -0
  78. data/sorbet/rbi/gems/rbs-inline@0.12.0.rbi +2170 -0
  79. data/sorbet/rbi/gems/{rexml@3.4.1.rbi → rexml@3.4.2.rbi} +284 -239
  80. data/sorbet/rbi/shims/lib/roast/dsl/config_context.rbi +11 -0
  81. data/sorbet/rbi/shims/lib/roast/dsl/workflow_execution_context.rbi +11 -0
  82. data/sorbet/rbi/todo.rbi +7 -0
  83. metadata +37 -231
  84. data/CHANGELOG.md +0 -369
  85. data/examples/agent_continue/add_documentation/prompt.md +0 -5
  86. data/examples/agent_continue/add_error_handling/prompt.md +0 -5
  87. data/examples/agent_continue/analyze_codebase/prompt.md +0 -7
  88. data/examples/agent_continue/combined_workflow.yml +0 -24
  89. data/examples/agent_continue/continue_adding_features/prompt.md +0 -4
  90. data/examples/agent_continue/create_integration_tests/prompt.md +0 -3
  91. data/examples/agent_continue/document_with_context/prompt.md +0 -5
  92. data/examples/agent_continue/explore_api/prompt.md +0 -6
  93. data/examples/agent_continue/implement_client/prompt.md +0 -6
  94. data/examples/agent_continue/inline_workflow.yml +0 -20
  95. data/examples/agent_continue/refactor_code/prompt.md +0 -2
  96. data/examples/agent_continue/verify_changes/prompt.md +0 -6
  97. data/examples/agent_continue/workflow.yml +0 -27
  98. data/examples/agent_workflow/README.md +0 -75
  99. data/examples/agent_workflow/apply_refactorings/prompt.md +0 -22
  100. data/examples/agent_workflow/identify_code_smells/prompt.md +0 -15
  101. data/examples/agent_workflow/summarize_improvements/prompt.md +0 -18
  102. data/examples/agent_workflow/workflow.png +0 -0
  103. data/examples/agent_workflow/workflow.yml +0 -16
  104. data/examples/api_workflow/README.md +0 -85
  105. data/examples/api_workflow/fetch_api_data/prompt.md +0 -10
  106. data/examples/api_workflow/generate_report/prompt.md +0 -10
  107. data/examples/api_workflow/prompt.md +0 -10
  108. data/examples/api_workflow/transform_data/prompt.md +0 -10
  109. data/examples/api_workflow/workflow.png +0 -0
  110. data/examples/api_workflow/workflow.yml +0 -30
  111. data/examples/apply_diff_demo/README.md +0 -58
  112. data/examples/apply_diff_demo/apply_simple_change/prompt.md +0 -13
  113. data/examples/apply_diff_demo/create_sample_file/prompt.md +0 -11
  114. data/examples/apply_diff_demo/workflow.yml +0 -24
  115. data/examples/available_tools_demo/workflow.png +0 -0
  116. data/examples/bash_prototyping/README.md +0 -53
  117. data/examples/bash_prototyping/analyze_network/prompt.md +0 -13
  118. data/examples/bash_prototyping/analyze_system/prompt.md +0 -11
  119. data/examples/bash_prototyping/api_testing.png +0 -0
  120. data/examples/bash_prototyping/api_testing.yml +0 -14
  121. data/examples/bash_prototyping/check_processes/prompt.md +0 -11
  122. data/examples/bash_prototyping/generate_report/prompt.md +0 -16
  123. data/examples/bash_prototyping/process_json_response/prompt.md +0 -24
  124. data/examples/bash_prototyping/system_analysis.png +0 -0
  125. data/examples/bash_prototyping/system_analysis.yml +0 -14
  126. data/examples/bash_prototyping/test_public_api/prompt.md +0 -22
  127. data/examples/case_when/README.md +0 -58
  128. data/examples/case_when/detect_language/prompt.md +0 -16
  129. data/examples/case_when/workflow.png +0 -0
  130. data/examples/case_when/workflow.yml +0 -58
  131. data/examples/cmd/README.md +0 -99
  132. data/examples/cmd/analyze_project/prompt.md +0 -57
  133. data/examples/cmd/basic_demo/prompt.md +0 -48
  134. data/examples/cmd/basic_workflow.png +0 -0
  135. data/examples/cmd/basic_workflow.yml +0 -16
  136. data/examples/cmd/check_repository/prompt.md +0 -57
  137. data/examples/cmd/create_and_verify/prompt.md +0 -56
  138. data/examples/cmd/dev_workflow.png +0 -0
  139. data/examples/cmd/dev_workflow.yml +0 -26
  140. data/examples/cmd/explore_project/prompt.md +0 -67
  141. data/examples/cmd/explorer_workflow.png +0 -0
  142. data/examples/cmd/explorer_workflow.yml +0 -21
  143. data/examples/cmd/smart_tool_selection/prompt.md +0 -99
  144. data/examples/coding_agent_with_model.yml +0 -20
  145. data/examples/coding_agent_with_retries.yml +0 -30
  146. data/examples/conditional/README.md +0 -161
  147. data/examples/conditional/check_condition/prompt.md +0 -1
  148. data/examples/conditional/simple_workflow.png +0 -0
  149. data/examples/conditional/simple_workflow.yml +0 -15
  150. data/examples/conditional/workflow.png +0 -0
  151. data/examples/conditional/workflow.yml +0 -23
  152. data/examples/context_management_demo/README.md +0 -43
  153. data/examples/context_management_demo/workflow.yml +0 -42
  154. data/examples/direct_coerce_syntax/README.md +0 -32
  155. data/examples/direct_coerce_syntax/workflow.png +0 -0
  156. data/examples/direct_coerce_syntax/workflow.yml +0 -36
  157. data/examples/dot_notation/README.md +0 -37
  158. data/examples/dot_notation/workflow.png +0 -0
  159. data/examples/dot_notation/workflow.yml +0 -44
  160. data/examples/exit_on_error/README.md +0 -50
  161. data/examples/exit_on_error/analyze_lint_output/prompt.md +0 -9
  162. data/examples/exit_on_error/apply_fixes/prompt.md +0 -2
  163. data/examples/exit_on_error/workflow.png +0 -0
  164. data/examples/exit_on_error/workflow.yml +0 -19
  165. data/examples/grading/js_test_runner +0 -31
  166. data/examples/grading/rb_test_runner +0 -19
  167. data/examples/grading/run_coverage.rb +0 -54
  168. data/examples/grading/workflow.png +0 -0
  169. data/examples/grading/workflow.rb.md +0 -6
  170. data/examples/grading/workflow.ts+tsx.md +0 -6
  171. data/examples/instrumentation.rb +0 -76
  172. data/examples/interpolation/README.md +0 -50
  173. data/examples/interpolation/analyze_file/prompt.md +0 -1
  174. data/examples/interpolation/analyze_patterns/prompt.md +0 -27
  175. data/examples/interpolation/generate_report_for_js/prompt.md +0 -3
  176. data/examples/interpolation/generate_report_for_rb/prompt.md +0 -3
  177. data/examples/interpolation/sample.js +0 -48
  178. data/examples/interpolation/sample.rb +0 -42
  179. data/examples/interpolation/workflow.md +0 -1
  180. data/examples/interpolation/workflow.png +0 -0
  181. data/examples/interpolation/workflow.yml +0 -21
  182. data/examples/iteration/IMPLEMENTATION.md +0 -88
  183. data/examples/iteration/README.md +0 -68
  184. data/examples/iteration/analyze_complexity/prompt.md +0 -22
  185. data/examples/iteration/generate_recommendations/prompt.md +0 -21
  186. data/examples/iteration/generate_report/prompt.md +0 -129
  187. data/examples/iteration/implement_fix/prompt.md +0 -25
  188. data/examples/iteration/prioritize_issues/prompt.md +0 -24
  189. data/examples/iteration/prompts/analyze_file.md +0 -28
  190. data/examples/iteration/prompts/generate_summary.md +0 -24
  191. data/examples/iteration/prompts/update_report.md +0 -29
  192. data/examples/iteration/prompts/write_report.md +0 -22
  193. data/examples/iteration/read_file/prompt.md +0 -9
  194. data/examples/iteration/select_next_issue/prompt.md +0 -25
  195. data/examples/iteration/simple_workflow.md +0 -39
  196. data/examples/iteration/simple_workflow.yml +0 -58
  197. data/examples/iteration/update_fix_count/prompt.md +0 -26
  198. data/examples/iteration/verify_fix/prompt.md +0 -29
  199. data/examples/iteration/workflow.png +0 -0
  200. data/examples/iteration/workflow.yml +0 -42
  201. data/examples/json_handling/README.md +0 -32
  202. data/examples/json_handling/workflow.png +0 -0
  203. data/examples/json_handling/workflow.yml +0 -52
  204. data/examples/mcp/README.md +0 -223
  205. data/examples/mcp/analyze_changes/prompt.md +0 -8
  206. data/examples/mcp/analyze_issues/prompt.md +0 -4
  207. data/examples/mcp/analyze_schema/prompt.md +0 -4
  208. data/examples/mcp/check_data_quality/prompt.md +0 -5
  209. data/examples/mcp/check_documentation/prompt.md +0 -4
  210. data/examples/mcp/create_recommendations/prompt.md +0 -5
  211. data/examples/mcp/database_workflow.png +0 -0
  212. data/examples/mcp/database_workflow.yml +0 -29
  213. data/examples/mcp/env_demo/workflow.png +0 -0
  214. data/examples/mcp/env_demo/workflow.yml +0 -34
  215. data/examples/mcp/fetch_pr_context/prompt.md +0 -4
  216. data/examples/mcp/filesystem_demo/create_test_file/prompt.md +0 -2
  217. data/examples/mcp/filesystem_demo/list_files/prompt.md +0 -6
  218. data/examples/mcp/filesystem_demo/read_with_mcp/prompt.md +0 -7
  219. data/examples/mcp/filesystem_demo/workflow.png +0 -0
  220. data/examples/mcp/filesystem_demo/workflow.yml +0 -38
  221. data/examples/mcp/generate_insights/prompt.md +0 -4
  222. data/examples/mcp/generate_report/prompt.md +0 -6
  223. data/examples/mcp/generate_review/prompt.md +0 -16
  224. data/examples/mcp/github_workflow.png +0 -0
  225. data/examples/mcp/github_workflow.yml +0 -32
  226. data/examples/mcp/multi_mcp_workflow.png +0 -0
  227. data/examples/mcp/multi_mcp_workflow.yml +0 -58
  228. data/examples/mcp/post_review/prompt.md +0 -3
  229. data/examples/mcp/save_report/prompt.md +0 -6
  230. data/examples/mcp/search_issues/prompt.md +0 -2
  231. data/examples/mcp/summarize/prompt.md +0 -1
  232. data/examples/mcp/test_filesystem/prompt.md +0 -6
  233. data/examples/mcp/test_github/prompt.md +0 -8
  234. data/examples/mcp/test_read/prompt.md +0 -1
  235. data/examples/mcp/workflow.png +0 -0
  236. data/examples/mcp/workflow.yml +0 -35
  237. data/examples/no_model_fallback/README.md +0 -17
  238. data/examples/no_model_fallback/analyze_file/prompt.md +0 -1
  239. data/examples/no_model_fallback/analyze_patterns/prompt.md +0 -27
  240. data/examples/no_model_fallback/generate_report_for_md/prompt.md +0 -10
  241. data/examples/no_model_fallback/generate_report_for_rb/prompt.md +0 -3
  242. data/examples/no_model_fallback/sample.rb +0 -42
  243. data/examples/no_model_fallback/workflow.yml +0 -19
  244. data/examples/openrouter_example/README.md +0 -48
  245. data/examples/openrouter_example/analyze_input/prompt.md +0 -16
  246. data/examples/openrouter_example/generate_response/prompt.md +0 -9
  247. data/examples/openrouter_example/workflow.png +0 -0
  248. data/examples/openrouter_example/workflow.yml +0 -12
  249. data/examples/pre_post_processing/README.md +0 -111
  250. data/examples/pre_post_processing/analyze_test_file/prompt.md +0 -23
  251. data/examples/pre_post_processing/improve_test_coverage/prompt.md +0 -17
  252. data/examples/pre_post_processing/optimize_test_performance/prompt.md +0 -25
  253. data/examples/pre_post_processing/post_processing/aggregate_metrics/prompt.md +0 -31
  254. data/examples/pre_post_processing/post_processing/cleanup_environment/prompt.md +0 -28
  255. data/examples/pre_post_processing/post_processing/generate_summary_report/prompt.md +0 -32
  256. data/examples/pre_post_processing/post_processing/output.txt +0 -24
  257. data/examples/pre_post_processing/pre_processing/gather_baseline_metrics/prompt.md +0 -26
  258. data/examples/pre_post_processing/pre_processing/setup_test_environment/prompt.md +0 -11
  259. data/examples/pre_post_processing/validate_changes/prompt.md +0 -24
  260. data/examples/pre_post_processing/workflow.png +0 -0
  261. data/examples/pre_post_processing/workflow.yml +0 -21
  262. data/examples/retry/workflow.yml +0 -23
  263. data/examples/rspec_to_minitest/README.md +0 -68
  264. data/examples/rspec_to_minitest/analyze_spec/prompt.md +0 -30
  265. data/examples/rspec_to_minitest/create_minitest/prompt.md +0 -33
  266. data/examples/rspec_to_minitest/run_and_improve/prompt.md +0 -35
  267. data/examples/rspec_to_minitest/workflow.md +0 -10
  268. data/examples/rspec_to_minitest/workflow.png +0 -0
  269. data/examples/rspec_to_minitest/workflow.yml +0 -40
  270. data/examples/shared_config/README.md +0 -52
  271. data/examples/shared_config/example_with_shared_config/workflow.png +0 -0
  272. data/examples/shared_config/example_with_shared_config/workflow.yml +0 -6
  273. data/examples/shared_config/shared.png +0 -0
  274. data/examples/shared_config/shared.yml +0 -7
  275. data/examples/single_target_prepost/README.md +0 -36
  276. data/examples/single_target_prepost/post_processing/output.txt +0 -27
  277. data/examples/single_target_prepost/pre_processing/gather_dependencies/prompt.md +0 -11
  278. data/examples/single_target_prepost/workflow.png +0 -0
  279. data/examples/single_target_prepost/workflow.yml +0 -20
  280. data/examples/smart_coercion_defaults/README.md +0 -65
  281. data/examples/smart_coercion_defaults/workflow.png +0 -0
  282. data/examples/smart_coercion_defaults/workflow.yml +0 -44
  283. data/examples/step_configuration/README.md +0 -84
  284. data/examples/step_configuration/workflow.png +0 -0
  285. data/examples/step_configuration/workflow.yml +0 -57
  286. data/examples/swarm_example.yml +0 -25
  287. data/examples/tool_config_example/README.md +0 -109
  288. data/examples/tool_config_example/example_step/prompt.md +0 -42
  289. data/examples/tool_config_example/workflow.png +0 -0
  290. data/examples/tool_config_example/workflow.yml +0 -17
  291. data/examples/user_input/README.md +0 -90
  292. data/examples/user_input/funny_name/create_backstory/prompt.md +0 -10
  293. data/examples/user_input/funny_name/workflow.png +0 -0
  294. data/examples/user_input/funny_name/workflow.yml +0 -25
  295. data/examples/user_input/generate_summary/prompt.md +0 -11
  296. data/examples/user_input/simple_input_demo/workflow.png +0 -0
  297. data/examples/user_input/simple_input_demo/workflow.yml +0 -35
  298. data/examples/user_input/survey_workflow.png +0 -0
  299. data/examples/user_input/survey_workflow.yml +0 -71
  300. data/examples/user_input/welcome_message/prompt.md +0 -3
  301. data/examples/user_input/workflow.png +0 -0
  302. data/examples/user_input/workflow.yml +0 -73
  303. data/examples/workflow_generator/README.md +0 -27
  304. data/examples/workflow_generator/analyze_user_request/prompt.md +0 -34
  305. data/examples/workflow_generator/create_workflow_files/prompt.md +0 -32
  306. data/examples/workflow_generator/get_user_input/prompt.md +0 -14
  307. data/examples/workflow_generator/info_from_roast.rb +0 -22
  308. data/examples/workflow_generator/workflow.png +0 -0
  309. data/examples/workflow_generator/workflow.yml +0 -34
  310. data/package-lock.json +0 -6
  311. /data/sorbet/rbi/gems/{rack@2.2.17.rbi → rack@2.2.18.rbi} +0 -0
@@ -0,0 +1,2170 @@
1
+ # typed: true
2
+
3
+ # DO NOT EDIT MANUALLY
4
+ # This is an autogenerated file for types exported from the `rbs-inline` gem.
5
+ # Please instead update this file by running `bin/tapioca gem rbs-inline`.
6
+
7
+
8
+ # source://rbs-inline//lib/rbs/inline/version.rb#3
9
+ module RBS
10
+ class << self
11
+ # source://rbs/3.9.4/lib/rbs.rb#69
12
+ def logger; end
13
+
14
+ # source://rbs/3.9.4/lib/rbs.rb#66
15
+ def logger_level; end
16
+
17
+ # source://rbs/3.9.4/lib/rbs.rb#78
18
+ def logger_level=(level); end
19
+
20
+ # source://rbs/3.9.4/lib/rbs.rb#67
21
+ def logger_output; end
22
+
23
+ # source://rbs/3.9.4/lib/rbs.rb#73
24
+ def logger_output=(val); end
25
+
26
+ # source://rbs/3.9.4/lib/rbs.rb#83
27
+ def print_warning; end
28
+ end
29
+ end
30
+
31
+ # source://rbs-inline//lib/rbs/inline/version.rb#4
32
+ module RBS::Inline; end
33
+
34
+ # source://rbs-inline//lib/rbs/inline/ast/annotations.rb#5
35
+ module RBS::Inline::AST; end
36
+
37
+ # source://rbs-inline//lib/rbs/inline/ast/annotations.rb#6
38
+ module RBS::Inline::AST::Annotations; end
39
+
40
+ # `#[TYPE, ..., TYPE]`
41
+ #
42
+ # source://rbs-inline//lib/rbs/inline/ast/annotations.rb#362
43
+ class RBS::Inline::AST::Annotations::Application < ::RBS::Inline::AST::Annotations::Base
44
+ # @return [Application] a new instance of Application
45
+ #
46
+ # source://rbs-inline//lib/rbs/inline/ast/annotations.rb#366
47
+ def initialize(tree, source); end
48
+
49
+ # @return [Boolean]
50
+ #
51
+ # source://rbs-inline//lib/rbs/inline/ast/annotations.rb#387
52
+ def complete?; end
53
+
54
+ # : Array[Types::t]?
55
+ #
56
+ # source://rbs-inline//lib/rbs/inline/ast/annotations.rb#363
57
+ def types; end
58
+ end
59
+
60
+ # source://rbs-inline//lib/rbs/inline/ast/annotations.rb#110
61
+ class RBS::Inline::AST::Annotations::Base
62
+ # @return [Base] a new instance of Base
63
+ #
64
+ # source://rbs-inline//lib/rbs/inline/ast/annotations.rb#117
65
+ def initialize(tree, source); end
66
+
67
+ # : CommentLines
68
+ #
69
+ # source://rbs-inline//lib/rbs/inline/ast/annotations.rb#111
70
+ def source; end
71
+
72
+ # : Tree
73
+ #
74
+ # source://rbs-inline//lib/rbs/inline/ast/annotations.rb#112
75
+ def tree; end
76
+ end
77
+
78
+ # `@rbs &block: METHOD-TYPE` or `@rbs &block: ? METHOD-TYPE`
79
+ #
80
+ # source://rbs-inline//lib/rbs/inline/ast/annotations.rb#203
81
+ class RBS::Inline::AST::Annotations::BlockType < ::RBS::Inline::AST::Annotations::Base
82
+ # @return [BlockType] a new instance of BlockType
83
+ #
84
+ # source://rbs-inline//lib/rbs/inline/ast/annotations.rb#213
85
+ def initialize(tree, source); end
86
+
87
+ # : String?
88
+ #
89
+ # source://rbs-inline//lib/rbs/inline/ast/annotations.rb#208
90
+ def comment; end
91
+
92
+ # : Symbol?
93
+ #
94
+ # source://rbs-inline//lib/rbs/inline/ast/annotations.rb#204
95
+ def name; end
96
+
97
+ # : Types::Block?
98
+ #
99
+ # source://rbs-inline//lib/rbs/inline/ast/annotations.rb#206
100
+ def type; end
101
+
102
+ # : String
103
+ #
104
+ # source://rbs-inline//lib/rbs/inline/ast/annotations.rb#210
105
+ def type_source; end
106
+ end
107
+
108
+ # `@rbs class Foo`
109
+ #
110
+ # source://rbs-inline//lib/rbs/inline/ast/annotations.rb#739
111
+ class RBS::Inline::AST::Annotations::ClassDecl < ::RBS::Inline::AST::Annotations::Base
112
+ include ::RBS::Inline::AST::Annotations::Utils
113
+
114
+ # @return [ClassDecl] a new instance of ClassDecl
115
+ #
116
+ # source://rbs-inline//lib/rbs/inline/ast/annotations.rb#749
117
+ def initialize(tree, comments); end
118
+
119
+ # : TypeName?
120
+ #
121
+ # source://rbs-inline//lib/rbs/inline/ast/annotations.rb#740
122
+ def name; end
123
+
124
+ # : RBS::AST::Declarations::Class::Super?
125
+ #
126
+ # source://rbs-inline//lib/rbs/inline/ast/annotations.rb#744
127
+ def super_class; end
128
+
129
+ # : Array[RBS::AST::TypeParam]
130
+ #
131
+ # source://rbs-inline//lib/rbs/inline/ast/annotations.rb#742
132
+ def type_params; end
133
+ end
134
+
135
+ # source://rbs-inline//lib/rbs/inline/ast/annotations.rb#352
136
+ class RBS::Inline::AST::Annotations::Dot3Assertion < ::RBS::Inline::AST::Annotations::Base
137
+ # @return [Dot3Assertion] a new instance of Dot3Assertion
138
+ #
139
+ # source://rbs-inline//lib/rbs/inline/ast/annotations.rb#354
140
+ def initialize(tree, source); end
141
+ end
142
+
143
+ # `@rbs` **x: T
144
+ #
145
+ # source://rbs-inline//lib/rbs/inline/ast/annotations.rb#199
146
+ class RBS::Inline::AST::Annotations::DoubleSplatParamType < ::RBS::Inline::AST::Annotations::SpecialVarTypeAnnotation; end
147
+
148
+ # `# @rbs!` annotation
149
+ #
150
+ # source://rbs-inline//lib/rbs/inline/ast/annotations.rb#586
151
+ class RBS::Inline::AST::Annotations::Embedded < ::RBS::Inline::AST::Annotations::Base
152
+ # @return [Embedded] a new instance of Embedded
153
+ #
154
+ # source://rbs-inline//lib/rbs/inline/ast/annotations.rb#590
155
+ def initialize(tree, source); end
156
+
157
+ # : String
158
+ #
159
+ # source://rbs-inline//lib/rbs/inline/ast/annotations.rb#587
160
+ def content; end
161
+ end
162
+
163
+ # `# @rbs generic [type param]`
164
+ #
165
+ # ```rb
166
+ # # @rbs generic X
167
+ # # @rbs generic in Y
168
+ # # @rbs generic unchecked out Z < String -- Comment here
169
+ # ```
170
+ #
171
+ # source://rbs-inline//lib/rbs/inline/ast/annotations.rb#561
172
+ class RBS::Inline::AST::Annotations::Generic < ::RBS::Inline::AST::Annotations::Base
173
+ include ::RBS::Inline::AST::Annotations::Utils
174
+
175
+ # @return [Generic] a new instance of Generic
176
+ #
177
+ # source://rbs-inline//lib/rbs/inline/ast/annotations.rb#571
178
+ def initialize(tree, source); end
179
+
180
+ # : String?
181
+ #
182
+ # source://rbs-inline//lib/rbs/inline/ast/annotations.rb#566
183
+ def comment; end
184
+
185
+ # TypeParam object or `nil` if syntax error
186
+ #
187
+ # source://rbs-inline//lib/rbs/inline/ast/annotations.rb#564
188
+ def type_param; end
189
+ end
190
+
191
+ # `# @rbs inherits T`
192
+ #
193
+ # source://rbs-inline//lib/rbs/inline/ast/annotations.rb#427
194
+ class RBS::Inline::AST::Annotations::Inherits < ::RBS::Inline::AST::Annotations::Base
195
+ # @return [Inherits] a new instance of Inherits
196
+ #
197
+ # source://rbs-inline//lib/rbs/inline/ast/annotations.rb#432
198
+ def initialize(tree, source); end
199
+
200
+ # : Array[Types::t]?
201
+ #
202
+ # source://rbs-inline//lib/rbs/inline/ast/annotations.rb#429
203
+ def args; end
204
+
205
+ # : TypeName?
206
+ #
207
+ # source://rbs-inline//lib/rbs/inline/ast/annotations.rb#428
208
+ def super_name; end
209
+ end
210
+
211
+ # `@rbs @foo: T` or `@rbs self.@foo: T`
212
+ #
213
+ # source://rbs-inline//lib/rbs/inline/ast/annotations.rb#283
214
+ class RBS::Inline::AST::Annotations::IvarType < ::RBS::Inline::AST::Annotations::Base
215
+ # @return [IvarType] a new instance of IvarType
216
+ #
217
+ # source://rbs-inline//lib/rbs/inline/ast/annotations.rb#293
218
+ def initialize(tree, source); end
219
+
220
+ # : bool
221
+ #
222
+ # source://rbs-inline//lib/rbs/inline/ast/annotations.rb#288
223
+ def class_instance; end
224
+
225
+ # : String?
226
+ #
227
+ # source://rbs-inline//lib/rbs/inline/ast/annotations.rb#290
228
+ def comment; end
229
+
230
+ # : Symbol
231
+ #
232
+ # source://rbs-inline//lib/rbs/inline/ast/annotations.rb#284
233
+ def name; end
234
+
235
+ # : Types::t?
236
+ #
237
+ # source://rbs-inline//lib/rbs/inline/ast/annotations.rb#286
238
+ def type; end
239
+ end
240
+
241
+ # `@rbs METHOD-TYPE``
242
+ #
243
+ # source://rbs-inline//lib/rbs/inline/ast/annotations.rb#600
244
+ class RBS::Inline::AST::Annotations::Method < ::RBS::Inline::AST::Annotations::Base
245
+ # @return [Method] a new instance of Method
246
+ #
247
+ # source://rbs-inline//lib/rbs/inline/ast/annotations.rb#614
248
+ def initialize(tree, source); end
249
+
250
+ # : (Array[tree]) -> method_type?
251
+ #
252
+ # source://rbs-inline//lib/rbs/inline/ast/annotations.rb#624
253
+ def construct_method_types(children); end
254
+
255
+ # source://rbs-inline//lib/rbs/inline/ast/annotations.rb#645
256
+ def each_method_type; end
257
+
258
+ # Returns the parsing error overload string
259
+ #
260
+ # Returns `nil` if no parsing error found.
261
+ #
262
+ # source://rbs-inline//lib/rbs/inline/ast/annotations.rb#666
263
+ def error_source; end
264
+
265
+ # : String
266
+ #
267
+ # source://rbs-inline//lib/rbs/inline/ast/annotations.rb#611
268
+ def method_type_source; end
269
+
270
+ # @rbs! type method_type = [MethodType, method_type?] | String
271
+ #
272
+ # source://rbs-inline//lib/rbs/inline/ast/annotations.rb#603
273
+ def method_types; end
274
+
275
+ # `true` if the method definition is overloading something
276
+ #
277
+ # source://rbs-inline//lib/rbs/inline/ast/annotations.rb#607
278
+ def overloading; end
279
+
280
+ # : MethodType?
281
+ #
282
+ # source://rbs-inline//lib/rbs/inline/ast/annotations.rb#609
283
+ def type; end
284
+ end
285
+
286
+ # source://rbs-inline//lib/rbs/inline/ast/annotations.rb#308
287
+ class RBS::Inline::AST::Annotations::MethodTypeAssertion < ::RBS::Inline::AST::Annotations::Base
288
+ # @return [MethodTypeAssertion] a new instance of MethodTypeAssertion
289
+ #
290
+ # source://rbs-inline//lib/rbs/inline/ast/annotations.rb#312
291
+ def initialize(tree, source); end
292
+
293
+ # : MethodType
294
+ #
295
+ # source://rbs-inline//lib/rbs/inline/ast/annotations.rb#309
296
+ def method_type; end
297
+
298
+ # : String
299
+ #
300
+ # source://rbs-inline//lib/rbs/inline/ast/annotations.rb#319
301
+ def type_source; end
302
+ end
303
+
304
+ # `@rbs module Foo`
305
+ #
306
+ # source://rbs-inline//lib/rbs/inline/ast/annotations.rb#684
307
+ class RBS::Inline::AST::Annotations::ModuleDecl < ::RBS::Inline::AST::Annotations::Base
308
+ include ::RBS::Inline::AST::Annotations::Utils
309
+
310
+ # @return [ModuleDecl] a new instance of ModuleDecl
311
+ #
312
+ # source://rbs-inline//lib/rbs/inline/ast/annotations.rb#694
313
+ def initialize(tree, comments); end
314
+
315
+ # : TypeName?
316
+ #
317
+ # source://rbs-inline//lib/rbs/inline/ast/annotations.rb#685
318
+ def name; end
319
+
320
+ # : Array[RBS::AST::Declarations::Module::Self]
321
+ #
322
+ # source://rbs-inline//lib/rbs/inline/ast/annotations.rb#689
323
+ def self_types; end
324
+
325
+ # : Array[RBS::AST::TypeParam]
326
+ #
327
+ # source://rbs-inline//lib/rbs/inline/ast/annotations.rb#687
328
+ def type_params; end
329
+ end
330
+
331
+ # `# @rbs module-self [MODULE_SELF]`
332
+ #
333
+ # source://rbs-inline//lib/rbs/inline/ast/annotations.rb#511
334
+ class RBS::Inline::AST::Annotations::ModuleSelf < ::RBS::Inline::AST::Annotations::Base
335
+ # @return [ModuleSelf] a new instance of ModuleSelf
336
+ #
337
+ # source://rbs-inline//lib/rbs/inline/ast/annotations.rb#517
338
+ def initialize(tree, source); end
339
+
340
+ # : String?
341
+ #
342
+ # source://rbs-inline//lib/rbs/inline/ast/annotations.rb#514
343
+ def comment; end
344
+
345
+ # : Array[RBS::AST::Declarations::Module::Self]
346
+ #
347
+ # source://rbs-inline//lib/rbs/inline/ast/annotations.rb#512
348
+ def self_types; end
349
+ end
350
+
351
+ # `# @rbs override`
352
+ #
353
+ # Specify the method types as `...` (overriding super class method)
354
+ #
355
+ # source://rbs-inline//lib/rbs/inline/ast/annotations.rb#450
356
+ class RBS::Inline::AST::Annotations::Override < ::RBS::Inline::AST::Annotations::Base
357
+ # @return [Override] a new instance of Override
358
+ #
359
+ # source://rbs-inline//lib/rbs/inline/ast/annotations.rb#452
360
+ def initialize(tree, source); end
361
+ end
362
+
363
+ # `# @rbs %a{a} %a{a} ...`
364
+ #
365
+ # source://rbs-inline//lib/rbs/inline/ast/annotations.rb#393
366
+ class RBS::Inline::AST::Annotations::RBSAnnotation < ::RBS::Inline::AST::Annotations::Base
367
+ # @return [RBSAnnotation] a new instance of RBSAnnotation
368
+ #
369
+ # source://rbs-inline//lib/rbs/inline/ast/annotations.rb#397
370
+ def initialize(tree, comments); end
371
+
372
+ # : Array[RBS::AST::Annotation]
373
+ #
374
+ # source://rbs-inline//lib/rbs/inline/ast/annotations.rb#408
375
+ def annotations; end
376
+
377
+ # : Array[String]
378
+ #
379
+ # source://rbs-inline//lib/rbs/inline/ast/annotations.rb#394
380
+ def contents; end
381
+ end
382
+
383
+ # `@rbs return: T`
384
+ #
385
+ # source://rbs-inline//lib/rbs/inline/ast/annotations.rb#250
386
+ class RBS::Inline::AST::Annotations::ReturnType < ::RBS::Inline::AST::Annotations::Base
387
+ # @return [ReturnType] a new instance of ReturnType
388
+ #
389
+ # source://rbs-inline//lib/rbs/inline/ast/annotations.rb#256
390
+ def initialize(tree, source); end
391
+
392
+ # : String?
393
+ #
394
+ # source://rbs-inline//lib/rbs/inline/ast/annotations.rb#253
395
+ def comment; end
396
+
397
+ # @return [Boolean]
398
+ #
399
+ # source://rbs-inline//lib/rbs/inline/ast/annotations.rb#272
400
+ def complete?; end
401
+
402
+ # : Types::t?
403
+ #
404
+ # source://rbs-inline//lib/rbs/inline/ast/annotations.rb#251
405
+ def type; end
406
+ end
407
+
408
+ # `# @rbs skip`
409
+ #
410
+ # source://rbs-inline//lib/rbs/inline/ast/annotations.rb#417
411
+ class RBS::Inline::AST::Annotations::Skip < ::RBS::Inline::AST::Annotations::Base
412
+ # @return [Skip] a new instance of Skip
413
+ #
414
+ # source://rbs-inline//lib/rbs/inline/ast/annotations.rb#419
415
+ def initialize(tree, source); end
416
+ end
417
+
418
+ # source://rbs-inline//lib/rbs/inline/ast/annotations.rb#160
419
+ class RBS::Inline::AST::Annotations::SpecialVarTypeAnnotation < ::RBS::Inline::AST::Annotations::Base
420
+ # @return [SpecialVarTypeAnnotation] a new instance of SpecialVarTypeAnnotation
421
+ #
422
+ # source://rbs-inline//lib/rbs/inline/ast/annotations.rb#170
423
+ def initialize(tree, source); end
424
+
425
+ # : String?
426
+ #
427
+ # source://rbs-inline//lib/rbs/inline/ast/annotations.rb#165
428
+ def comment; end
429
+
430
+ # : Symbol?
431
+ #
432
+ # source://rbs-inline//lib/rbs/inline/ast/annotations.rb#161
433
+ def name; end
434
+
435
+ # : Types::t?
436
+ #
437
+ # source://rbs-inline//lib/rbs/inline/ast/annotations.rb#163
438
+ def type; end
439
+
440
+ # : String
441
+ #
442
+ # source://rbs-inline//lib/rbs/inline/ast/annotations.rb#167
443
+ def type_source; end
444
+ end
445
+
446
+ # `@rbs *x: T`
447
+ #
448
+ # source://rbs-inline//lib/rbs/inline/ast/annotations.rb#195
449
+ class RBS::Inline::AST::Annotations::SplatParamType < ::RBS::Inline::AST::Annotations::SpecialVarTypeAnnotation; end
450
+
451
+ # source://rbs-inline//lib/rbs/inline/ast/annotations.rb#340
452
+ class RBS::Inline::AST::Annotations::SyntaxErrorAssertion < ::RBS::Inline::AST::Annotations::Base
453
+ # @return [SyntaxErrorAssertion] a new instance of SyntaxErrorAssertion
454
+ #
455
+ # source://rbs-inline//lib/rbs/inline/ast/annotations.rb#344
456
+ def initialize(tree, source); end
457
+
458
+ # : String
459
+ #
460
+ # source://rbs-inline//lib/rbs/inline/ast/annotations.rb#341
461
+ def error_string; end
462
+ end
463
+
464
+ # source://rbs-inline//lib/rbs/inline/ast/annotations.rb#324
465
+ class RBS::Inline::AST::Annotations::TypeAssertion < ::RBS::Inline::AST::Annotations::Base
466
+ # @return [TypeAssertion] a new instance of TypeAssertion
467
+ #
468
+ # source://rbs-inline//lib/rbs/inline/ast/annotations.rb#328
469
+ def initialize(tree, source); end
470
+
471
+ # : Types::t
472
+ #
473
+ # source://rbs-inline//lib/rbs/inline/ast/annotations.rb#325
474
+ def type; end
475
+
476
+ # : String
477
+ #
478
+ # source://rbs-inline//lib/rbs/inline/ast/annotations.rb#335
479
+ def type_source; end
480
+ end
481
+
482
+ # `# @rbs use [USES]`
483
+ #
484
+ # source://rbs-inline//lib/rbs/inline/ast/annotations.rb#459
485
+ class RBS::Inline::AST::Annotations::Use < ::RBS::Inline::AST::Annotations::Base
486
+ # @return [Use] a new instance of Use
487
+ #
488
+ # source://rbs-inline//lib/rbs/inline/ast/annotations.rb#463
489
+ def initialize(tree, source); end
490
+
491
+ # : Array[RBS::AST::Directives::Use::clause]
492
+ #
493
+ # source://rbs-inline//lib/rbs/inline/ast/annotations.rb#460
494
+ def clauses; end
495
+ end
496
+
497
+ # @rbs!
498
+ # type t = VarType
499
+ # | ReturnType
500
+ # | Use
501
+ # | Inherits
502
+ # | Generic
503
+ # | ModuleSelf
504
+ # | Skip
505
+ # | MethodTypeAssertion | TypeAssertion | SyntaxErrorAssertion | Dot3Assertion
506
+ # | Application
507
+ # | RBSAnnotation
508
+ # | Override
509
+ # | IvarType
510
+ # | Embedded
511
+ # | Method
512
+ # | SplatParamType
513
+ # | DoubleSplatParamType
514
+ # | BlockType
515
+ # | ModuleDecl
516
+ # | ClassDecl
517
+ # # | Def
518
+ # # | AttrReader | AttrWriter | AttrAccessor
519
+ # # | Include | Extend | Prepend
520
+ # # | Alias
521
+ #
522
+ # source://rbs-inline//lib/rbs/inline/ast/annotations.rb#32
523
+ module RBS::Inline::AST::Annotations::Utils
524
+ # source://rbs-inline//lib/rbs/inline/ast/annotations.rb#68
525
+ def translate_super_class(type); end
526
+
527
+ # Assumes the tree is generated through `#parse_module_name`
528
+ #
529
+ # Returns a type name, or `nil` if the tree is something invalid.
530
+ #
531
+ # @param tree -- A tree object that is generated through `#parse_module_name`
532
+ #
533
+ # source://rbs-inline//lib/rbs/inline/ast/annotations.rb#86
534
+ def translate_type_name(tree); end
535
+
536
+ # source://rbs-inline//lib/rbs/inline/ast/annotations.rb#34
537
+ def translate_type_param(tree); end
538
+ end
539
+
540
+ # source://rbs-inline//lib/rbs/inline/ast/annotations.rb#123
541
+ class RBS::Inline::AST::Annotations::VarType < ::RBS::Inline::AST::Annotations::Base
542
+ # @return [VarType] a new instance of VarType
543
+ #
544
+ # source://rbs-inline//lib/rbs/inline/ast/annotations.rb#131
545
+ def initialize(tree, source); end
546
+
547
+ # : String?
548
+ #
549
+ # source://rbs-inline//lib/rbs/inline/ast/annotations.rb#128
550
+ def comment; end
551
+
552
+ # : () -> bool
553
+ #
554
+ # @return [Boolean]
555
+ #
556
+ # source://rbs-inline//lib/rbs/inline/ast/annotations.rb#151
557
+ def complete?; end
558
+
559
+ # : Symbol
560
+ #
561
+ # source://rbs-inline//lib/rbs/inline/ast/annotations.rb#124
562
+ def name; end
563
+
564
+ # : Types::t?
565
+ #
566
+ # source://rbs-inline//lib/rbs/inline/ast/annotations.rb#126
567
+ def type; end
568
+ end
569
+
570
+ # CommentLines represents consecutive comments, providing a mapping from locations in `#string` to a pair of a comment and its offset
571
+ #
572
+ # The comments construct one String.
573
+ #
574
+ # ```ruby
575
+ # # Hello <-- Comment1
576
+ # # World <-- Comment2
577
+ # ```
578
+ #
579
+ # We want to get a String of comment1 and comment2, `"Hello\nWorld".
580
+ # And want to translate a location in the string into the location in comment1 and comment2.
581
+ #
582
+ # source://rbs-inline//lib/rbs/inline/ast/comment_lines.rb#18
583
+ class RBS::Inline::AST::CommentLines
584
+ # @return [CommentLines] a new instance of CommentLines
585
+ #
586
+ # source://rbs-inline//lib/rbs/inline/ast/comment_lines.rb#22
587
+ def initialize(comments); end
588
+
589
+ # Translates the cursor index of `#string` into the cursor index of a specific comment object
590
+ #
591
+ # source://rbs-inline//lib/rbs/inline/ast/comment_lines.rb#38
592
+ def comment_location(index); end
593
+
594
+ # : Array[Prism::Comment]
595
+ #
596
+ # source://rbs-inline//lib/rbs/inline/ast/comment_lines.rb#19
597
+ def comments; end
598
+
599
+ # : Array[String]
600
+ #
601
+ # source://rbs-inline//lib/rbs/inline/ast/comment_lines.rb#26
602
+ def lines; end
603
+
604
+ # : String
605
+ #
606
+ # source://rbs-inline//lib/rbs/inline/ast/comment_lines.rb#30
607
+ def string; end
608
+ end
609
+
610
+ # source://rbs-inline//lib/rbs/inline/ast/declarations.rb#6
611
+ module RBS::Inline::AST::Declarations; end
612
+
613
+ # source://rbs-inline//lib/rbs/inline/ast/declarations.rb#53
614
+ class RBS::Inline::AST::Declarations::Base; end
615
+
616
+ # source://rbs-inline//lib/rbs/inline/ast/declarations.rb#261
617
+ class RBS::Inline::AST::Declarations::BlockDecl < ::RBS::Inline::AST::Declarations::Base
618
+ # @return [BlockDecl] a new instance of BlockDecl
619
+ #
620
+ # source://rbs-inline//lib/rbs/inline/ast/declarations.rb#270
621
+ def initialize(node, comments); end
622
+
623
+ # : AnnotationParser::ParsingResult?
624
+ #
625
+ # source://rbs-inline//lib/rbs/inline/ast/declarations.rb#264
626
+ def comments; end
627
+
628
+ # Members included in the declaration
629
+ #
630
+ # source://rbs-inline//lib/rbs/inline/ast/declarations.rb#267
631
+ def members; end
632
+
633
+ # : Annotations::ModuleDecl | Annotations::ClassDecl | nil
634
+ #
635
+ # source://rbs-inline//lib/rbs/inline/ast/declarations.rb#280
636
+ def module_class_annotation; end
637
+
638
+ # : Prism::BlockNode
639
+ #
640
+ # source://rbs-inline//lib/rbs/inline/ast/declarations.rb#262
641
+ def node; end
642
+
643
+ # : Integer
644
+ #
645
+ # source://rbs-inline//lib/rbs/inline/ast/declarations.rb#276
646
+ def start_line; end
647
+ end
648
+
649
+ # [Prism::ClassNode]
650
+ #
651
+ # source://rbs-inline//lib/rbs/inline/ast/declarations.rb#93
652
+ class RBS::Inline::AST::Declarations::ClassDecl < ::RBS::Inline::AST::Declarations::ModuleOrClass
653
+ include ::RBS::Inline::AST::Declarations::ConstantUtil
654
+
655
+ # @return [ClassDecl] a new instance of ClassDecl
656
+ #
657
+ # source://rbs-inline//lib/rbs/inline/ast/declarations.rb#103
658
+ def initialize(node, comments, super_app); end
659
+
660
+ # source://rbs-inline//lib/rbs/inline/ast/declarations.rb#110
661
+ def class_name; end
662
+
663
+ # Type application for super class
664
+ #
665
+ # source://rbs-inline//lib/rbs/inline/ast/declarations.rb#97
666
+ def super_app; end
667
+
668
+ # source://rbs-inline//lib/rbs/inline/ast/declarations.rb#115
669
+ def super_class; end
670
+ end
671
+
672
+ # source://rbs-inline//lib/rbs/inline/ast/declarations.rb#174
673
+ class RBS::Inline::AST::Declarations::ConstantDecl < ::RBS::Inline::AST::Declarations::Base
674
+ include ::RBS::Inline::AST::Declarations::ConstantUtil
675
+
676
+ # @return [ConstantDecl] a new instance of ConstantDecl
677
+ #
678
+ # source://rbs-inline//lib/rbs/inline/ast/declarations.rb#184
679
+ def initialize(node, comments, assertion); end
680
+
681
+ # : Annotations::TypeAssertion?
682
+ #
683
+ # source://rbs-inline//lib/rbs/inline/ast/declarations.rb#179
684
+ def assertion; end
685
+
686
+ # : AnnotationParser::ParsingResult?
687
+ #
688
+ # source://rbs-inline//lib/rbs/inline/ast/declarations.rb#178
689
+ def comments; end
690
+
691
+ # source://rbs-inline//lib/rbs/inline/ast/declarations.rb#234
692
+ def constant_name; end
693
+
694
+ # source://rbs-inline//lib/rbs/inline/ast/declarations.rb#211
695
+ def literal_type; end
696
+
697
+ # : Prism::ConstantWriteNode
698
+ #
699
+ # source://rbs-inline//lib/rbs/inline/ast/declarations.rb#177
700
+ def node; end
701
+
702
+ # : Integer
703
+ #
704
+ # source://rbs-inline//lib/rbs/inline/ast/declarations.rb#238
705
+ def start_line; end
706
+
707
+ # source://rbs-inline//lib/rbs/inline/ast/declarations.rb#192
708
+ def type(default_type); end
709
+ end
710
+
711
+ # source://rbs-inline//lib/rbs/inline/ast/declarations.rb#7
712
+ module RBS::Inline::AST::Declarations::ConstantUtil
713
+ # source://rbs-inline//lib/rbs/inline/ast/declarations.rb#10
714
+ def type_name(node); end
715
+
716
+ # source://rbs-inline//lib/rbs/inline/ast/declarations.rb#18
717
+ def value_node(node); end
718
+ end
719
+
720
+ # source://rbs-inline//lib/rbs/inline/ast/declarations.rb#339
721
+ class RBS::Inline::AST::Declarations::DataAssignDecl < ::RBS::Inline::AST::Declarations::Base
722
+ include ::RBS::Inline::AST::Declarations::DataStructUtil
723
+ extend ::RBS::Inline::AST::Declarations::ConstantUtil
724
+
725
+ # @return [DataAssignDecl] a new instance of DataAssignDecl
726
+ #
727
+ # source://rbs-inline//lib/rbs/inline/ast/declarations.rb#353
728
+ def initialize(node, data_define_node, comments, type_decls); end
729
+
730
+ # : AnnotationParser::ParsingResult?
731
+ #
732
+ # source://rbs-inline//lib/rbs/inline/ast/declarations.rb#346
733
+ def comments; end
734
+
735
+ # source://rbs-inline//lib/rbs/inline/ast/declarations.rb#366
736
+ def constant_name; end
737
+
738
+ # : Prism::CallNode
739
+ #
740
+ # source://rbs-inline//lib/rbs/inline/ast/declarations.rb#350
741
+ def data_define_node; end
742
+
743
+ # source://rbs-inline//lib/rbs/inline/ast/declarations.rb#386
744
+ def each_attribute_argument(&block); end
745
+
746
+ # : Prism::ConstantWriteNode
747
+ #
748
+ # source://rbs-inline//lib/rbs/inline/ast/declarations.rb#344
749
+ def node; end
750
+
751
+ # : Integer
752
+ #
753
+ # source://rbs-inline//lib/rbs/inline/ast/declarations.rb#360
754
+ def start_line; end
755
+
756
+ # : Hash[Integer, Annotations::TypeAssertion]
757
+ #
758
+ # source://rbs-inline//lib/rbs/inline/ast/declarations.rb#348
759
+ def type_decls; end
760
+
761
+ class << self
762
+ # @return [Boolean]
763
+ #
764
+ # source://rbs-inline//lib/rbs/inline/ast/declarations.rb#371
765
+ def data_define?(node); end
766
+ end
767
+ end
768
+
769
+ # source://rbs-inline//lib/rbs/inline/ast/declarations.rb#298
770
+ module RBS::Inline::AST::Declarations::DataStructUtil
771
+ # : Array[RBS::AST::Annotation]
772
+ #
773
+ # source://rbs-inline//lib/rbs/inline/ast/declarations.rb#326
774
+ def class_annotations; end
775
+
776
+ # source://rbs-inline//lib/rbs/inline/ast/declarations.rb#311
777
+ def each_attribute(&block); end
778
+ end
779
+
780
+ # source://rbs-inline//lib/rbs/inline/ast/declarations.rb#38
781
+ module RBS::Inline::AST::Declarations::Generics
782
+ # source://rbs-inline//lib/rbs/inline/ast/declarations.rb#40
783
+ def type_params; end
784
+ end
785
+
786
+ # [Prism::ModuleNode]
787
+ #
788
+ # source://rbs-inline//lib/rbs/inline/ast/declarations.rb#152
789
+ class RBS::Inline::AST::Declarations::ModuleDecl < ::RBS::Inline::AST::Declarations::ModuleOrClass
790
+ include ::RBS::Inline::AST::Declarations::ConstantUtil
791
+
792
+ # source://rbs-inline//lib/rbs/inline/ast/declarations.rb#156
793
+ def module_name; end
794
+
795
+ # source://rbs-inline//lib/rbs/inline/ast/declarations.rb#161
796
+ def module_selfs; end
797
+ end
798
+
799
+ # source://rbs-inline//lib/rbs/inline/ast/declarations.rb#57
800
+ class RBS::Inline::AST::Declarations::ModuleOrClass < ::RBS::Inline::AST::Declarations::Base
801
+ # @return [ModuleOrClass] a new instance of ModuleOrClass
802
+ #
803
+ # source://rbs-inline//lib/rbs/inline/ast/declarations.rb#69
804
+ def initialize(node, comments); end
805
+
806
+ # Leading comment
807
+ #
808
+ # source://rbs-inline//lib/rbs/inline/ast/declarations.rb#62
809
+ def comments; end
810
+
811
+ # Members included in the declaration
812
+ #
813
+ # source://rbs-inline//lib/rbs/inline/ast/declarations.rb#65
814
+ def members; end
815
+
816
+ # The node that represents the declaration
817
+ #
818
+ # source://rbs-inline//lib/rbs/inline/ast/declarations.rb#59
819
+ def node; end
820
+
821
+ # : Integer
822
+ #
823
+ # source://rbs-inline//lib/rbs/inline/ast/declarations.rb#88
824
+ def start_line; end
825
+
826
+ # Type parameters for the declaration
827
+ #
828
+ # source://rbs-inline//lib/rbs/inline/ast/declarations.rb#76
829
+ def type_params; end
830
+ end
831
+
832
+ # [Prism::SingletonClassNode]
833
+ #
834
+ # source://rbs-inline//lib/rbs/inline/ast/declarations.rb#243
835
+ class RBS::Inline::AST::Declarations::SingletonClassDecl < ::RBS::Inline::AST::Declarations::ModuleOrClass
836
+ # source://rbs-inline//lib/rbs/inline/ast/declarations.rb#245
837
+ def visibility(def_member); end
838
+ end
839
+
840
+ # source://rbs-inline//lib/rbs/inline/ast/declarations.rb#393
841
+ class RBS::Inline::AST::Declarations::StructAssignDecl < ::RBS::Inline::AST::Declarations::Base
842
+ include ::RBS::Inline::AST::Declarations::DataStructUtil
843
+ extend ::RBS::Inline::AST::Declarations::ConstantUtil
844
+
845
+ # @return [StructAssignDecl] a new instance of StructAssignDecl
846
+ #
847
+ # source://rbs-inline//lib/rbs/inline/ast/declarations.rb#407
848
+ def initialize(node, struct_new_node, comments, type_decls); end
849
+
850
+ # : AnnotationParser::ParsingResult?
851
+ #
852
+ # source://rbs-inline//lib/rbs/inline/ast/declarations.rb#400
853
+ def comments; end
854
+
855
+ # source://rbs-inline//lib/rbs/inline/ast/declarations.rb#420
856
+ def constant_name; end
857
+
858
+ # source://rbs-inline//lib/rbs/inline/ast/declarations.rb#425
859
+ def each_attribute_argument(&block); end
860
+
861
+ # @return [Boolean]
862
+ #
863
+ # source://rbs-inline//lib/rbs/inline/ast/declarations.rb#452
864
+ def keyword_init?; end
865
+
866
+ # : Prism::ConstantWriteNode
867
+ #
868
+ # source://rbs-inline//lib/rbs/inline/ast/declarations.rb#398
869
+ def node; end
870
+
871
+ # @return [Boolean]
872
+ #
873
+ # source://rbs-inline//lib/rbs/inline/ast/declarations.rb#476
874
+ def positional_init?; end
875
+
876
+ # Returns `true` is annotation is given to make all attributes *readonly*
877
+ #
878
+ # Add `# @rbs %a{rbs-inline:readonly-attributes=true}` to the class to make all attributes `attr_reader`, instead of `attr_accessor`.
879
+ #
880
+ # @return [Boolean]
881
+ #
882
+ # source://rbs-inline//lib/rbs/inline/ast/declarations.rb#504
883
+ def readonly_attributes?; end
884
+
885
+ # Returns `true` if annotation is given to make all `.new` arguments required
886
+ #
887
+ # Add `# @rbs %a{rbs-inline:new-args=required}` to the class to make all of the parameters required.
888
+ #
889
+ # @return [Boolean]
890
+ #
891
+ # source://rbs-inline//lib/rbs/inline/ast/declarations.rb#515
892
+ def required_new_args?; end
893
+
894
+ # : Integer
895
+ #
896
+ # source://rbs-inline//lib/rbs/inline/ast/declarations.rb#414
897
+ def start_line; end
898
+
899
+ # : Prism::CallNode
900
+ #
901
+ # source://rbs-inline//lib/rbs/inline/ast/declarations.rb#404
902
+ def struct_new_node; end
903
+
904
+ # : Hash[Integer, Annotations::TypeAssertion]
905
+ #
906
+ # source://rbs-inline//lib/rbs/inline/ast/declarations.rb#402
907
+ def type_decls; end
908
+
909
+ class << self
910
+ # @return [Boolean]
911
+ #
912
+ # source://rbs-inline//lib/rbs/inline/ast/declarations.rb#437
913
+ def struct_new?(node); end
914
+ end
915
+ end
916
+
917
+ # source://rbs-inline//lib/rbs/inline/ast/members.rb#6
918
+ module RBS::Inline::AST::Members; end
919
+
920
+ # @rbs!
921
+ # type ruby = RubyDef | RubyAlias | RubyMixin | RubyAttr | RubyPublic | RubyPrivate
922
+ #
923
+ # type rbs = RBSIvar | RBSEmbedded
924
+ #
925
+ # type t = ruby | rbs
926
+ #
927
+ # source://rbs-inline//lib/rbs/inline/ast/members.rb#14
928
+ class RBS::Inline::AST::Members::Base
929
+ # @return [Base] a new instance of Base
930
+ #
931
+ # source://rbs-inline//lib/rbs/inline/ast/members.rb#18
932
+ def initialize(location); end
933
+
934
+ # : Prism::Location
935
+ #
936
+ # source://rbs-inline//lib/rbs/inline/ast/members.rb#15
937
+ def location; end
938
+
939
+ # : Integer
940
+ #
941
+ # source://rbs-inline//lib/rbs/inline/ast/members.rb#22
942
+ def start_line; end
943
+ end
944
+
945
+ # source://rbs-inline//lib/rbs/inline/ast/members.rb#514
946
+ class RBS::Inline::AST::Members::RBSBase < ::RBS::Inline::AST::Members::Base; end
947
+
948
+ # source://rbs-inline//lib/rbs/inline/ast/members.rb#557
949
+ class RBS::Inline::AST::Members::RBSEmbedded < ::RBS::Inline::AST::Members::RBSBase
950
+ # @return [RBSEmbedded] a new instance of RBSEmbedded
951
+ #
952
+ # source://rbs-inline//lib/rbs/inline/ast/members.rb#564
953
+ def initialize(comment, annotation); end
954
+
955
+ # : Annotations::Embedded
956
+ #
957
+ # source://rbs-inline//lib/rbs/inline/ast/members.rb#558
958
+ def annotation; end
959
+
960
+ # : AnnotationParser::ParsingResult
961
+ #
962
+ # source://rbs-inline//lib/rbs/inline/ast/members.rb#560
963
+ def comment; end
964
+
965
+ # Returns the array of `RBS::AST` members
966
+ #
967
+ # Returns `RBS::ParsingError` when the `content` has syntax error.
968
+ #
969
+ # source://rbs-inline//lib/rbs/inline/ast/members.rb#575
970
+ def members; end
971
+ end
972
+
973
+ # source://rbs-inline//lib/rbs/inline/ast/members.rb#517
974
+ class RBS::Inline::AST::Members::RBSIvar < ::RBS::Inline::AST::Members::RBSBase
975
+ # @return [RBSIvar] a new instance of RBSIvar
976
+ #
977
+ # source://rbs-inline//lib/rbs/inline/ast/members.rb#524
978
+ def initialize(comment, annotation); end
979
+
980
+ # : Annotations::IvarType
981
+ #
982
+ # source://rbs-inline//lib/rbs/inline/ast/members.rb#518
983
+ def annotation; end
984
+
985
+ # : AnnotationParser::ParsingResult
986
+ #
987
+ # source://rbs-inline//lib/rbs/inline/ast/members.rb#520
988
+ def comment; end
989
+
990
+ # : RBS::AST::Members::InstanceVariable | RBS::AST::Members::ClassInstanceVariable | nil
991
+ #
992
+ # source://rbs-inline//lib/rbs/inline/ast/members.rb#531
993
+ def rbs; end
994
+ end
995
+
996
+ # source://rbs-inline//lib/rbs/inline/ast/members.rb#315
997
+ class RBS::Inline::AST::Members::RubyAlias < ::RBS::Inline::AST::Members::RubyBase
998
+ # @return [RubyAlias] a new instance of RubyAlias
999
+ #
1000
+ # source://rbs-inline//lib/rbs/inline/ast/members.rb#321
1001
+ def initialize(node, comments); end
1002
+
1003
+ # : AnnotationParser::ParsingResult?
1004
+ #
1005
+ # source://rbs-inline//lib/rbs/inline/ast/members.rb#317
1006
+ def comments; end
1007
+
1008
+ # source://rbs-inline//lib/rbs/inline/ast/members.rb#336
1009
+ def new_name; end
1010
+
1011
+ # : Prism::AliasMethodNode
1012
+ #
1013
+ # source://rbs-inline//lib/rbs/inline/ast/members.rb#316
1014
+ def node; end
1015
+
1016
+ # source://rbs-inline//lib/rbs/inline/ast/members.rb#329
1017
+ def old_name; end
1018
+ end
1019
+
1020
+ # source://rbs-inline//lib/rbs/inline/ast/members.rb#415
1021
+ class RBS::Inline::AST::Members::RubyAttr < ::RBS::Inline::AST::Members::RubyBase
1022
+ # @return [RubyAttr] a new instance of RubyAttr
1023
+ #
1024
+ # source://rbs-inline//lib/rbs/inline/ast/members.rb#426
1025
+ def initialize(node, comments, visibility, assertion); end
1026
+
1027
+ # : Annotations::TypeAssertion?
1028
+ #
1029
+ # source://rbs-inline//lib/rbs/inline/ast/members.rb#419
1030
+ def assertion; end
1031
+
1032
+ # Returns the type of the attribute
1033
+ #
1034
+ # source://rbs-inline//lib/rbs/inline/ast/members.rb#482
1035
+ def attribute_type; end
1036
+
1037
+ # : AnnotationParser::ParsingResult?
1038
+ #
1039
+ # source://rbs-inline//lib/rbs/inline/ast/members.rb#417
1040
+ def comments; end
1041
+
1042
+ # : Prism::CallNode
1043
+ #
1044
+ # source://rbs-inline//lib/rbs/inline/ast/members.rb#416
1045
+ def node; end
1046
+
1047
+ # source://rbs-inline//lib/rbs/inline/ast/members.rb#437
1048
+ def rbs(default_type); end
1049
+
1050
+ # : RBS::AST::Members::visibility?
1051
+ #
1052
+ # source://rbs-inline//lib/rbs/inline/ast/members.rb#418
1053
+ def visibility; end
1054
+ end
1055
+
1056
+ # source://rbs-inline//lib/rbs/inline/ast/members.rb#27
1057
+ class RBS::Inline::AST::Members::RubyBase < ::RBS::Inline::AST::Members::Base; end
1058
+
1059
+ # source://rbs-inline//lib/rbs/inline/ast/members.rb#30
1060
+ class RBS::Inline::AST::Members::RubyDef < ::RBS::Inline::AST::Members::RubyBase
1061
+ # @return [RubyDef] a new instance of RubyDef
1062
+ #
1063
+ # source://rbs-inline//lib/rbs/inline/ast/members.rb#57
1064
+ def initialize(node, comments, visibility, singleton_instance, assertion); end
1065
+
1066
+ # Returns `nil` if no `@rbs METHOD-TYPE` or `#:` annotation is given
1067
+ #
1068
+ # Returns an empty array if only `...` method type is given.
1069
+ #
1070
+ # source://rbs-inline//lib/rbs/inline/ast/members.rb#76
1071
+ def annotated_method_types; end
1072
+
1073
+ # Assertion given at the end of the method name
1074
+ #
1075
+ # source://rbs-inline//lib/rbs/inline/ast/members.rb#50
1076
+ def assertion; end
1077
+
1078
+ # : AST::Annotations::BlockType?
1079
+ #
1080
+ # source://rbs-inline//lib/rbs/inline/ast/members.rb#306
1081
+ def block_type_annotation; end
1082
+
1083
+ # : AnnotationParser::ParsingResult?
1084
+ #
1085
+ # source://rbs-inline//lib/rbs/inline/ast/members.rb#32
1086
+ def comments; end
1087
+
1088
+ # : Annotations::DoubleSplatParamType?
1089
+ #
1090
+ # source://rbs-inline//lib/rbs/inline/ast/members.rb#137
1091
+ def double_splat_param_type_annotation; end
1092
+
1093
+ # : Array[RBS::AST::Annotation]
1094
+ #
1095
+ # source://rbs-inline//lib/rbs/inline/ast/members.rb#283
1096
+ def method_annotations; end
1097
+
1098
+ # Returns the name of the method
1099
+ #
1100
+ # source://rbs-inline//lib/rbs/inline/ast/members.rb#68
1101
+ def method_name; end
1102
+
1103
+ # source://rbs-inline//lib/rbs/inline/ast/members.rb#162
1104
+ def method_overloads(default_type); end
1105
+
1106
+ # : Prism::DefNode
1107
+ #
1108
+ # source://rbs-inline//lib/rbs/inline/ast/members.rb#31
1109
+ def node; end
1110
+
1111
+ # : bool
1112
+ #
1113
+ # @return [Boolean]
1114
+ #
1115
+ # source://rbs-inline//lib/rbs/inline/ast/members.rb#145
1116
+ def overloading?; end
1117
+
1118
+ # Returns the `@rbs override` annotation
1119
+ #
1120
+ # source://rbs-inline//lib/rbs/inline/ast/members.rb#298
1121
+ def override_annotation; end
1122
+
1123
+ # : Types::t?
1124
+ #
1125
+ # source://rbs-inline//lib/rbs/inline/ast/members.rb#97
1126
+ def return_type; end
1127
+
1128
+ # The function is defined as singleton and instance method (as known as module_function)
1129
+ #
1130
+ # source://rbs-inline//lib/rbs/inline/ast/members.rb#46
1131
+ def singleton_instance; end
1132
+
1133
+ # The function is defined as singleton and instance method (as known as module_function)
1134
+ #
1135
+ # source://rbs-inline//lib/rbs/inline/ast/members.rb#46
1136
+ def singleton_instance=(_arg0); end
1137
+
1138
+ # : Annotations::SplatParamType?
1139
+ #
1140
+ # source://rbs-inline//lib/rbs/inline/ast/members.rb#129
1141
+ def splat_param_type_annotation; end
1142
+
1143
+ # : Hash[Symbol, Types::t?]
1144
+ #
1145
+ # source://rbs-inline//lib/rbs/inline/ast/members.rb#110
1146
+ def var_type_hash; end
1147
+
1148
+ # The visibility directly attached to the `def` node
1149
+ #
1150
+ # `nil` when the `def` node is not passed to `private`/`public` calls.
1151
+ #
1152
+ # ```rb
1153
+ # def foo() end # <= nil
1154
+ # private def foo() end # <= :private
1155
+ # ```
1156
+ #
1157
+ # source://rbs-inline//lib/rbs/inline/ast/members.rb#42
1158
+ def visibility; end
1159
+ end
1160
+
1161
+ # source://rbs-inline//lib/rbs/inline/ast/members.rb#343
1162
+ class RBS::Inline::AST::Members::RubyMixin < ::RBS::Inline::AST::Members::RubyBase
1163
+ include ::RBS::Inline::AST::Declarations::ConstantUtil
1164
+
1165
+ # @return [RubyMixin] a new instance of RubyMixin
1166
+ #
1167
+ # source://rbs-inline//lib/rbs/inline/ast/members.rb#359
1168
+ def initialize(node, comments, application); end
1169
+
1170
+ # Possible following type application annotation
1171
+ #
1172
+ # source://rbs-inline//lib/rbs/inline/ast/members.rb#353
1173
+ def application; end
1174
+
1175
+ # Comments attached to the call node
1176
+ #
1177
+ # source://rbs-inline//lib/rbs/inline/ast/members.rb#350
1178
+ def comments; end
1179
+
1180
+ # CallNode that calls `include`, `prepend`, and `extend` method
1181
+ #
1182
+ # source://rbs-inline//lib/rbs/inline/ast/members.rb#347
1183
+ def node; end
1184
+
1185
+ # source://rbs-inline//lib/rbs/inline/ast/members.rb#371
1186
+ def rbs; end
1187
+ end
1188
+
1189
+ # `private` call without arguments
1190
+ #
1191
+ # source://rbs-inline//lib/rbs/inline/ast/members.rb#492
1192
+ class RBS::Inline::AST::Members::RubyPrivate < ::RBS::Inline::AST::Members::RubyBase
1193
+ # @return [RubyPrivate] a new instance of RubyPrivate
1194
+ #
1195
+ # source://rbs-inline//lib/rbs/inline/ast/members.rb#496
1196
+ def initialize(node); end
1197
+
1198
+ # : Prism::CallNode
1199
+ #
1200
+ # source://rbs-inline//lib/rbs/inline/ast/members.rb#493
1201
+ def node; end
1202
+ end
1203
+
1204
+ # `public` call without arguments
1205
+ #
1206
+ # source://rbs-inline//lib/rbs/inline/ast/members.rb#504
1207
+ class RBS::Inline::AST::Members::RubyPublic < ::RBS::Inline::AST::Members::RubyBase
1208
+ # @return [RubyPublic] a new instance of RubyPublic
1209
+ #
1210
+ # source://rbs-inline//lib/rbs/inline/ast/members.rb#508
1211
+ def initialize(node); end
1212
+
1213
+ # : Prism::CallNode
1214
+ #
1215
+ # source://rbs-inline//lib/rbs/inline/ast/members.rb#505
1216
+ def node; end
1217
+ end
1218
+
1219
+ # @rbs!
1220
+ # type token = [Symbol, String]
1221
+ #
1222
+ # type tree = token | Tree | Types::t | MethodType | nil
1223
+ #
1224
+ # source://rbs-inline//lib/rbs/inline/ast/tree.rb#11
1225
+ class RBS::Inline::AST::Tree
1226
+ # @return [Tree] a new instance of Tree
1227
+ #
1228
+ # source://rbs-inline//lib/rbs/inline/ast/tree.rb#19
1229
+ def initialize(type); end
1230
+
1231
+ # source://rbs-inline//lib/rbs/inline/ast/tree.rb#27
1232
+ def <<(tok); end
1233
+
1234
+ # Children but without `tWHITESPACE` tokens
1235
+ #
1236
+ # source://rbs-inline//lib/rbs/inline/ast/tree.rb#16
1237
+ def non_trivia_trees; end
1238
+
1239
+ # Returns n-th method type from the children
1240
+ #
1241
+ # Raises if the value is not a method type or `nil`.
1242
+ #
1243
+ # source://rbs-inline//lib/rbs/inline/ast/tree.rb#202
1244
+ def nth_method_type(index); end
1245
+
1246
+ # Returns n-th method tree from the children
1247
+ #
1248
+ # Raises if the value is not a method tree.
1249
+ #
1250
+ # source://rbs-inline//lib/rbs/inline/ast/tree.rb#234
1251
+ def nth_method_type!(index); end
1252
+
1253
+ # Returns n-th method type from the children
1254
+ #
1255
+ # Returns `nil` if the value is not a method type.
1256
+ #
1257
+ # @return [Boolean]
1258
+ #
1259
+ # source://rbs-inline//lib/rbs/inline/ast/tree.rb#218
1260
+ def nth_method_type?(index); end
1261
+
1262
+ # Returns n-th token from the children
1263
+ #
1264
+ # Raises if the value is not a token or nil.
1265
+ #
1266
+ # source://rbs-inline//lib/rbs/inline/ast/tree.rb#75
1267
+ def nth_token(index); end
1268
+
1269
+ # Returns n-th token from the children
1270
+ #
1271
+ # Raises if the value is not token.
1272
+ #
1273
+ # source://rbs-inline//lib/rbs/inline/ast/tree.rb#107
1274
+ def nth_token!(index); end
1275
+
1276
+ # Returns n-th token from the children
1277
+ #
1278
+ # Returns `nil` if the value is not a token.
1279
+ #
1280
+ # @return [Boolean]
1281
+ #
1282
+ # source://rbs-inline//lib/rbs/inline/ast/tree.rb#91
1283
+ def nth_token?(index); end
1284
+
1285
+ # Returns n-th tree from the children
1286
+ #
1287
+ # Raises if the value is not a tree or nil.
1288
+ #
1289
+ # source://rbs-inline//lib/rbs/inline/ast/tree.rb#117
1290
+ def nth_tree(index); end
1291
+
1292
+ # Returns n-th tree from the children
1293
+ #
1294
+ # Raises if the value is not a tree.
1295
+ #
1296
+ # source://rbs-inline//lib/rbs/inline/ast/tree.rb#149
1297
+ def nth_tree!(index); end
1298
+
1299
+ # Returns n-th tree from the children
1300
+ #
1301
+ # Returns `nil` if the value is not a tree or nil.
1302
+ #
1303
+ # @return [Boolean]
1304
+ #
1305
+ # source://rbs-inline//lib/rbs/inline/ast/tree.rb#133
1306
+ def nth_tree?(index); end
1307
+
1308
+ # Returns n-th type from the children
1309
+ #
1310
+ # Raises if the value is not a type or nil.
1311
+ #
1312
+ # source://rbs-inline//lib/rbs/inline/ast/tree.rb#160
1313
+ def nth_type(index); end
1314
+
1315
+ # Returns n-th type from the children
1316
+ #
1317
+ # Raises if the value is not a type.
1318
+ #
1319
+ # source://rbs-inline//lib/rbs/inline/ast/tree.rb#192
1320
+ def nth_type!(index); end
1321
+
1322
+ # Returns n-th type from the children
1323
+ #
1324
+ # Returns `nil` if the value is not a type.
1325
+ #
1326
+ # @return [Boolean]
1327
+ #
1328
+ # source://rbs-inline//lib/rbs/inline/ast/tree.rb#176
1329
+ def nth_type?(index); end
1330
+
1331
+ # Returns the source code associated to the tree
1332
+ #
1333
+ # source://rbs-inline//lib/rbs/inline/ast/tree.rb#36
1334
+ def to_s; end
1335
+
1336
+ # Returns `true` if token at the given index is of the given type
1337
+ #
1338
+ # @return [Boolean]
1339
+ #
1340
+ # source://rbs-inline//lib/rbs/inline/ast/tree.rb#56
1341
+ def token?(type, at:); end
1342
+
1343
+ # Returns `true` if tree at the given index is of the given type
1344
+ #
1345
+ # @return [Boolean]
1346
+ #
1347
+ # source://rbs-inline//lib/rbs/inline/ast/tree.rb#63
1348
+ def tree?(type, at:); end
1349
+
1350
+ # : Array[tree]
1351
+ #
1352
+ # source://rbs-inline//lib/rbs/inline/ast/tree.rb#12
1353
+ def trees; end
1354
+
1355
+ # : Symbol
1356
+ #
1357
+ # source://rbs-inline//lib/rbs/inline/ast/tree.rb#13
1358
+ def type; end
1359
+ end
1360
+
1361
+ # source://rbs-inline//lib/rbs/inline/annotation_parser/tokenizer.rb#3
1362
+ class RBS::Inline::AnnotationParser
1363
+ include ::RBS::Inline::AnnotationParser::Tokens
1364
+
1365
+ # @return [AnnotationParser] a new instance of AnnotationParser
1366
+ #
1367
+ # source://rbs-inline//lib/rbs/inline/annotation_parser.rb#108
1368
+ def initialize(input); end
1369
+
1370
+ # : Array[Prism::Comment]
1371
+ #
1372
+ # source://rbs-inline//lib/rbs/inline/annotation_parser.rb#105
1373
+ def input; end
1374
+
1375
+ # source://rbs-inline//lib/rbs/inline/annotation_parser.rb#119
1376
+ def parse; end
1377
+
1378
+ private
1379
+
1380
+ # Test if the comment is an annotation comment
1381
+ #
1382
+ # - Returns `nil` if the comment is not an annotation.
1383
+ # - Returns `true` if the comment is `#:` or `#[` annotation. (Offset is `1`)
1384
+ # - Returns Integer if the comment is `#@rbs` annotation. (Offset is the number of leading spaces including `#`)
1385
+ #
1386
+ # : (Prism::Comment) -> (Integer | true | nil)
1387
+ #
1388
+ # @return [Boolean]
1389
+ #
1390
+ # source://rbs-inline//lib/rbs/inline/annotation_parser.rb#159
1391
+ def annotation_comment?(comment); end
1392
+
1393
+ # Split lines of comments in `result` into paragraphs
1394
+ #
1395
+ # A paragraph consists of:
1396
+ #
1397
+ # * An annotation syntax constructs -- starting with `@rbs` or `::`, or
1398
+ # * A lines something else
1399
+ #
1400
+ # Yields an array of comments, and a boolean indicating if the comments may be an annotation.
1401
+ #
1402
+ # : (ParsingResult) { (Array[Prism::Comment], bool is_annotation) -> void } -> void
1403
+ #
1404
+ # source://rbs-inline//lib/rbs/inline/annotation_parser.rb#182
1405
+ def each_annotation_paragraph(result, &block); end
1406
+
1407
+ # source://rbs-inline//lib/rbs/inline/annotation_parser.rb#299
1408
+ def parse_annotation(comments); end
1409
+
1410
+ # : (Tokenizer) -> AST::Tree
1411
+ #
1412
+ # source://rbs-inline//lib/rbs/inline/annotation_parser.rb#873
1413
+ def parse_block_type(tokenizer); end
1414
+
1415
+ # source://rbs-inline//lib/rbs/inline/annotation_parser.rb#917
1416
+ def parse_class_decl(tokenizer); end
1417
+
1418
+ # source://rbs-inline//lib/rbs/inline/annotation_parser.rb#438
1419
+ def parse_comment(tokenizer); end
1420
+
1421
+ # source://rbs-inline//lib/rbs/inline/annotation_parser.rb#801
1422
+ def parse_generic(tokenizer); end
1423
+
1424
+ # source://rbs-inline//lib/rbs/inline/annotation_parser.rb#639
1425
+ def parse_inherits(tokenizer); end
1426
+
1427
+ # : (Tokenizer) -> AST::Tree
1428
+ #
1429
+ # source://rbs-inline//lib/rbs/inline/annotation_parser.rb#837
1430
+ def parse_ivar_type(tokenizer); end
1431
+
1432
+ # Parse a RBS method type
1433
+ #
1434
+ # If parsing failed, it returns a Tree(`:type_syntax_error), consuming all of the remaining input.
1435
+ #
1436
+ # Note that this doesn't recognize `--` comment unlike `parse_type`.
1437
+ #
1438
+ # source://rbs-inline//lib/rbs/inline/annotation_parser.rb#567
1439
+ def parse_method_type(tokenizer, parent_tree); end
1440
+
1441
+ # source://rbs-inline//lib/rbs/inline/annotation_parser.rb#488
1442
+ def parse_method_type_annotation(tokenizer); end
1443
+
1444
+ # source://rbs-inline//lib/rbs/inline/annotation_parser.rb#898
1445
+ def parse_module_decl(tokenizer); end
1446
+
1447
+ # source://rbs-inline//lib/rbs/inline/annotation_parser.rb#939
1448
+ def parse_module_name(tokenizer); end
1449
+
1450
+ # source://rbs-inline//lib/rbs/inline/annotation_parser.rb#753
1451
+ def parse_module_self(tokenizer); end
1452
+
1453
+ # source://rbs-inline//lib/rbs/inline/annotation_parser.rb#976
1454
+ def parse_module_selfs(tokenizer); end
1455
+
1456
+ # Yield the block and return the resulting tree if tokenizer has current token of `types`
1457
+ #
1458
+ # ```rb
1459
+ # # Test if tokenize has `--` token, then parse comment or insert `nil` to tree
1460
+ #
1461
+ # tree << parse_optional(tokenizer, K_MINUS2) do
1462
+ # parse_comment(tokenizer)
1463
+ # end
1464
+ # ```
1465
+ #
1466
+ # If `tree:` is given, it consumes trivia tokens before yielding the block.
1467
+ #
1468
+ # source://rbs-inline//lib/rbs/inline/annotation_parser.rb#790
1469
+ def parse_optional(tokenizer, *types, tree: T.unsafe(nil), &block); end
1470
+
1471
+ # Parse `@rbs override` annotation
1472
+ #
1473
+ # source://rbs-inline//lib/rbs/inline/annotation_parser.rb#656
1474
+ def parse_override(tokenizer); end
1475
+
1476
+ # source://rbs-inline//lib/rbs/inline/annotation_parser.rb#626
1477
+ def parse_rbs_annotation(tokenizer); end
1478
+
1479
+ # source://rbs-inline//lib/rbs/inline/annotation_parser.rb#423
1480
+ def parse_return_type_decl(tokenizer); end
1481
+
1482
+ # : (Tokenizer) -> AST::Tree
1483
+ #
1484
+ # source://rbs-inline//lib/rbs/inline/annotation_parser.rb#856
1485
+ def parse_splat_param_type(tokenizer); end
1486
+
1487
+ # Parse a RBS type and returns it
1488
+ #
1489
+ # If parsing failed, it returns a Tree(`:type_syntax_error), consuming
1490
+ #
1491
+ # 1. All of the input with `--` token if exists (for comments)
1492
+ # 2. All of the input (for anything else)
1493
+ #
1494
+ # ```
1495
+ # Integer -- Foo # => Returns `Integer`, tokenizer has `--` as its current token
1496
+ # Integer[ -- Foo # => Returns a tree for `Integer[`, tokenizer has `--` as its current token
1497
+ # Integer[ Foo # => Returns a tree for `Integer[ Foo`, tokenizer is at the end of the input
1498
+ # ```
1499
+ #
1500
+ # source://rbs-inline//lib/rbs/inline/annotation_parser.rb#606
1501
+ def parse_type(tokenizer, parent_tree); end
1502
+
1503
+ # source://rbs-inline//lib/rbs/inline/annotation_parser.rb#452
1504
+ def parse_type_app(tokenizer); end
1505
+
1506
+ # Parse a RBS method type or type and returns it
1507
+ #
1508
+ # It tries parsing a method type, and then parsing a type if failed.
1509
+ #
1510
+ # If both parsing failed, it returns a Tree(`:type_syntax_error), consuming all of the remaining input.
1511
+ #
1512
+ # Note that this doesn't recognize `--` comment unlike `parse_type`.
1513
+ #
1514
+ # source://rbs-inline//lib/rbs/inline/annotation_parser.rb#528
1515
+ def parse_type_method_type(tokenizer, parent_tree); end
1516
+
1517
+ # source://rbs-inline//lib/rbs/inline/annotation_parser.rb#816
1518
+ def parse_type_param(tokenizer); end
1519
+
1520
+ # source://rbs-inline//lib/rbs/inline/annotation_parser.rb#955
1521
+ def parse_type_params(tokenizer); end
1522
+
1523
+ # Parse `@rbs use [CLAUSES]` annotation
1524
+ #
1525
+ # source://rbs-inline//lib/rbs/inline/annotation_parser.rb#671
1526
+ def parse_use(tokenizer); end
1527
+
1528
+ # Parses use clause
1529
+ #
1530
+ # Returns one of the following form:
1531
+ #
1532
+ # * [`::`?, [UIDENT, `::`]*, LIDENT, [`as` LIDENT]?]
1533
+ # * [`::`?, [UIDENT, `::`]*, UIDENT, [`as` UIDENT]?]
1534
+ # * [`::`?, [UIDENT, `::`]*, IFIDENT, [`as`, IFIDENT]?]
1535
+ # * [`::`?, [UIDENT) `::`]*, `*`]
1536
+ #
1537
+ # source://rbs-inline//lib/rbs/inline/annotation_parser.rb#703
1538
+ def parse_use_clause(tokenizer); end
1539
+
1540
+ # source://rbs-inline//lib/rbs/inline/annotation_parser.rb#399
1541
+ def parse_var_decl(tokenizer); end
1542
+
1543
+ # The first annotation line is already detected and consumed.
1544
+ # The annotation comment is already in `comments`.
1545
+ #
1546
+ # source://rbs-inline//lib/rbs/inline/annotation_parser.rb#195
1547
+ def yield_annotation(comments, lines, offset, allow_empty_lines:, &block); end
1548
+
1549
+ # Consumes empty lines between annotation lines
1550
+ #
1551
+ # An empty line is already detected and consumed.
1552
+ # The line is already removed from `lines` and put in `empty_comments`.
1553
+ #
1554
+ # Note that the arguments, `comments`, `empty_comments`, and `lines` are modified in place.
1555
+ #
1556
+ # source://rbs-inline//lib/rbs/inline/annotation_parser.rb#268
1557
+ def yield_empty_annotation(comments, empty_comments, lines, offset, &block); end
1558
+
1559
+ # The first line is NOT consumed.
1560
+ #
1561
+ # The `comments` may be empty.
1562
+ #
1563
+ # @yield [comments, false]
1564
+ #
1565
+ # source://rbs-inline//lib/rbs/inline/annotation_parser.rb#234
1566
+ def yield_paragraph(comments, lines, &block); end
1567
+
1568
+ class << self
1569
+ # source://rbs-inline//lib/rbs/inline/annotation_parser.rb#114
1570
+ def parse(input); end
1571
+ end
1572
+ end
1573
+
1574
+ # ParsingResut groups consecutive comments, which may contain several annotations
1575
+ #
1576
+ # *Consecutive comments* are comments are defined in below.
1577
+ # They are basically comments that follows from the previous line, but there are some more requirements.
1578
+ #
1579
+ # ```ruby
1580
+ # # Line 1
1581
+ # # Line 2 #=> Line 1 and Line 2 are consecutive
1582
+ #
1583
+ # # Line 3
1584
+ # # Line4 #=> Line 3 and Line 4 are not consecutive, because the starting column are different
1585
+ #
1586
+ # # Line 5
1587
+ # foo() # Line 6 #=> Line 5 and Line 6 are not consecutive, because Line 6 has leading code
1588
+ # ```
1589
+ #
1590
+ # source://rbs-inline//lib/rbs/inline/annotation_parser.rb#22
1591
+ class RBS::Inline::AnnotationParser::ParsingResult
1592
+ # @return [ParsingResult] a new instance of ParsingResult
1593
+ #
1594
+ # source://rbs-inline//lib/rbs/inline/annotation_parser.rb#42
1595
+ def initialize(first_comment); end
1596
+
1597
+ # source://rbs-inline//lib/rbs/inline/annotation_parser.rb#65
1598
+ def add_comment(comment); end
1599
+
1600
+ # : Array[AST::Annotations::t | AST::CommentLines]
1601
+ #
1602
+ # source://rbs-inline//lib/rbs/inline/annotation_parser.rb#24
1603
+ def annotations; end
1604
+
1605
+ # : Array[Prism::Comment]
1606
+ #
1607
+ # source://rbs-inline//lib/rbs/inline/annotation_parser.rb#23
1608
+ def comments; end
1609
+
1610
+ # source://rbs-inline//lib/rbs/inline/annotation_parser.rb#80
1611
+ def content(trim: T.unsafe(nil)); end
1612
+
1613
+ # : () { (AST::Annotations::t) -> void } -> void
1614
+ # : () -> Enumerator[AST::Annotations::t, void]
1615
+ #
1616
+ # source://rbs-inline//lib/rbs/inline/annotation_parser.rb#29
1617
+ def each_annotation(&block); end
1618
+
1619
+ # : Integer
1620
+ #
1621
+ # source://rbs-inline//lib/rbs/inline/annotation_parser.rb#25
1622
+ def first_comment_offset; end
1623
+
1624
+ # source://rbs-inline//lib/rbs/inline/annotation_parser.rb#59
1625
+ def last_comment; end
1626
+
1627
+ # source://rbs-inline//lib/rbs/inline/annotation_parser.rb#51
1628
+ def line_range; end
1629
+
1630
+ # : Array[String]
1631
+ #
1632
+ # source://rbs-inline//lib/rbs/inline/annotation_parser.rb#98
1633
+ def lines; end
1634
+ end
1635
+
1636
+ # source://rbs-inline//lib/rbs/inline/annotation_parser/tokenizer.rb#67
1637
+ class RBS::Inline::AnnotationParser::Tokenizer
1638
+ include ::RBS::Inline::AnnotationParser::Tokens
1639
+
1640
+ # @return [Tokenizer] a new instance of Tokenizer
1641
+ #
1642
+ # source://rbs-inline//lib/rbs/inline/annotation_parser/tokenizer.rb#161
1643
+ def initialize(scanner); end
1644
+
1645
+ # Advances the scanner
1646
+ #
1647
+ # source://rbs-inline//lib/rbs/inline/annotation_parser/tokenizer.rb#172
1648
+ def advance(tree, eat: T.unsafe(nil)); end
1649
+
1650
+ # Consume given token type and inserts the token to the tree or `nil`
1651
+ #
1652
+ # source://rbs-inline//lib/rbs/inline/annotation_parser/tokenizer.rb#279
1653
+ def consume_token(*types, tree:); end
1654
+
1655
+ # Consume given token type and inserts the token to the tree or raise
1656
+ #
1657
+ # source://rbs-inline//lib/rbs/inline/annotation_parser/tokenizer.rb#292
1658
+ def consume_token!(*types, tree:); end
1659
+
1660
+ # source://rbs-inline//lib/rbs/inline/annotation_parser/tokenizer.rb#221
1661
+ def consume_trivias(tree); end
1662
+
1663
+ # Returns the current char position of the first lookahead token
1664
+ #
1665
+ # ```
1666
+ # __ foo ___ bar baz
1667
+ # ^^ Trivia tokens before lookahead1
1668
+ # ^ #current_position
1669
+ # ^^^ lookahead1
1670
+ # ^^^ Trivia tokens between lookahead1 and lookahead2
1671
+ # ^^^ lookahead2
1672
+ # ^ <= scanner.charpos
1673
+ # ```
1674
+ #
1675
+ # source://rbs-inline//lib/rbs/inline/annotation_parser/tokenizer.rb#147
1676
+ def current_position; end
1677
+
1678
+ # Token that comes after the current position
1679
+ #
1680
+ # source://rbs-inline//lib/rbs/inline/annotation_parser/tokenizer.rb#125
1681
+ def lookahead1; end
1682
+
1683
+ # Token that comes after `lookahead1`
1684
+ #
1685
+ # source://rbs-inline//lib/rbs/inline/annotation_parser/tokenizer.rb#131
1686
+ def lookahead2; end
1687
+
1688
+ # Tokens that comes after the current position
1689
+ #
1690
+ # This is a four tuple of tokens.
1691
+ #
1692
+ # 1. The first array is a trivia tokens before current position
1693
+ # 2. The second token is the first lookahead token after the current position
1694
+ # 3. The third array is a trivia tokens between the first lookahead and the second lookahead
1695
+ # 4. The fourth token is the second lookahead token
1696
+ #
1697
+ # source://rbs-inline//lib/rbs/inline/annotation_parser/tokenizer.rb#121
1698
+ def lookahead_tokens; end
1699
+
1700
+ # : Array[Symbol?]
1701
+ #
1702
+ # source://rbs-inline//lib/rbs/inline/annotation_parser/tokenizer.rb#155
1703
+ def lookaheads; end
1704
+
1705
+ # Skips characters
1706
+ #
1707
+ # This method ensures the `current_position` will be the given `position`.
1708
+ #
1709
+ # source://rbs-inline//lib/rbs/inline/annotation_parser/tokenizer.rb#245
1710
+ def reset(position, tree); end
1711
+
1712
+ # : String
1713
+ #
1714
+ # source://rbs-inline//lib/rbs/inline/annotation_parser/tokenizer.rb#264
1715
+ def rest; end
1716
+
1717
+ # : StringScanner
1718
+ #
1719
+ # source://rbs-inline//lib/rbs/inline/annotation_parser/tokenizer.rb#110
1720
+ def scanner; end
1721
+
1722
+ # Reset the current_token to incoming comment `--`
1723
+ #
1724
+ # Reset to the end of the input if `--` token cannot be found.
1725
+ #
1726
+ # source://rbs-inline//lib/rbs/inline/annotation_parser/tokenizer.rb#326
1727
+ def skip_to_comment; end
1728
+
1729
+ # Returns true if the scanner cannot consume next token
1730
+ #
1731
+ # @return [Boolean]
1732
+ #
1733
+ # source://rbs-inline//lib/rbs/inline/annotation_parser/tokenizer.rb#234
1734
+ def stuck?; end
1735
+
1736
+ # Ensure current token is one of the specified in types
1737
+ #
1738
+ # source://rbs-inline//lib/rbs/inline/annotation_parser/tokenizer.rb#317
1739
+ def type!(*types); end
1740
+
1741
+ # Test if lookahead2 token have specified `type`
1742
+ #
1743
+ # @return [Boolean]
1744
+ #
1745
+ # source://rbs-inline//lib/rbs/inline/annotation_parser/tokenizer.rb#309
1746
+ def type2?(*types); end
1747
+
1748
+ # Test if current token has specified `type`
1749
+ #
1750
+ # @return [Boolean]
1751
+ #
1752
+ # source://rbs-inline//lib/rbs/inline/annotation_parser/tokenizer.rb#301
1753
+ def type?(*types); end
1754
+ end
1755
+
1756
+ # source://rbs-inline//lib/rbs/inline/annotation_parser/tokenizer.rb#70
1757
+ RBS::Inline::AnnotationParser::Tokenizer::KEYWORDS = T.let(T.unsafe(nil), Hash)
1758
+
1759
+ # : Hash[String, Symbol]
1760
+ #
1761
+ # source://rbs-inline//lib/rbs/inline/annotation_parser/tokenizer.rb#87
1762
+ RBS::Inline::AnnotationParser::Tokenizer::KW_RE = T.let(T.unsafe(nil), Regexp)
1763
+
1764
+ # source://rbs-inline//lib/rbs/inline/annotation_parser/tokenizer.rb#89
1765
+ RBS::Inline::AnnotationParser::Tokenizer::PUNCTS = T.let(T.unsafe(nil), Hash)
1766
+
1767
+ # : Hash[String, Symbol]
1768
+ #
1769
+ # source://rbs-inline//lib/rbs/inline/annotation_parser/tokenizer.rb#108
1770
+ RBS::Inline::AnnotationParser::Tokenizer::PUNCTS_RE = T.let(T.unsafe(nil), Regexp)
1771
+
1772
+ # source://rbs-inline//lib/rbs/inline/annotation_parser/tokenizer.rb#4
1773
+ module RBS::Inline::AnnotationParser::Tokens; end
1774
+
1775
+ # source://rbs-inline//lib/rbs/inline/annotation_parser/tokenizer.rb#34
1776
+ RBS::Inline::AnnotationParser::Tokens::K_AMP = T.let(T.unsafe(nil), Symbol)
1777
+
1778
+ # source://rbs-inline//lib/rbs/inline/annotation_parser/tokenizer.rb#31
1779
+ RBS::Inline::AnnotationParser::Tokens::K_ARROW = T.let(T.unsafe(nil), Symbol)
1780
+
1781
+ # source://rbs-inline//lib/rbs/inline/annotation_parser/tokenizer.rb#7
1782
+ RBS::Inline::AnnotationParser::Tokens::K_AS = T.let(T.unsafe(nil), Symbol)
1783
+
1784
+ # source://rbs-inline//lib/rbs/inline/annotation_parser/tokenizer.rb#19
1785
+ RBS::Inline::AnnotationParser::Tokens::K_CLASS = T.let(T.unsafe(nil), Symbol)
1786
+
1787
+ # source://rbs-inline//lib/rbs/inline/annotation_parser/tokenizer.rb#21
1788
+ RBS::Inline::AnnotationParser::Tokens::K_COLON = T.let(T.unsafe(nil), Symbol)
1789
+
1790
+ # source://rbs-inline//lib/rbs/inline/annotation_parser/tokenizer.rb#20
1791
+ RBS::Inline::AnnotationParser::Tokens::K_COLON2 = T.let(T.unsafe(nil), Symbol)
1792
+
1793
+ # source://rbs-inline//lib/rbs/inline/annotation_parser/tokenizer.rb#24
1794
+ RBS::Inline::AnnotationParser::Tokens::K_COMMA = T.let(T.unsafe(nil), Symbol)
1795
+
1796
+ # source://rbs-inline//lib/rbs/inline/annotation_parser/tokenizer.rb#30
1797
+ RBS::Inline::AnnotationParser::Tokens::K_DOT = T.let(T.unsafe(nil), Symbol)
1798
+
1799
+ # source://rbs-inline//lib/rbs/inline/annotation_parser/tokenizer.rb#29
1800
+ RBS::Inline::AnnotationParser::Tokens::K_DOT3 = T.let(T.unsafe(nil), Symbol)
1801
+
1802
+ # source://rbs-inline//lib/rbs/inline/annotation_parser/tokenizer.rb#38
1803
+ RBS::Inline::AnnotationParser::Tokens::K_EOF = T.let(T.unsafe(nil), Symbol)
1804
+
1805
+ # source://rbs-inline//lib/rbs/inline/annotation_parser/tokenizer.rb#11
1806
+ RBS::Inline::AnnotationParser::Tokens::K_GENERIC = T.let(T.unsafe(nil), Symbol)
1807
+
1808
+ # source://rbs-inline//lib/rbs/inline/annotation_parser/tokenizer.rb#12
1809
+ RBS::Inline::AnnotationParser::Tokens::K_IN = T.let(T.unsafe(nil), Symbol)
1810
+
1811
+ # source://rbs-inline//lib/rbs/inline/annotation_parser/tokenizer.rb#6
1812
+ RBS::Inline::AnnotationParser::Tokens::K_INHERITS = T.let(T.unsafe(nil), Symbol)
1813
+
1814
+ # source://rbs-inline//lib/rbs/inline/annotation_parser/tokenizer.rb#32
1815
+ RBS::Inline::AnnotationParser::Tokens::K_LBRACE = T.let(T.unsafe(nil), Symbol)
1816
+
1817
+ # source://rbs-inline//lib/rbs/inline/annotation_parser/tokenizer.rb#22
1818
+ RBS::Inline::AnnotationParser::Tokens::K_LBRACKET = T.let(T.unsafe(nil), Symbol)
1819
+
1820
+ # source://rbs-inline//lib/rbs/inline/annotation_parser/tokenizer.rb#33
1821
+ RBS::Inline::AnnotationParser::Tokens::K_LPAREN = T.let(T.unsafe(nil), Symbol)
1822
+
1823
+ # source://rbs-inline//lib/rbs/inline/annotation_parser/tokenizer.rb#28
1824
+ RBS::Inline::AnnotationParser::Tokens::K_LT = T.let(T.unsafe(nil), Symbol)
1825
+
1826
+ # source://rbs-inline//lib/rbs/inline/annotation_parser/tokenizer.rb#27
1827
+ RBS::Inline::AnnotationParser::Tokens::K_MINUS2 = T.let(T.unsafe(nil), Symbol)
1828
+
1829
+ # source://rbs-inline//lib/rbs/inline/annotation_parser/tokenizer.rb#18
1830
+ RBS::Inline::AnnotationParser::Tokens::K_MODULE = T.let(T.unsafe(nil), Symbol)
1831
+
1832
+ # source://rbs-inline//lib/rbs/inline/annotation_parser/tokenizer.rb#10
1833
+ RBS::Inline::AnnotationParser::Tokens::K_MODULE_SELF = T.let(T.unsafe(nil), Symbol)
1834
+
1835
+ # source://rbs-inline//lib/rbs/inline/annotation_parser/tokenizer.rb#13
1836
+ RBS::Inline::AnnotationParser::Tokens::K_OUT = T.let(T.unsafe(nil), Symbol)
1837
+
1838
+ # source://rbs-inline//lib/rbs/inline/annotation_parser/tokenizer.rb#8
1839
+ RBS::Inline::AnnotationParser::Tokens::K_OVERRIDE = T.let(T.unsafe(nil), Symbol)
1840
+
1841
+ # source://rbs-inline//lib/rbs/inline/annotation_parser/tokenizer.rb#35
1842
+ RBS::Inline::AnnotationParser::Tokens::K_QUESTION = T.let(T.unsafe(nil), Symbol)
1843
+
1844
+ # source://rbs-inline//lib/rbs/inline/annotation_parser/tokenizer.rb#23
1845
+ RBS::Inline::AnnotationParser::Tokens::K_RBRACKET = T.let(T.unsafe(nil), Symbol)
1846
+
1847
+ # `@rbs`
1848
+ #
1849
+ # source://rbs-inline//lib/rbs/inline/annotation_parser/tokenizer.rb#44
1850
+ RBS::Inline::AnnotationParser::Tokens::K_RBS = T.let(T.unsafe(nil), Symbol)
1851
+
1852
+ # `@rbs!`
1853
+ #
1854
+ # source://rbs-inline//lib/rbs/inline/annotation_parser/tokenizer.rb#41
1855
+ RBS::Inline::AnnotationParser::Tokens::K_RBSE = T.let(T.unsafe(nil), Symbol)
1856
+
1857
+ # source://rbs-inline//lib/rbs/inline/annotation_parser/tokenizer.rb#5
1858
+ RBS::Inline::AnnotationParser::Tokens::K_RETURN = T.let(T.unsafe(nil), Symbol)
1859
+
1860
+ # source://rbs-inline//lib/rbs/inline/annotation_parser/tokenizer.rb#15
1861
+ RBS::Inline::AnnotationParser::Tokens::K_SELF = T.let(T.unsafe(nil), Symbol)
1862
+
1863
+ # source://rbs-inline//lib/rbs/inline/annotation_parser/tokenizer.rb#16
1864
+ RBS::Inline::AnnotationParser::Tokens::K_SKIP = T.let(T.unsafe(nil), Symbol)
1865
+
1866
+ # source://rbs-inline//lib/rbs/inline/annotation_parser/tokenizer.rb#26
1867
+ RBS::Inline::AnnotationParser::Tokens::K_STAR = T.let(T.unsafe(nil), Symbol)
1868
+
1869
+ # source://rbs-inline//lib/rbs/inline/annotation_parser/tokenizer.rb#25
1870
+ RBS::Inline::AnnotationParser::Tokens::K_STAR2 = T.let(T.unsafe(nil), Symbol)
1871
+
1872
+ # source://rbs-inline//lib/rbs/inline/annotation_parser/tokenizer.rb#14
1873
+ RBS::Inline::AnnotationParser::Tokens::K_UNCHECKED = T.let(T.unsafe(nil), Symbol)
1874
+
1875
+ # source://rbs-inline//lib/rbs/inline/annotation_parser/tokenizer.rb#9
1876
+ RBS::Inline::AnnotationParser::Tokens::K_USE = T.let(T.unsafe(nil), Symbol)
1877
+
1878
+ # source://rbs-inline//lib/rbs/inline/annotation_parser/tokenizer.rb#36
1879
+ RBS::Inline::AnnotationParser::Tokens::K_VBAR = T.let(T.unsafe(nil), Symbol)
1880
+
1881
+ # source://rbs-inline//lib/rbs/inline/annotation_parser/tokenizer.rb#17
1882
+ RBS::Inline::AnnotationParser::Tokens::K_YIELDS = T.let(T.unsafe(nil), Symbol)
1883
+
1884
+ # source://rbs-inline//lib/rbs/inline/annotation_parser/tokenizer.rb#63
1885
+ RBS::Inline::AnnotationParser::Tokens::T_ANNOTATION = T.let(T.unsafe(nil), Symbol)
1886
+
1887
+ # source://rbs-inline//lib/rbs/inline/annotation_parser/tokenizer.rb#62
1888
+ RBS::Inline::AnnotationParser::Tokens::T_ATIDENT = T.let(T.unsafe(nil), Symbol)
1889
+
1890
+ # Block type source
1891
+ #
1892
+ # source://rbs-inline//lib/rbs/inline/annotation_parser/tokenizer.rb#57
1893
+ RBS::Inline::AnnotationParser::Tokens::T_BLOCKSTR = T.let(T.unsafe(nil), Symbol)
1894
+
1895
+ # The body of comment string following `--`
1896
+ #
1897
+ # source://rbs-inline//lib/rbs/inline/annotation_parser/tokenizer.rb#51
1898
+ RBS::Inline::AnnotationParser::Tokens::T_COMMENT = T.let(T.unsafe(nil), Symbol)
1899
+
1900
+ # `!` local variable
1901
+ #
1902
+ # source://rbs-inline//lib/rbs/inline/annotation_parser/tokenizer.rb#60
1903
+ RBS::Inline::AnnotationParser::Tokens::T_ELVAR = T.let(T.unsafe(nil), Symbol)
1904
+
1905
+ # source://rbs-inline//lib/rbs/inline/annotation_parser/tokenizer.rb#47
1906
+ RBS::Inline::AnnotationParser::Tokens::T_IFIDENT = T.let(T.unsafe(nil), Symbol)
1907
+
1908
+ # source://rbs-inline//lib/rbs/inline/annotation_parser/tokenizer.rb#48
1909
+ RBS::Inline::AnnotationParser::Tokens::T_LVAR = T.let(T.unsafe(nil), Symbol)
1910
+
1911
+ # Type/method type source
1912
+ #
1913
+ # source://rbs-inline//lib/rbs/inline/annotation_parser/tokenizer.rb#54
1914
+ RBS::Inline::AnnotationParser::Tokens::T_SOURCE = T.let(T.unsafe(nil), Symbol)
1915
+
1916
+ # source://rbs-inline//lib/rbs/inline/annotation_parser/tokenizer.rb#46
1917
+ RBS::Inline::AnnotationParser::Tokens::T_UIDENT = T.let(T.unsafe(nil), Symbol)
1918
+
1919
+ # source://rbs-inline//lib/rbs/inline/annotation_parser/tokenizer.rb#64
1920
+ RBS::Inline::AnnotationParser::Tokens::T_WHITESPACE = T.let(T.unsafe(nil), Symbol)
1921
+
1922
+ # source://rbs-inline//lib/rbs/inline/node_utils.rb#5
1923
+ module RBS::Inline::NodeUtils
1924
+ # source://rbs-inline//lib/rbs/inline/node_utils.rb#8
1925
+ def type_name(node); end
1926
+ end
1927
+
1928
+ # source://rbs-inline//lib/rbs/inline/parser.rb#7
1929
+ class RBS::Inline::Parser < ::Prism::Visitor
1930
+ # : void
1931
+ #
1932
+ # @return [Parser] a new instance of Parser
1933
+ #
1934
+ # source://rbs-inline//lib/rbs/inline/parser.rb#43
1935
+ def initialize; end
1936
+
1937
+ # Fetch Application annotation which is associated to `node`
1938
+ #
1939
+ # The application annotation is removed from `comments`.
1940
+ #
1941
+ # source://rbs-inline//lib/rbs/inline/parser.rb#405
1942
+ def application_annotation(node); end
1943
+
1944
+ # Fetch TypeAssertion annotation which is associated to `node`
1945
+ #
1946
+ # The assertion annotation is removed from `comments`.
1947
+ #
1948
+ # source://rbs-inline//lib/rbs/inline/parser.rb#424
1949
+ def assertion_annotation(node); end
1950
+
1951
+ # ParsingResult associated with the line number at the end
1952
+ #
1953
+ # ```rb
1954
+ # # Hello
1955
+ # # world <= The comments hash includes `2` (line 2) to the two lines
1956
+ # ```
1957
+ #
1958
+ # > [!IMPORTANT]
1959
+ # > The values will be removed during parsing.
1960
+ #
1961
+ # source://rbs-inline//lib/rbs/inline/parser.rb#31
1962
+ def comments; end
1963
+
1964
+ # source://rbs-inline//lib/rbs/inline/parser.rb#121
1965
+ def current_class_module_decl; end
1966
+
1967
+ # source://rbs-inline//lib/rbs/inline/parser.rb#126
1968
+ def current_class_module_decl!; end
1969
+
1970
+ # The current module_function applied to single `def` node
1971
+ #
1972
+ # source://rbs-inline//lib/rbs/inline/parser.rb#41
1973
+ def current_module_function; end
1974
+
1975
+ # The current visibility applied to single `def` node
1976
+ #
1977
+ # Assuming it's directly inside `private` or `public` calls.
1978
+ # `nil` when the `def` node is not inside `private` or `public` calls.
1979
+ #
1980
+ # source://rbs-inline//lib/rbs/inline/parser.rb#38
1981
+ def current_visibility; end
1982
+
1983
+ # The top level declarations
1984
+ #
1985
+ # source://rbs-inline//lib/rbs/inline/parser.rb#15
1986
+ def decls; end
1987
+
1988
+ # @return [Boolean]
1989
+ #
1990
+ # source://rbs-inline//lib/rbs/inline/parser.rb#391
1991
+ def ignored_node?(node); end
1992
+
1993
+ # Returns an array of annotations from comments that is located between start_line and end_line
1994
+ #
1995
+ # ```rb
1996
+ # module Foo # line 1 (start_line)
1997
+ # # foo
1998
+ # # bar
1999
+ # end # line 4 (end_line)
2000
+ # ```
2001
+ #
2002
+ # source://rbs-inline//lib/rbs/inline/parser.rb#236
2003
+ def inner_annotations(start_line, end_line); end
2004
+
2005
+ # Load inner declarations and delete them from `#comments` hash
2006
+ #
2007
+ # It also sorts the `members` by `#start_line`` ascending.
2008
+ #
2009
+ # source://rbs-inline//lib/rbs/inline/parser.rb#157
2010
+ def load_inner_annotations(start_line, end_line, members); end
2011
+
2012
+ # source://rbs-inline//lib/rbs/inline/parser.rb#380
2013
+ def process_nesting_node(node); end
2014
+
2015
+ # : (with_members) { () -> void } -> void
2016
+ #
2017
+ # source://rbs-inline//lib/rbs/inline/parser.rb#131
2018
+ def push_class_module_decl(decl); end
2019
+
2020
+ # source://rbs-inline//lib/rbs/inline/parser.rb#368
2021
+ def push_visibility(new_visibility, &block); end
2022
+
2023
+ # The surrounding declarations
2024
+ #
2025
+ # source://rbs-inline//lib/rbs/inline/parser.rb#19
2026
+ def surrounding_decls; end
2027
+
2028
+ # source://rbs-inline//lib/rbs/inline/parser.rb#265
2029
+ def visit_alias_method_node(node); end
2030
+
2031
+ # source://rbs-inline//lib/rbs/inline/parser.rb#488
2032
+ def visit_block_node(node); end
2033
+
2034
+ # source://rbs-inline//lib/rbs/inline/parser.rb#277
2035
+ def visit_call_node(node); end
2036
+
2037
+ # source://rbs-inline//lib/rbs/inline/parser.rb#175
2038
+ def visit_class_node(node); end
2039
+
2040
+ # source://rbs-inline//lib/rbs/inline/parser.rb#443
2041
+ def visit_constant_write_node(node); end
2042
+
2043
+ # source://rbs-inline//lib/rbs/inline/parser.rb#248
2044
+ def visit_def_node(node); end
2045
+
2046
+ # source://rbs-inline//lib/rbs/inline/parser.rb#210
2047
+ def visit_module_node(node); end
2048
+
2049
+ # source://rbs-inline//lib/rbs/inline/parser.rb#196
2050
+ def visit_singleton_class_node(node); end
2051
+
2052
+ class << self
2053
+ # Parses the given Prism result to a three tuple
2054
+ #
2055
+ # Returns a three tuple of:
2056
+ #
2057
+ # 1. An array of `use` directives
2058
+ # 2. An array of declarations
2059
+ # 3. An array of RBS declarations given as `@rbs!` annotation at top-level
2060
+ #
2061
+ # Note that only RBS declarations are allowed in the top-level `@rbs!` annotations.
2062
+ # RBS *members* are ignored in the array.
2063
+ #
2064
+ # source://rbs-inline//lib/rbs/inline/parser.rb#64
2065
+ def parse(result, opt_in:); end
2066
+ end
2067
+ end
2068
+
2069
+ # source://rbs-inline//lib/rbs/inline/version.rb#5
2070
+ RBS::Inline::VERSION = T.let(T.unsafe(nil), String)
2071
+
2072
+ # source://rbs-inline//lib/rbs/inline/writer.rb#7
2073
+ class RBS::Inline::Writer
2074
+ # @return [Writer] a new instance of Writer
2075
+ #
2076
+ # source://rbs-inline//lib/rbs/inline/writer.rb#21
2077
+ def initialize(buffer = T.unsafe(nil)); end
2078
+
2079
+ # : Types::t
2080
+ #
2081
+ # source://rbs-inline//lib/rbs/inline/writer.rb#18
2082
+ def default_type; end
2083
+
2084
+ # : Types::t
2085
+ #
2086
+ # source://rbs-inline//lib/rbs/inline/writer.rb#18
2087
+ def default_type=(_arg0); end
2088
+
2089
+ # source://rbs-inline//lib/rbs/inline/writer.rb#40
2090
+ def header(*lines); end
2091
+
2092
+ # @rbs!
2093
+ # interface _Content
2094
+ # def <<: (RBS::AST::Declarations::t | RBS::AST::Members::t) -> void
2095
+ #
2096
+ # def concat: (Array[RBS::AST::Declarations::t | RBS::AST::Members::t]) -> void
2097
+ # end
2098
+ #
2099
+ # source://rbs-inline//lib/rbs/inline/writer.rb#15
2100
+ def output; end
2101
+
2102
+ # source://rbs-inline//lib/rbs/inline/writer.rb#106
2103
+ def translate_class_decl(decl, rbs); end
2104
+
2105
+ # source://rbs-inline//lib/rbs/inline/writer.rb#181
2106
+ def translate_constant_decl(decl, rbs); end
2107
+
2108
+ # source://rbs-inline//lib/rbs/inline/writer.rb#198
2109
+ def translate_data_assign_decl(decl, rbs); end
2110
+
2111
+ # source://rbs-inline//lib/rbs/inline/writer.rb#79
2112
+ def translate_decl(decl, rbs); end
2113
+
2114
+ # source://rbs-inline//lib/rbs/inline/writer.rb#466
2115
+ def translate_member(member, decl, rbs); end
2116
+
2117
+ # source://rbs-inline//lib/rbs/inline/writer.rb#132
2118
+ def translate_members(members, decl, rbs); end
2119
+
2120
+ # source://rbs-inline//lib/rbs/inline/writer.rb#154
2121
+ def translate_module_decl(decl, rbs); end
2122
+
2123
+ # source://rbs-inline//lib/rbs/inline/writer.rb#453
2124
+ def translate_singleton_decl(decl, rbs); end
2125
+
2126
+ # source://rbs-inline//lib/rbs/inline/writer.rb#314
2127
+ def translate_struct_assign_decl(decl, rbs); end
2128
+
2129
+ # source://rbs-inline//lib/rbs/inline/writer.rb#52
2130
+ def write(uses, decls, rbs_decls); end
2131
+
2132
+ # : RBS::Writer
2133
+ #
2134
+ # source://rbs-inline//lib/rbs/inline/writer.rb#16
2135
+ def writer; end
2136
+
2137
+ private
2138
+
2139
+ # source://rbs-inline//lib/rbs/inline/writer.rb#628
2140
+ def constant_decl_to_type(decl); end
2141
+
2142
+ # Returns the `kind` of the method definition
2143
+ #
2144
+ # ```rb
2145
+ # def self.foo = () # :singleton
2146
+ # class A
2147
+ # class << self
2148
+ # def bar = () # :singleton
2149
+ # end
2150
+ # end
2151
+ #
2152
+ # def object.foo = () # Not supported (returns :instance)
2153
+ # ```
2154
+ #
2155
+ # source://rbs-inline//lib/rbs/inline/writer.rb#556
2156
+ def method_kind(member, decl); end
2157
+
2158
+ # source://rbs-inline//lib/rbs/inline/writer.rb#601
2159
+ def translate_class_block_decl(block, rbs); end
2160
+
2161
+ # source://rbs-inline//lib/rbs/inline/writer.rb#571
2162
+ def translate_module_block_decl(block, rbs); end
2163
+
2164
+ class << self
2165
+ # @yield [writer]
2166
+ #
2167
+ # source://rbs-inline//lib/rbs/inline/writer.rb#31
2168
+ def write(uses, decls, rbs_decls, &_arg3); end
2169
+ end
2170
+ end