embed_workflow 0.2.1 → 1.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (2315) hide show
  1. checksums.yaml +4 -4
  2. data/Gemfile +9 -0
  3. data/Gemfile.lock +89 -0
  4. data/LICENSE +21 -0
  5. data/README.md +235 -0
  6. data/Rakefile +10 -0
  7. data/docs/AccountsApi.md +358 -0
  8. data/docs/ActionTypesApi.md +497 -0
  9. data/docs/ActionsApi.md +475 -0
  10. data/docs/AppConnectionsApi.md +371 -0
  11. data/docs/AvailableAppsApi.md +145 -0
  12. data/docs/CatchHookRequest.md +18 -0
  13. data/docs/CreateActionType422Response.md +22 -0
  14. data/docs/CreateActionTypeRequest.md +50 -0
  15. data/docs/CreateActionTypeRequestFormDraftInner.md +32 -0
  16. data/docs/CreateActionTypeRequestIconDraft.md +22 -0
  17. data/docs/CreateAppConnectionRequest.md +24 -0
  18. data/docs/CreateUserToken200Response.md +18 -0
  19. data/docs/CreateUserTokenRequest.md +20 -0
  20. data/docs/CreateWorkflow201Response.md +92 -0
  21. data/docs/CreateWorkflowRequest.md +32 -0
  22. data/docs/CreateWorkflowRequestTemplateDraft.md +20 -0
  23. data/docs/CreateWorkflowRequestTemplateDraftNodesInner.md +48 -0
  24. data/docs/DataFieldsApi.md +233 -0
  25. data/docs/DeleteActionType200Response.md +18 -0
  26. data/docs/DeleteWorkflow200Response.md +49 -0
  27. data/docs/DeleteWorkflow200ResponseOneOf.md +18 -0
  28. data/docs/DeleteWorkflow200ResponseOneOf1.md +18 -0
  29. data/docs/DiscardWorkflowDraftRequest.md +20 -0
  30. data/docs/EvaluateExpression200Response.md +18 -0
  31. data/docs/EvaluateExpressionRequest.md +20 -0
  32. data/docs/EventsApi.md +81 -0
  33. data/docs/ExecuteWorkflow201Response.md +50 -0
  34. data/docs/ExecuteWorkflowRequest.md +22 -0
  35. data/docs/ExecutionsApi.md +225 -0
  36. data/docs/ExportConfiguration200Response.md +18 -0
  37. data/docs/ExportConfiguration200ResponseConfiguration.md +49 -0
  38. data/docs/ImportConfiguration201Response.md +28 -0
  39. data/docs/ImportConfigurationRequest.md +20 -0
  40. data/docs/ImportConfigurationRequestSchema.md +49 -0
  41. data/docs/InstallApp201Response.md +50 -0
  42. data/docs/InstallAppRequest.md +20 -0
  43. data/docs/InstalledAppsApi.md +282 -0
  44. data/docs/ListActionTypes200Response.md +20 -0
  45. data/docs/ListActionTypes200ResponseCollectionInner.md +106 -0
  46. data/docs/ListActionTypes200ResponseMeta.md +22 -0
  47. data/docs/ListActions200Response.md +20 -0
  48. data/docs/ListActions200ResponseCollectionInner.md +58 -0
  49. data/docs/ListAppConnections200Response.md +20 -0
  50. data/docs/ListAppConnections200ResponseCollectionInner.md +32 -0
  51. data/docs/ListAvailableApps200Response.md +20 -0
  52. data/docs/ListAvailableApps200ResponseCollectionInner.md +32 -0
  53. data/docs/ListDataFields200Response.md +20 -0
  54. data/docs/ListDataFields200ResponseCollectionInner.md +46 -0
  55. data/docs/ListDataFieldsTypeParameter.md +49 -0
  56. data/docs/ListEvents200Response.md +20 -0
  57. data/docs/ListEvents200ResponseCollectionInner.md +36 -0
  58. data/docs/ListInstalledApps200Response.md +20 -0
  59. data/docs/ListInstalledApps200ResponseCollectionInner.md +48 -0
  60. data/docs/ListTriggers200Response.md +20 -0
  61. data/docs/ListTriggers200ResponseCollectionInner.md +50 -0
  62. data/docs/ListUsers200Response.md +20 -0
  63. data/docs/ListUsers200ResponseCollectionInner.md +38 -0
  64. data/docs/ListWorkflowExecutions200Response.md +20 -0
  65. data/docs/ListWorkflowVersions200Response.md +20 -0
  66. data/docs/ListWorkflowVersions200ResponseCollectionInner.md +30 -0
  67. data/docs/ListWorkflows200Response.md +20 -0
  68. data/docs/ListWorkflows200ResponseCollectionInner.md +76 -0
  69. data/docs/PaymentsApi.md +81 -0
  70. data/docs/PublishWorkflowRequest.md +18 -0
  71. data/docs/RetrieveAccount200Response.md +46 -0
  72. data/docs/RetrieveAccountUsage200Response.md +30 -0
  73. data/docs/RetrieveAvailableApp200Response.md +34 -0
  74. data/docs/RetrieveExecution200Response.md +54 -0
  75. data/docs/RetryActionRequest.md +20 -0
  76. data/docs/StopExecutionsRequest.md +20 -0
  77. data/docs/TriggerWorkflowRequest.md +26 -0
  78. data/docs/TriggersApi.md +289 -0
  79. data/docs/UpdateAccountRequest.md +38 -0
  80. data/docs/UpdateAccountRequestActionTypeCategoriesInner.md +24 -0
  81. data/docs/UpdateAccountRequestActionTypeCategoriesInnerIcon.md +22 -0
  82. data/docs/UpdateAccountRequestUserDataSchemaInner.md +26 -0
  83. data/docs/UpdateActionTypeRequest.md +52 -0
  84. data/docs/UpdateInstalledAppRequest.md +18 -0
  85. data/docs/UpdateTriggerRequest.md +20 -0
  86. data/docs/UpdateWorkflowRequest.md +38 -0
  87. data/docs/UpsertUserRequest.md +26 -0
  88. data/docs/UsersApi.md +361 -0
  89. data/docs/WorkflowsApi.md +892 -0
  90. data/embed_workflow.gemspec +40 -0
  91. data/lib/embed_workflow/api/accounts_api.rb +364 -0
  92. data/lib/embed_workflow/api/action_types_api.rb +531 -0
  93. data/lib/embed_workflow/api/actions_api.rb +468 -0
  94. data/lib/embed_workflow/api/app_connections_api.rb +368 -0
  95. data/lib/embed_workflow/api/available_apps_api.rb +141 -0
  96. data/lib/embed_workflow/api/data_fields_api.rb +232 -0
  97. data/lib/embed_workflow/api/events_api.rb +86 -0
  98. data/lib/embed_workflow/api/executions_api.rb +225 -0
  99. data/lib/embed_workflow/api/installed_apps_api.rb +276 -0
  100. data/lib/embed_workflow/api/payments_api.rb +86 -0
  101. data/lib/embed_workflow/api/triggers_api.rb +281 -0
  102. data/lib/embed_workflow/api/users_api.rb +359 -0
  103. data/lib/embed_workflow/api/workflows_api.rb +926 -0
  104. data/lib/embed_workflow/api_client.rb +431 -0
  105. data/lib/embed_workflow/api_error.rb +58 -0
  106. data/lib/embed_workflow/configuration.rb +389 -0
  107. data/lib/embed_workflow/models/catch_hook_request.rb +222 -0
  108. data/lib/embed_workflow/models/create_action_type422_response.rb +256 -0
  109. data/lib/embed_workflow/models/create_action_type_request.rb +388 -0
  110. data/lib/embed_workflow/models/create_action_type_request_form_draft_inner.rb +342 -0
  111. data/lib/embed_workflow/models/create_action_type_request_icon_draft.rb +245 -0
  112. data/lib/embed_workflow/models/create_app_connection_request.rb +273 -0
  113. data/lib/embed_workflow/models/create_user_token200_response.rb +222 -0
  114. data/lib/embed_workflow/models/create_user_token_request.rb +227 -0
  115. data/lib/embed_workflow/models/create_workflow201_response.rb +660 -0
  116. data/lib/embed_workflow/models/create_workflow_request.rb +295 -0
  117. data/lib/embed_workflow/models/create_workflow_request_template_draft.rb +244 -0
  118. data/lib/embed_workflow/models/create_workflow_request_template_draft_nodes_inner.rb +431 -0
  119. data/lib/embed_workflow/models/delete_action_type200_response.rb +222 -0
  120. data/lib/embed_workflow/models/delete_workflow200_response.rb +106 -0
  121. data/lib/embed_workflow/models/delete_workflow200_response_one_of.rb +223 -0
  122. data/lib/embed_workflow/models/delete_workflow200_response_one_of1.rb +223 -0
  123. data/lib/embed_workflow/models/discard_workflow_draft_request.rb +229 -0
  124. data/lib/embed_workflow/models/evaluate_expression200_response.rb +214 -0
  125. data/lib/embed_workflow/models/evaluate_expression_request.rb +241 -0
  126. data/lib/embed_workflow/models/execute_workflow201_response.rb +383 -0
  127. data/lib/embed_workflow/models/execute_workflow_request.rb +275 -0
  128. data/lib/embed_workflow/models/export_configuration200_response.rb +214 -0
  129. data/lib/embed_workflow/models/export_configuration200_response_configuration.rb +105 -0
  130. data/lib/embed_workflow/models/import_configuration201_response.rb +275 -0
  131. data/lib/embed_workflow/models/import_configuration_request.rb +259 -0
  132. data/lib/embed_workflow/models/import_configuration_request_schema.rb +106 -0
  133. data/lib/embed_workflow/models/install_app201_response.rb +388 -0
  134. data/lib/embed_workflow/models/install_app_request.rb +234 -0
  135. data/lib/embed_workflow/models/list_action_types200_response.rb +239 -0
  136. data/lib/embed_workflow/models/list_action_types200_response_collection_inner.rb +755 -0
  137. data/lib/embed_workflow/models/list_action_types200_response_meta.rb +233 -0
  138. data/lib/embed_workflow/models/list_actions200_response.rb +239 -0
  139. data/lib/embed_workflow/models/list_actions200_response_collection_inner.rb +429 -0
  140. data/lib/embed_workflow/models/list_app_connections200_response.rb +239 -0
  141. data/lib/embed_workflow/models/list_app_connections200_response_collection_inner.rb +288 -0
  142. data/lib/embed_workflow/models/list_available_apps200_response.rb +239 -0
  143. data/lib/embed_workflow/models/list_available_apps200_response_collection_inner.rb +287 -0
  144. data/lib/embed_workflow/models/list_data_fields200_response.rb +239 -0
  145. data/lib/embed_workflow/models/list_data_fields200_response_collection_inner.rb +369 -0
  146. data/lib/embed_workflow/models/list_data_fields_type_parameter.rb +105 -0
  147. data/lib/embed_workflow/models/list_events200_response.rb +239 -0
  148. data/lib/embed_workflow/models/list_events200_response_collection_inner.rb +312 -0
  149. data/lib/embed_workflow/models/list_installed_apps200_response.rb +239 -0
  150. data/lib/embed_workflow/models/list_installed_apps200_response_collection_inner.rb +376 -0
  151. data/lib/embed_workflow/models/list_triggers200_response.rb +239 -0
  152. data/lib/embed_workflow/models/list_triggers200_response_collection_inner.rb +387 -0
  153. data/lib/embed_workflow/models/list_users200_response.rb +239 -0
  154. data/lib/embed_workflow/models/list_users200_response_collection_inner.rb +326 -0
  155. data/lib/embed_workflow/models/list_workflow_executions200_response.rb +239 -0
  156. data/lib/embed_workflow/models/list_workflow_versions200_response.rb +239 -0
  157. data/lib/embed_workflow/models/list_workflow_versions200_response_collection_inner.rb +278 -0
  158. data/lib/embed_workflow/models/list_workflows200_response.rb +239 -0
  159. data/lib/embed_workflow/models/list_workflows200_response_collection_inner.rb +562 -0
  160. data/lib/embed_workflow/models/publish_workflow_request.rb +217 -0
  161. data/lib/embed_workflow/models/retrieve_account200_response.rb +371 -0
  162. data/lib/embed_workflow/models/retrieve_account_usage200_response.rb +275 -0
  163. data/lib/embed_workflow/models/retrieve_available_app200_response.rb +299 -0
  164. data/lib/embed_workflow/models/retrieve_execution200_response.rb +405 -0
  165. data/lib/embed_workflow/models/retry_action_request.rb +239 -0
  166. data/lib/embed_workflow/models/stop_executions_request.rb +232 -0
  167. data/lib/embed_workflow/models/trigger_workflow_request.rb +263 -0
  168. data/lib/embed_workflow/models/update_account_request.rb +327 -0
  169. data/lib/embed_workflow/models/update_account_request_action_type_categories_inner.rb +258 -0
  170. data/lib/embed_workflow/models/update_account_request_action_type_categories_inner_icon.rb +233 -0
  171. data/lib/embed_workflow/models/update_account_request_user_data_schema_inner.rb +271 -0
  172. data/lib/embed_workflow/models/update_action_type_request.rb +384 -0
  173. data/lib/embed_workflow/models/update_installed_app_request.rb +217 -0
  174. data/lib/embed_workflow/models/update_trigger_request.rb +225 -0
  175. data/lib/embed_workflow/models/update_workflow_request.rb +329 -0
  176. data/lib/embed_workflow/models/upsert_user_request.rb +259 -0
  177. data/lib/embed_workflow/version.rb +12 -2
  178. data/lib/embed_workflow.rb +244 -29
  179. data/spec/api/accounts_api_spec.rb +92 -0
  180. data/spec/api/action_types_api_spec.rb +116 -0
  181. data/spec/api/actions_api_spec.rb +125 -0
  182. data/spec/api/app_connections_api_spec.rb +97 -0
  183. data/spec/api/available_apps_api_spec.rb +57 -0
  184. data/spec/api/data_fields_api_spec.rb +76 -0
  185. data/spec/api/events_api_spec.rb +48 -0
  186. data/spec/api/executions_api_spec.rb +72 -0
  187. data/spec/api/installed_apps_api_spec.rb +79 -0
  188. data/spec/api/payments_api_spec.rb +48 -0
  189. data/spec/api/triggers_api_spec.rb +82 -0
  190. data/spec/api/users_api_spec.rb +94 -0
  191. data/spec/api/workflows_api_spec.rb +190 -0
  192. data/spec/models/catch_hook_request_spec.rb +36 -0
  193. data/spec/models/create_action_type422_response_spec.rb +48 -0
  194. data/spec/models/create_action_type_request_form_draft_inner_spec.rb +82 -0
  195. data/spec/models/create_action_type_request_icon_draft_spec.rb +48 -0
  196. data/spec/models/create_action_type_request_spec.rb +126 -0
  197. data/spec/models/create_app_connection_request_spec.rb +54 -0
  198. data/spec/models/create_user_token200_response_spec.rb +36 -0
  199. data/spec/models/create_user_token_request_spec.rb +42 -0
  200. data/spec/models/create_workflow201_response_spec.rb +266 -0
  201. data/spec/models/create_workflow_request_spec.rb +78 -0
  202. data/spec/models/create_workflow_request_template_draft_nodes_inner_spec.rb +134 -0
  203. data/spec/models/create_workflow_request_template_draft_spec.rb +42 -0
  204. data/spec/models/delete_action_type200_response_spec.rb +36 -0
  205. data/spec/models/delete_workflow200_response_one_of1_spec.rb +36 -0
  206. data/spec/models/delete_workflow200_response_one_of_spec.rb +36 -0
  207. data/spec/models/delete_workflow200_response_spec.rb +32 -0
  208. data/spec/models/discard_workflow_draft_request_spec.rb +42 -0
  209. data/spec/models/evaluate_expression200_response_spec.rb +36 -0
  210. data/spec/models/evaluate_expression_request_spec.rb +42 -0
  211. data/spec/models/execute_workflow201_response_spec.rb +132 -0
  212. data/spec/models/execute_workflow_request_spec.rb +52 -0
  213. data/spec/models/export_configuration200_response_configuration_spec.rb +32 -0
  214. data/spec/models/export_configuration200_response_spec.rb +36 -0
  215. data/spec/models/import_configuration201_response_spec.rb +66 -0
  216. data/spec/models/import_configuration_request_schema_spec.rb +32 -0
  217. data/spec/models/import_configuration_request_spec.rb +46 -0
  218. data/spec/models/install_app201_response_spec.rb +132 -0
  219. data/spec/models/install_app_request_spec.rb +42 -0
  220. data/spec/models/list_action_types200_response_collection_inner_spec.rb +312 -0
  221. data/spec/models/list_action_types200_response_meta_spec.rb +48 -0
  222. data/spec/models/list_action_types200_response_spec.rb +42 -0
  223. data/spec/models/list_actions200_response_collection_inner_spec.rb +156 -0
  224. data/spec/models/list_actions200_response_spec.rb +42 -0
  225. data/spec/models/list_app_connections200_response_collection_inner_spec.rb +78 -0
  226. data/spec/models/list_app_connections200_response_spec.rb +42 -0
  227. data/spec/models/list_available_apps200_response_collection_inner_spec.rb +78 -0
  228. data/spec/models/list_available_apps200_response_spec.rb +42 -0
  229. data/spec/models/list_data_fields200_response_collection_inner_spec.rb +120 -0
  230. data/spec/models/list_data_fields200_response_spec.rb +42 -0
  231. data/spec/models/list_data_fields_type_parameter_spec.rb +32 -0
  232. data/spec/models/list_events200_response_collection_inner_spec.rb +90 -0
  233. data/spec/models/list_events200_response_spec.rb +42 -0
  234. data/spec/models/list_installed_apps200_response_collection_inner_spec.rb +126 -0
  235. data/spec/models/list_installed_apps200_response_spec.rb +42 -0
  236. data/spec/models/list_triggers200_response_collection_inner_spec.rb +132 -0
  237. data/spec/models/list_triggers200_response_spec.rb +42 -0
  238. data/spec/models/list_users200_response_collection_inner_spec.rb +96 -0
  239. data/spec/models/list_users200_response_spec.rb +42 -0
  240. data/spec/models/list_workflow_executions200_response_spec.rb +42 -0
  241. data/spec/models/list_workflow_versions200_response_collection_inner_spec.rb +72 -0
  242. data/spec/models/list_workflow_versions200_response_spec.rb +42 -0
  243. data/spec/models/list_workflows200_response_collection_inner_spec.rb +214 -0
  244. data/spec/models/list_workflows200_response_spec.rb +42 -0
  245. data/spec/models/publish_workflow_request_spec.rb +36 -0
  246. data/spec/models/retrieve_account200_response_spec.rb +120 -0
  247. data/spec/models/retrieve_account_usage200_response_spec.rb +72 -0
  248. data/spec/models/retrieve_available_app200_response_spec.rb +84 -0
  249. data/spec/models/retrieve_execution200_response_spec.rb +144 -0
  250. data/spec/models/retry_action_request_spec.rb +42 -0
  251. data/spec/models/stop_executions_request_spec.rb +42 -0
  252. data/spec/models/trigger_workflow_request_spec.rb +60 -0
  253. data/spec/models/update_account_request_action_type_categories_inner_icon_spec.rb +48 -0
  254. data/spec/models/update_account_request_action_type_categories_inner_spec.rb +54 -0
  255. data/spec/models/update_account_request_spec.rb +96 -0
  256. data/spec/models/update_account_request_user_data_schema_inner_spec.rb +60 -0
  257. data/spec/models/update_action_type_request_spec.rb +132 -0
  258. data/spec/models/update_installed_app_request_spec.rb +36 -0
  259. data/spec/models/update_trigger_request_spec.rb +42 -0
  260. data/spec/models/update_workflow_request_spec.rb +96 -0
  261. data/spec/models/upsert_user_request_spec.rb +60 -0
  262. data/spec/spec_helper.rb +111 -0
  263. data/vendor/bundle/ruby/3.2.0/bin/byebug +29 -0
  264. data/vendor/bundle/ruby/3.2.0/bin/coderay +29 -0
  265. data/vendor/bundle/ruby/3.2.0/bin/htmldiff +29 -0
  266. data/vendor/bundle/ruby/3.2.0/bin/ldiff +29 -0
  267. data/vendor/bundle/ruby/3.2.0/bin/pry +29 -0
  268. data/vendor/bundle/ruby/3.2.0/bin/racc +29 -0
  269. data/vendor/bundle/ruby/3.2.0/bin/rake +29 -0
  270. data/vendor/bundle/ruby/3.2.0/bin/rspec +29 -0
  271. data/vendor/bundle/ruby/3.2.0/bin/rubocop +29 -0
  272. data/vendor/bundle/ruby/3.2.0/bin/ruby-parse +29 -0
  273. data/vendor/bundle/ruby/3.2.0/bin/ruby-rewrite +29 -0
  274. data/vendor/bundle/ruby/3.2.0/cache/ast-2.4.3.gem +0 -0
  275. data/vendor/bundle/ruby/3.2.0/cache/byebug-13.0.0.gem +0 -0
  276. data/vendor/bundle/ruby/3.2.0/cache/coderay-1.1.3.gem +0 -0
  277. data/vendor/bundle/ruby/3.2.0/cache/date-3.5.1.gem +0 -0
  278. data/vendor/bundle/ruby/3.2.0/cache/diff-lcs-1.6.2.gem +0 -0
  279. data/vendor/bundle/ruby/3.2.0/cache/faraday-2.14.3.gem +0 -0
  280. data/vendor/bundle/ruby/3.2.0/cache/faraday-multipart-1.2.0.gem +0 -0
  281. data/vendor/bundle/ruby/3.2.0/cache/faraday-net_http-3.4.4.gem +0 -0
  282. data/vendor/bundle/ruby/3.2.0/cache/io-console-0.8.2.gem +0 -0
  283. data/vendor/bundle/ruby/3.2.0/cache/jaro_winkler-1.5.6.gem +0 -0
  284. data/vendor/bundle/ruby/3.2.0/cache/json-2.20.0.gem +0 -0
  285. data/vendor/bundle/ruby/3.2.0/cache/logger-1.7.0.gem +0 -0
  286. data/vendor/bundle/ruby/3.2.0/cache/method_source-1.1.0.gem +0 -0
  287. data/vendor/bundle/ruby/3.2.0/cache/multipart-post-2.4.1.gem +0 -0
  288. data/vendor/bundle/ruby/3.2.0/cache/net-http-0.9.1.gem +0 -0
  289. data/vendor/bundle/ruby/3.2.0/cache/parallel-1.28.0.gem +0 -0
  290. data/vendor/bundle/ruby/3.2.0/cache/parser-3.3.11.1.gem +0 -0
  291. data/vendor/bundle/ruby/3.2.0/cache/pry-0.16.0.gem +0 -0
  292. data/vendor/bundle/ruby/3.2.0/cache/pry-byebug-3.12.0.gem +0 -0
  293. data/vendor/bundle/ruby/3.2.0/cache/psych-5.4.0.gem +0 -0
  294. data/vendor/bundle/ruby/3.2.0/cache/racc-1.8.1.gem +0 -0
  295. data/vendor/bundle/ruby/3.2.0/cache/rainbow-3.1.1.gem +0 -0
  296. data/vendor/bundle/ruby/3.2.0/cache/rake-13.0.6.gem +0 -0
  297. data/vendor/bundle/ruby/3.2.0/cache/reline-0.6.3.gem +0 -0
  298. data/vendor/bundle/ruby/3.2.0/cache/rspec-3.13.2.gem +0 -0
  299. data/vendor/bundle/ruby/3.2.0/cache/rspec-core-3.13.6.gem +0 -0
  300. data/vendor/bundle/ruby/3.2.0/cache/rspec-expectations-3.13.5.gem +0 -0
  301. data/vendor/bundle/ruby/3.2.0/cache/rspec-mocks-3.13.8.gem +0 -0
  302. data/vendor/bundle/ruby/3.2.0/cache/rspec-support-3.13.7.gem +0 -0
  303. data/vendor/bundle/ruby/3.2.0/cache/rubocop-0.66.0.gem +0 -0
  304. data/vendor/bundle/ruby/3.2.0/cache/ruby-progressbar-1.13.0.gem +0 -0
  305. data/vendor/bundle/ruby/3.2.0/cache/stringio-3.2.0.gem +0 -0
  306. data/vendor/bundle/ruby/3.2.0/cache/unicode-display_width-1.5.0.gem +0 -0
  307. data/vendor/bundle/ruby/3.2.0/cache/uri-1.1.1.gem +0 -0
  308. data/vendor/bundle/ruby/3.2.0/extensions/x86_64-linux/3.2.0/byebug-13.0.0/byebug/byebug.so +0 -0
  309. data/vendor/bundle/ruby/3.2.0/extensions/x86_64-linux/3.2.0/byebug-13.0.0/gem.build_complete +0 -0
  310. data/vendor/bundle/ruby/3.2.0/extensions/x86_64-linux/3.2.0/byebug-13.0.0/gem_make.out +42 -0
  311. data/vendor/bundle/ruby/3.2.0/extensions/x86_64-linux/3.2.0/date-3.5.1/date_core.so +0 -0
  312. data/vendor/bundle/ruby/3.2.0/extensions/x86_64-linux/3.2.0/date-3.5.1/gem.build_complete +0 -0
  313. data/vendor/bundle/ruby/3.2.0/extensions/x86_64-linux/3.2.0/date-3.5.1/gem_make.out +24 -0
  314. data/vendor/bundle/ruby/3.2.0/extensions/x86_64-linux/3.2.0/date-3.5.1/mkmf.log +93 -0
  315. data/vendor/bundle/ruby/3.2.0/extensions/x86_64-linux/3.2.0/io-console-0.8.2/gem.build_complete +0 -0
  316. data/vendor/bundle/ruby/3.2.0/extensions/x86_64-linux/3.2.0/io-console-0.8.2/gem_make.out +31 -0
  317. data/vendor/bundle/ruby/3.2.0/extensions/x86_64-linux/3.2.0/io-console-0.8.2/io/console.so +0 -0
  318. data/vendor/bundle/ruby/3.2.0/extensions/x86_64-linux/3.2.0/io-console-0.8.2/mkmf.log +457 -0
  319. data/vendor/bundle/ruby/3.2.0/extensions/x86_64-linux/3.2.0/jaro_winkler-1.5.6/gem.build_complete +0 -0
  320. data/vendor/bundle/ruby/3.2.0/extensions/x86_64-linux/3.2.0/jaro_winkler-1.5.6/gem_make.out +29 -0
  321. data/vendor/bundle/ruby/3.2.0/extensions/x86_64-linux/3.2.0/jaro_winkler-1.5.6/jaro_winkler/jaro_winkler_ext.so +0 -0
  322. data/vendor/bundle/ruby/3.2.0/extensions/x86_64-linux/3.2.0/json-2.20.0/gem.build_complete +0 -0
  323. data/vendor/bundle/ruby/3.2.0/extensions/x86_64-linux/3.2.0/json-2.20.0/gem_make.out +31 -0
  324. data/vendor/bundle/ruby/3.2.0/extensions/x86_64-linux/3.2.0/json-2.20.0/json/ext/generator.so +0 -0
  325. data/vendor/bundle/ruby/3.2.0/extensions/x86_64-linux/3.2.0/json-2.20.0/json/ext/parser.so +0 -0
  326. data/vendor/bundle/ruby/3.2.0/extensions/x86_64-linux/3.2.0/json-2.20.0/mkmf.log +358 -0
  327. data/vendor/bundle/ruby/3.2.0/extensions/x86_64-linux/3.2.0/psych-5.4.0/gem.build_complete +0 -0
  328. data/vendor/bundle/ruby/3.2.0/extensions/x86_64-linux/3.2.0/psych-5.4.0/gem_make.out +28 -0
  329. data/vendor/bundle/ruby/3.2.0/extensions/x86_64-linux/3.2.0/psych-5.4.0/mkmf.log +37 -0
  330. data/vendor/bundle/ruby/3.2.0/extensions/x86_64-linux/3.2.0/psych-5.4.0/psych.so +0 -0
  331. data/vendor/bundle/ruby/3.2.0/extensions/x86_64-linux/3.2.0/racc-1.8.1/gem.build_complete +0 -0
  332. data/vendor/bundle/ruby/3.2.0/extensions/x86_64-linux/3.2.0/racc-1.8.1/gem_make.out +18 -0
  333. data/vendor/bundle/ruby/3.2.0/extensions/x86_64-linux/3.2.0/racc-1.8.1/racc/cparse.so +0 -0
  334. data/vendor/bundle/ruby/3.2.0/extensions/x86_64-linux/3.2.0/stringio-3.2.0/gem.build_complete +0 -0
  335. data/vendor/bundle/ruby/3.2.0/extensions/x86_64-linux/3.2.0/stringio-3.2.0/gem_make.out +19 -0
  336. data/vendor/bundle/ruby/3.2.0/extensions/x86_64-linux/3.2.0/stringio-3.2.0/mkmf.log +33 -0
  337. data/vendor/bundle/ruby/3.2.0/extensions/x86_64-linux/3.2.0/stringio-3.2.0/stringio.so +0 -0
  338. data/vendor/bundle/ruby/3.2.0/gems/ast-2.4.3/LICENSE.MIT +20 -0
  339. data/vendor/bundle/ruby/3.2.0/gems/ast-2.4.3/README.YARD.md +12 -0
  340. data/vendor/bundle/ruby/3.2.0/gems/ast-2.4.3/lib/ast/node.rb +268 -0
  341. data/vendor/bundle/ruby/3.2.0/gems/ast-2.4.3/lib/ast/processor/mixin.rb +288 -0
  342. data/vendor/bundle/ruby/3.2.0/gems/ast-2.4.3/lib/ast/processor.rb +12 -0
  343. data/vendor/bundle/ruby/3.2.0/gems/ast-2.4.3/lib/ast/sexp.rb +30 -0
  344. data/vendor/bundle/ruby/3.2.0/gems/ast-2.4.3/lib/ast.rb +17 -0
  345. data/vendor/bundle/ruby/3.2.0/gems/byebug-13.0.0/CHANGELOG.md +980 -0
  346. data/vendor/bundle/ruby/3.2.0/gems/byebug-13.0.0/CONTRIBUTING.md +58 -0
  347. data/vendor/bundle/ruby/3.2.0/gems/byebug-13.0.0/GUIDE.md +1806 -0
  348. data/vendor/bundle/ruby/3.2.0/gems/byebug-13.0.0/LICENSE +23 -0
  349. data/vendor/bundle/ruby/3.2.0/gems/byebug-13.0.0/README.md +197 -0
  350. data/vendor/bundle/ruby/3.2.0/gems/byebug-13.0.0/exe/byebug +6 -0
  351. data/vendor/bundle/ruby/3.2.0/gems/byebug-13.0.0/ext/byebug/Makefile +269 -0
  352. data/vendor/bundle/ruby/3.2.0/gems/byebug-13.0.0/ext/byebug/breakpoint.c +522 -0
  353. data/vendor/bundle/ruby/3.2.0/gems/byebug-13.0.0/ext/byebug/byebug.c +906 -0
  354. data/vendor/bundle/ruby/3.2.0/gems/byebug-13.0.0/ext/byebug/byebug.h +147 -0
  355. data/vendor/bundle/ruby/3.2.0/gems/byebug-13.0.0/ext/byebug/context.c +682 -0
  356. data/vendor/bundle/ruby/3.2.0/gems/byebug-13.0.0/ext/byebug/extconf.rb +12 -0
  357. data/vendor/bundle/ruby/3.2.0/gems/byebug-13.0.0/ext/byebug/locker.c +96 -0
  358. data/vendor/bundle/ruby/3.2.0/gems/byebug-13.0.0/ext/byebug/threads.c +254 -0
  359. data/vendor/bundle/ruby/3.2.0/gems/byebug-13.0.0/lib/byebug/attacher.rb +48 -0
  360. data/vendor/bundle/ruby/3.2.0/gems/byebug-13.0.0/lib/byebug/breakpoint.rb +94 -0
  361. data/vendor/bundle/ruby/3.2.0/gems/byebug-13.0.0/lib/byebug/byebug.so +0 -0
  362. data/vendor/bundle/ruby/3.2.0/gems/byebug-13.0.0/lib/byebug/command.rb +111 -0
  363. data/vendor/bundle/ruby/3.2.0/gems/byebug-13.0.0/lib/byebug/command_list.rb +34 -0
  364. data/vendor/bundle/ruby/3.2.0/gems/byebug-13.0.0/lib/byebug/commands/break.rb +114 -0
  365. data/vendor/bundle/ruby/3.2.0/gems/byebug-13.0.0/lib/byebug/commands/catch.rb +78 -0
  366. data/vendor/bundle/ruby/3.2.0/gems/byebug-13.0.0/lib/byebug/commands/condition.rb +55 -0
  367. data/vendor/bundle/ruby/3.2.0/gems/byebug-13.0.0/lib/byebug/commands/continue.rb +68 -0
  368. data/vendor/bundle/ruby/3.2.0/gems/byebug-13.0.0/lib/byebug/commands/debug.rb +38 -0
  369. data/vendor/bundle/ruby/3.2.0/gems/byebug-13.0.0/lib/byebug/commands/delete.rb +55 -0
  370. data/vendor/bundle/ruby/3.2.0/gems/byebug-13.0.0/lib/byebug/commands/disable/breakpoints.rb +42 -0
  371. data/vendor/bundle/ruby/3.2.0/gems/byebug-13.0.0/lib/byebug/commands/disable/display.rb +43 -0
  372. data/vendor/bundle/ruby/3.2.0/gems/byebug-13.0.0/lib/byebug/commands/disable.rb +33 -0
  373. data/vendor/bundle/ruby/3.2.0/gems/byebug-13.0.0/lib/byebug/commands/display.rb +66 -0
  374. data/vendor/bundle/ruby/3.2.0/gems/byebug-13.0.0/lib/byebug/commands/down.rb +45 -0
  375. data/vendor/bundle/ruby/3.2.0/gems/byebug-13.0.0/lib/byebug/commands/edit.rb +69 -0
  376. data/vendor/bundle/ruby/3.2.0/gems/byebug-13.0.0/lib/byebug/commands/enable/breakpoints.rb +42 -0
  377. data/vendor/bundle/ruby/3.2.0/gems/byebug-13.0.0/lib/byebug/commands/enable/display.rb +43 -0
  378. data/vendor/bundle/ruby/3.2.0/gems/byebug-13.0.0/lib/byebug/commands/enable.rb +33 -0
  379. data/vendor/bundle/ruby/3.2.0/gems/byebug-13.0.0/lib/byebug/commands/finish.rb +57 -0
  380. data/vendor/bundle/ruby/3.2.0/gems/byebug-13.0.0/lib/byebug/commands/frame.rb +57 -0
  381. data/vendor/bundle/ruby/3.2.0/gems/byebug-13.0.0/lib/byebug/commands/help.rb +64 -0
  382. data/vendor/bundle/ruby/3.2.0/gems/byebug-13.0.0/lib/byebug/commands/history.rb +39 -0
  383. data/vendor/bundle/ruby/3.2.0/gems/byebug-13.0.0/lib/byebug/commands/info/breakpoints.rb +65 -0
  384. data/vendor/bundle/ruby/3.2.0/gems/byebug-13.0.0/lib/byebug/commands/info/display.rb +49 -0
  385. data/vendor/bundle/ruby/3.2.0/gems/byebug-13.0.0/lib/byebug/commands/info/file.rb +80 -0
  386. data/vendor/bundle/ruby/3.2.0/gems/byebug-13.0.0/lib/byebug/commands/info/line.rb +35 -0
  387. data/vendor/bundle/ruby/3.2.0/gems/byebug-13.0.0/lib/byebug/commands/info/program.rb +49 -0
  388. data/vendor/bundle/ruby/3.2.0/gems/byebug-13.0.0/lib/byebug/commands/info.rb +37 -0
  389. data/vendor/bundle/ruby/3.2.0/gems/byebug-13.0.0/lib/byebug/commands/interrupt.rb +34 -0
  390. data/vendor/bundle/ruby/3.2.0/gems/byebug-13.0.0/lib/byebug/commands/irb.rb +51 -0
  391. data/vendor/bundle/ruby/3.2.0/gems/byebug-13.0.0/lib/byebug/commands/kill.rb +45 -0
  392. data/vendor/bundle/ruby/3.2.0/gems/byebug-13.0.0/lib/byebug/commands/list.rb +159 -0
  393. data/vendor/bundle/ruby/3.2.0/gems/byebug-13.0.0/lib/byebug/commands/method.rb +53 -0
  394. data/vendor/bundle/ruby/3.2.0/gems/byebug-13.0.0/lib/byebug/commands/next.rb +40 -0
  395. data/vendor/bundle/ruby/3.2.0/gems/byebug-13.0.0/lib/byebug/commands/pry.rb +41 -0
  396. data/vendor/bundle/ruby/3.2.0/gems/byebug-13.0.0/lib/byebug/commands/quit.rb +42 -0
  397. data/vendor/bundle/ruby/3.2.0/gems/byebug-13.0.0/lib/byebug/commands/restart.rb +64 -0
  398. data/vendor/bundle/ruby/3.2.0/gems/byebug-13.0.0/lib/byebug/commands/save.rb +72 -0
  399. data/vendor/bundle/ruby/3.2.0/gems/byebug-13.0.0/lib/byebug/commands/set.rb +79 -0
  400. data/vendor/bundle/ruby/3.2.0/gems/byebug-13.0.0/lib/byebug/commands/show.rb +45 -0
  401. data/vendor/bundle/ruby/3.2.0/gems/byebug-13.0.0/lib/byebug/commands/skip.rb +85 -0
  402. data/vendor/bundle/ruby/3.2.0/gems/byebug-13.0.0/lib/byebug/commands/source.rb +40 -0
  403. data/vendor/bundle/ruby/3.2.0/gems/byebug-13.0.0/lib/byebug/commands/step.rb +40 -0
  404. data/vendor/bundle/ruby/3.2.0/gems/byebug-13.0.0/lib/byebug/commands/thread/current.rb +37 -0
  405. data/vendor/bundle/ruby/3.2.0/gems/byebug-13.0.0/lib/byebug/commands/thread/list.rb +43 -0
  406. data/vendor/bundle/ruby/3.2.0/gems/byebug-13.0.0/lib/byebug/commands/thread/resume.rb +45 -0
  407. data/vendor/bundle/ruby/3.2.0/gems/byebug-13.0.0/lib/byebug/commands/thread/stop.rb +43 -0
  408. data/vendor/bundle/ruby/3.2.0/gems/byebug-13.0.0/lib/byebug/commands/thread/switch.rb +46 -0
  409. data/vendor/bundle/ruby/3.2.0/gems/byebug-13.0.0/lib/byebug/commands/thread.rb +34 -0
  410. data/vendor/bundle/ruby/3.2.0/gems/byebug-13.0.0/lib/byebug/commands/tracevar.rb +54 -0
  411. data/vendor/bundle/ruby/3.2.0/gems/byebug-13.0.0/lib/byebug/commands/undisplay.rb +51 -0
  412. data/vendor/bundle/ruby/3.2.0/gems/byebug-13.0.0/lib/byebug/commands/untracevar.rb +36 -0
  413. data/vendor/bundle/ruby/3.2.0/gems/byebug-13.0.0/lib/byebug/commands/up.rb +45 -0
  414. data/vendor/bundle/ruby/3.2.0/gems/byebug-13.0.0/lib/byebug/commands/var/all.rb +41 -0
  415. data/vendor/bundle/ruby/3.2.0/gems/byebug-13.0.0/lib/byebug/commands/var/args.rb +39 -0
  416. data/vendor/bundle/ruby/3.2.0/gems/byebug-13.0.0/lib/byebug/commands/var/const.rb +49 -0
  417. data/vendor/bundle/ruby/3.2.0/gems/byebug-13.0.0/lib/byebug/commands/var/global.rb +37 -0
  418. data/vendor/bundle/ruby/3.2.0/gems/byebug-13.0.0/lib/byebug/commands/var/instance.rb +39 -0
  419. data/vendor/bundle/ruby/3.2.0/gems/byebug-13.0.0/lib/byebug/commands/var/local.rb +39 -0
  420. data/vendor/bundle/ruby/3.2.0/gems/byebug-13.0.0/lib/byebug/commands/var.rb +37 -0
  421. data/vendor/bundle/ruby/3.2.0/gems/byebug-13.0.0/lib/byebug/commands/where.rb +64 -0
  422. data/vendor/bundle/ruby/3.2.0/gems/byebug-13.0.0/lib/byebug/commands.rb +40 -0
  423. data/vendor/bundle/ruby/3.2.0/gems/byebug-13.0.0/lib/byebug/context.rb +157 -0
  424. data/vendor/bundle/ruby/3.2.0/gems/byebug-13.0.0/lib/byebug/core.rb +115 -0
  425. data/vendor/bundle/ruby/3.2.0/gems/byebug-13.0.0/lib/byebug/errors.rb +29 -0
  426. data/vendor/bundle/ruby/3.2.0/gems/byebug-13.0.0/lib/byebug/frame.rb +185 -0
  427. data/vendor/bundle/ruby/3.2.0/gems/byebug-13.0.0/lib/byebug/helpers/bin.rb +47 -0
  428. data/vendor/bundle/ruby/3.2.0/gems/byebug-13.0.0/lib/byebug/helpers/eval.rb +124 -0
  429. data/vendor/bundle/ruby/3.2.0/gems/byebug-13.0.0/lib/byebug/helpers/file.rb +67 -0
  430. data/vendor/bundle/ruby/3.2.0/gems/byebug-13.0.0/lib/byebug/helpers/frame.rb +75 -0
  431. data/vendor/bundle/ruby/3.2.0/gems/byebug-13.0.0/lib/byebug/helpers/parse.rb +82 -0
  432. data/vendor/bundle/ruby/3.2.0/gems/byebug-13.0.0/lib/byebug/helpers/path.rb +40 -0
  433. data/vendor/bundle/ruby/3.2.0/gems/byebug-13.0.0/lib/byebug/helpers/reflection.rb +19 -0
  434. data/vendor/bundle/ruby/3.2.0/gems/byebug-13.0.0/lib/byebug/helpers/string.rb +33 -0
  435. data/vendor/bundle/ruby/3.2.0/gems/byebug-13.0.0/lib/byebug/helpers/thread.rb +67 -0
  436. data/vendor/bundle/ruby/3.2.0/gems/byebug-13.0.0/lib/byebug/helpers/toggle.rb +62 -0
  437. data/vendor/bundle/ruby/3.2.0/gems/byebug-13.0.0/lib/byebug/helpers/var.rb +70 -0
  438. data/vendor/bundle/ruby/3.2.0/gems/byebug-13.0.0/lib/byebug/history.rb +120 -0
  439. data/vendor/bundle/ruby/3.2.0/gems/byebug-13.0.0/lib/byebug/interface.rb +146 -0
  440. data/vendor/bundle/ruby/3.2.0/gems/byebug-13.0.0/lib/byebug/interfaces/local_interface.rb +63 -0
  441. data/vendor/bundle/ruby/3.2.0/gems/byebug-13.0.0/lib/byebug/interfaces/remote_interface.rb +50 -0
  442. data/vendor/bundle/ruby/3.2.0/gems/byebug-13.0.0/lib/byebug/interfaces/script_interface.rb +33 -0
  443. data/vendor/bundle/ruby/3.2.0/gems/byebug-13.0.0/lib/byebug/interfaces/test_interface.rb +67 -0
  444. data/vendor/bundle/ruby/3.2.0/gems/byebug-13.0.0/lib/byebug/option_setter.rb +95 -0
  445. data/vendor/bundle/ruby/3.2.0/gems/byebug-13.0.0/lib/byebug/printers/base.rb +68 -0
  446. data/vendor/bundle/ruby/3.2.0/gems/byebug-13.0.0/lib/byebug/printers/plain.rb +44 -0
  447. data/vendor/bundle/ruby/3.2.0/gems/byebug-13.0.0/lib/byebug/printers/texts/base.yml +115 -0
  448. data/vendor/bundle/ruby/3.2.0/gems/byebug-13.0.0/lib/byebug/printers/texts/plain.yml +33 -0
  449. data/vendor/bundle/ruby/3.2.0/gems/byebug-13.0.0/lib/byebug/processors/command_processor.rb +173 -0
  450. data/vendor/bundle/ruby/3.2.0/gems/byebug-13.0.0/lib/byebug/processors/control_processor.rb +24 -0
  451. data/vendor/bundle/ruby/3.2.0/gems/byebug-13.0.0/lib/byebug/processors/post_mortem_processor.rb +18 -0
  452. data/vendor/bundle/ruby/3.2.0/gems/byebug-13.0.0/lib/byebug/processors/script_processor.rb +49 -0
  453. data/vendor/bundle/ruby/3.2.0/gems/byebug-13.0.0/lib/byebug/remote/client.rb +57 -0
  454. data/vendor/bundle/ruby/3.2.0/gems/byebug-13.0.0/lib/byebug/remote/server.rb +47 -0
  455. data/vendor/bundle/ruby/3.2.0/gems/byebug-13.0.0/lib/byebug/remote.rb +85 -0
  456. data/vendor/bundle/ruby/3.2.0/gems/byebug-13.0.0/lib/byebug/runner.rb +198 -0
  457. data/vendor/bundle/ruby/3.2.0/gems/byebug-13.0.0/lib/byebug/setting.rb +79 -0
  458. data/vendor/bundle/ruby/3.2.0/gems/byebug-13.0.0/lib/byebug/settings/autoirb.rb +29 -0
  459. data/vendor/bundle/ruby/3.2.0/gems/byebug-13.0.0/lib/byebug/settings/autolist.rb +29 -0
  460. data/vendor/bundle/ruby/3.2.0/gems/byebug-13.0.0/lib/byebug/settings/autopry.rb +29 -0
  461. data/vendor/bundle/ruby/3.2.0/gems/byebug-13.0.0/lib/byebug/settings/autosave.rb +17 -0
  462. data/vendor/bundle/ruby/3.2.0/gems/byebug-13.0.0/lib/byebug/settings/basename.rb +16 -0
  463. data/vendor/bundle/ruby/3.2.0/gems/byebug-13.0.0/lib/byebug/settings/callstyle.rb +20 -0
  464. data/vendor/bundle/ruby/3.2.0/gems/byebug-13.0.0/lib/byebug/settings/fullpath.rb +16 -0
  465. data/vendor/bundle/ruby/3.2.0/gems/byebug-13.0.0/lib/byebug/settings/histfile.rb +20 -0
  466. data/vendor/bundle/ruby/3.2.0/gems/byebug-13.0.0/lib/byebug/settings/histsize.rb +20 -0
  467. data/vendor/bundle/ruby/3.2.0/gems/byebug-13.0.0/lib/byebug/settings/linetrace.rb +22 -0
  468. data/vendor/bundle/ruby/3.2.0/gems/byebug-13.0.0/lib/byebug/settings/listsize.rb +21 -0
  469. data/vendor/bundle/ruby/3.2.0/gems/byebug-13.0.0/lib/byebug/settings/post_mortem.rb +27 -0
  470. data/vendor/bundle/ruby/3.2.0/gems/byebug-13.0.0/lib/byebug/settings/savefile.rb +20 -0
  471. data/vendor/bundle/ruby/3.2.0/gems/byebug-13.0.0/lib/byebug/settings/stack_on_error.rb +15 -0
  472. data/vendor/bundle/ruby/3.2.0/gems/byebug-13.0.0/lib/byebug/settings/width.rb +20 -0
  473. data/vendor/bundle/ruby/3.2.0/gems/byebug-13.0.0/lib/byebug/source_file_formatter.rb +71 -0
  474. data/vendor/bundle/ruby/3.2.0/gems/byebug-13.0.0/lib/byebug/subcommands.rb +54 -0
  475. data/vendor/bundle/ruby/3.2.0/gems/byebug-13.0.0/lib/byebug/version.rb +8 -0
  476. data/vendor/bundle/ruby/3.2.0/gems/byebug-13.0.0/lib/byebug.rb +3 -0
  477. data/vendor/bundle/ruby/3.2.0/gems/coderay-1.1.3/MIT-LICENSE +22 -0
  478. data/vendor/bundle/ruby/3.2.0/gems/coderay-1.1.3/README_INDEX.rdoc +123 -0
  479. data/vendor/bundle/ruby/3.2.0/gems/coderay-1.1.3/bin/coderay +215 -0
  480. data/vendor/bundle/ruby/3.2.0/gems/coderay-1.1.3/lib/coderay/duo.rb +81 -0
  481. data/vendor/bundle/ruby/3.2.0/gems/coderay-1.1.3/lib/coderay/encoders/_map.rb +17 -0
  482. data/vendor/bundle/ruby/3.2.0/gems/coderay-1.1.3/lib/coderay/encoders/comment_filter.rb +25 -0
  483. data/vendor/bundle/ruby/3.2.0/gems/coderay-1.1.3/lib/coderay/encoders/count.rb +39 -0
  484. data/vendor/bundle/ruby/3.2.0/gems/coderay-1.1.3/lib/coderay/encoders/debug.rb +49 -0
  485. data/vendor/bundle/ruby/3.2.0/gems/coderay-1.1.3/lib/coderay/encoders/debug_lint.rb +63 -0
  486. data/vendor/bundle/ruby/3.2.0/gems/coderay-1.1.3/lib/coderay/encoders/div.rb +23 -0
  487. data/vendor/bundle/ruby/3.2.0/gems/coderay-1.1.3/lib/coderay/encoders/encoder.rb +190 -0
  488. data/vendor/bundle/ruby/3.2.0/gems/coderay-1.1.3/lib/coderay/encoders/filter.rb +58 -0
  489. data/vendor/bundle/ruby/3.2.0/gems/coderay-1.1.3/lib/coderay/encoders/html/css.rb +65 -0
  490. data/vendor/bundle/ruby/3.2.0/gems/coderay-1.1.3/lib/coderay/encoders/html/numbering.rb +108 -0
  491. data/vendor/bundle/ruby/3.2.0/gems/coderay-1.1.3/lib/coderay/encoders/html/output.rb +164 -0
  492. data/vendor/bundle/ruby/3.2.0/gems/coderay-1.1.3/lib/coderay/encoders/html.rb +333 -0
  493. data/vendor/bundle/ruby/3.2.0/gems/coderay-1.1.3/lib/coderay/encoders/json.rb +83 -0
  494. data/vendor/bundle/ruby/3.2.0/gems/coderay-1.1.3/lib/coderay/encoders/lines_of_code.rb +45 -0
  495. data/vendor/bundle/ruby/3.2.0/gems/coderay-1.1.3/lib/coderay/encoders/lint.rb +59 -0
  496. data/vendor/bundle/ruby/3.2.0/gems/coderay-1.1.3/lib/coderay/encoders/null.rb +18 -0
  497. data/vendor/bundle/ruby/3.2.0/gems/coderay-1.1.3/lib/coderay/encoders/page.rb +24 -0
  498. data/vendor/bundle/ruby/3.2.0/gems/coderay-1.1.3/lib/coderay/encoders/span.rb +23 -0
  499. data/vendor/bundle/ruby/3.2.0/gems/coderay-1.1.3/lib/coderay/encoders/statistic.rb +95 -0
  500. data/vendor/bundle/ruby/3.2.0/gems/coderay-1.1.3/lib/coderay/encoders/terminal.rb +195 -0
  501. data/vendor/bundle/ruby/3.2.0/gems/coderay-1.1.3/lib/coderay/encoders/text.rb +46 -0
  502. data/vendor/bundle/ruby/3.2.0/gems/coderay-1.1.3/lib/coderay/encoders/token_kind_filter.rb +111 -0
  503. data/vendor/bundle/ruby/3.2.0/gems/coderay-1.1.3/lib/coderay/encoders/xml.rb +72 -0
  504. data/vendor/bundle/ruby/3.2.0/gems/coderay-1.1.3/lib/coderay/encoders/yaml.rb +50 -0
  505. data/vendor/bundle/ruby/3.2.0/gems/coderay-1.1.3/lib/coderay/encoders.rb +18 -0
  506. data/vendor/bundle/ruby/3.2.0/gems/coderay-1.1.3/lib/coderay/for_redcloth.rb +95 -0
  507. data/vendor/bundle/ruby/3.2.0/gems/coderay-1.1.3/lib/coderay/helpers/file_type.rb +151 -0
  508. data/vendor/bundle/ruby/3.2.0/gems/coderay-1.1.3/lib/coderay/helpers/plugin.rb +55 -0
  509. data/vendor/bundle/ruby/3.2.0/gems/coderay-1.1.3/lib/coderay/helpers/plugin_host.rb +221 -0
  510. data/vendor/bundle/ruby/3.2.0/gems/coderay-1.1.3/lib/coderay/helpers/word_list.rb +72 -0
  511. data/vendor/bundle/ruby/3.2.0/gems/coderay-1.1.3/lib/coderay/scanners/_map.rb +24 -0
  512. data/vendor/bundle/ruby/3.2.0/gems/coderay-1.1.3/lib/coderay/scanners/c.rb +189 -0
  513. data/vendor/bundle/ruby/3.2.0/gems/coderay-1.1.3/lib/coderay/scanners/clojure.rb +217 -0
  514. data/vendor/bundle/ruby/3.2.0/gems/coderay-1.1.3/lib/coderay/scanners/cpp.rb +217 -0
  515. data/vendor/bundle/ruby/3.2.0/gems/coderay-1.1.3/lib/coderay/scanners/css.rb +196 -0
  516. data/vendor/bundle/ruby/3.2.0/gems/coderay-1.1.3/lib/coderay/scanners/debug.rb +75 -0
  517. data/vendor/bundle/ruby/3.2.0/gems/coderay-1.1.3/lib/coderay/scanners/delphi.rb +144 -0
  518. data/vendor/bundle/ruby/3.2.0/gems/coderay-1.1.3/lib/coderay/scanners/diff.rb +221 -0
  519. data/vendor/bundle/ruby/3.2.0/gems/coderay-1.1.3/lib/coderay/scanners/erb.rb +81 -0
  520. data/vendor/bundle/ruby/3.2.0/gems/coderay-1.1.3/lib/coderay/scanners/go.rb +208 -0
  521. data/vendor/bundle/ruby/3.2.0/gems/coderay-1.1.3/lib/coderay/scanners/groovy.rb +268 -0
  522. data/vendor/bundle/ruby/3.2.0/gems/coderay-1.1.3/lib/coderay/scanners/haml.rb +168 -0
  523. data/vendor/bundle/ruby/3.2.0/gems/coderay-1.1.3/lib/coderay/scanners/html.rb +275 -0
  524. data/vendor/bundle/ruby/3.2.0/gems/coderay-1.1.3/lib/coderay/scanners/java/builtin_types.rb +421 -0
  525. data/vendor/bundle/ruby/3.2.0/gems/coderay-1.1.3/lib/coderay/scanners/java.rb +174 -0
  526. data/vendor/bundle/ruby/3.2.0/gems/coderay-1.1.3/lib/coderay/scanners/java_script.rb +236 -0
  527. data/vendor/bundle/ruby/3.2.0/gems/coderay-1.1.3/lib/coderay/scanners/json.rb +98 -0
  528. data/vendor/bundle/ruby/3.2.0/gems/coderay-1.1.3/lib/coderay/scanners/lua.rb +280 -0
  529. data/vendor/bundle/ruby/3.2.0/gems/coderay-1.1.3/lib/coderay/scanners/php.rb +527 -0
  530. data/vendor/bundle/ruby/3.2.0/gems/coderay-1.1.3/lib/coderay/scanners/python.rb +287 -0
  531. data/vendor/bundle/ruby/3.2.0/gems/coderay-1.1.3/lib/coderay/scanners/raydebug.rb +75 -0
  532. data/vendor/bundle/ruby/3.2.0/gems/coderay-1.1.3/lib/coderay/scanners/ruby/patterns.rb +178 -0
  533. data/vendor/bundle/ruby/3.2.0/gems/coderay-1.1.3/lib/coderay/scanners/ruby/string_state.rb +79 -0
  534. data/vendor/bundle/ruby/3.2.0/gems/coderay-1.1.3/lib/coderay/scanners/ruby.rb +477 -0
  535. data/vendor/bundle/ruby/3.2.0/gems/coderay-1.1.3/lib/coderay/scanners/sass.rb +232 -0
  536. data/vendor/bundle/ruby/3.2.0/gems/coderay-1.1.3/lib/coderay/scanners/scanner.rb +337 -0
  537. data/vendor/bundle/ruby/3.2.0/gems/coderay-1.1.3/lib/coderay/scanners/sql.rb +169 -0
  538. data/vendor/bundle/ruby/3.2.0/gems/coderay-1.1.3/lib/coderay/scanners/taskpaper.rb +36 -0
  539. data/vendor/bundle/ruby/3.2.0/gems/coderay-1.1.3/lib/coderay/scanners/text.rb +26 -0
  540. data/vendor/bundle/ruby/3.2.0/gems/coderay-1.1.3/lib/coderay/scanners/xml.rb +17 -0
  541. data/vendor/bundle/ruby/3.2.0/gems/coderay-1.1.3/lib/coderay/scanners/yaml.rb +140 -0
  542. data/vendor/bundle/ruby/3.2.0/gems/coderay-1.1.3/lib/coderay/scanners.rb +27 -0
  543. data/vendor/bundle/ruby/3.2.0/gems/coderay-1.1.3/lib/coderay/styles/_map.rb +7 -0
  544. data/vendor/bundle/ruby/3.2.0/gems/coderay-1.1.3/lib/coderay/styles/alpha.rb +153 -0
  545. data/vendor/bundle/ruby/3.2.0/gems/coderay-1.1.3/lib/coderay/styles/style.rb +18 -0
  546. data/vendor/bundle/ruby/3.2.0/gems/coderay-1.1.3/lib/coderay/styles.rb +15 -0
  547. data/vendor/bundle/ruby/3.2.0/gems/coderay-1.1.3/lib/coderay/token_kinds.rb +85 -0
  548. data/vendor/bundle/ruby/3.2.0/gems/coderay-1.1.3/lib/coderay/tokens.rb +164 -0
  549. data/vendor/bundle/ruby/3.2.0/gems/coderay-1.1.3/lib/coderay/tokens_proxy.rb +55 -0
  550. data/vendor/bundle/ruby/3.2.0/gems/coderay-1.1.3/lib/coderay/version.rb +3 -0
  551. data/vendor/bundle/ruby/3.2.0/gems/coderay-1.1.3/lib/coderay.rb +284 -0
  552. data/vendor/bundle/ruby/3.2.0/gems/date-3.5.1/BSDL +22 -0
  553. data/vendor/bundle/ruby/3.2.0/gems/date-3.5.1/COPYING +56 -0
  554. data/vendor/bundle/ruby/3.2.0/gems/date-3.5.1/README.md +102 -0
  555. data/vendor/bundle/ruby/3.2.0/gems/date-3.5.1/ext/date/Makefile +269 -0
  556. data/vendor/bundle/ruby/3.2.0/gems/date-3.5.1/ext/date/date_core.c +10065 -0
  557. data/vendor/bundle/ruby/3.2.0/gems/date-3.5.1/ext/date/date_parse.c +3086 -0
  558. data/vendor/bundle/ruby/3.2.0/gems/date-3.5.1/ext/date/date_strftime.c +638 -0
  559. data/vendor/bundle/ruby/3.2.0/gems/date-3.5.1/ext/date/date_strptime.c +704 -0
  560. data/vendor/bundle/ruby/3.2.0/gems/date-3.5.1/ext/date/date_tmx.h +56 -0
  561. data/vendor/bundle/ruby/3.2.0/gems/date-3.5.1/ext/date/extconf.rb +13 -0
  562. data/vendor/bundle/ruby/3.2.0/gems/date-3.5.1/ext/date/prereq.mk +19 -0
  563. data/vendor/bundle/ruby/3.2.0/gems/date-3.5.1/ext/date/zonetab.h +1564 -0
  564. data/vendor/bundle/ruby/3.2.0/gems/date-3.5.1/ext/date/zonetab.list +330 -0
  565. data/vendor/bundle/ruby/3.2.0/gems/date-3.5.1/lib/date.rb +70 -0
  566. data/vendor/bundle/ruby/3.2.0/gems/date-3.5.1/lib/date_core.so +0 -0
  567. data/vendor/bundle/ruby/3.2.0/gems/diff-lcs-1.6.2/.rspec +1 -0
  568. data/vendor/bundle/ruby/3.2.0/gems/diff-lcs-1.6.2/CHANGELOG.md +518 -0
  569. data/vendor/bundle/ruby/3.2.0/gems/diff-lcs-1.6.2/CODE_OF_CONDUCT.md +128 -0
  570. data/vendor/bundle/ruby/3.2.0/gems/diff-lcs-1.6.2/CONTRIBUTING.md +71 -0
  571. data/vendor/bundle/ruby/3.2.0/gems/diff-lcs-1.6.2/CONTRIBUTORS.md +49 -0
  572. data/vendor/bundle/ruby/3.2.0/gems/diff-lcs-1.6.2/LICENCE.md +40 -0
  573. data/vendor/bundle/ruby/3.2.0/gems/diff-lcs-1.6.2/Manifest.txt +115 -0
  574. data/vendor/bundle/ruby/3.2.0/gems/diff-lcs-1.6.2/README.md +92 -0
  575. data/vendor/bundle/ruby/3.2.0/gems/diff-lcs-1.6.2/Rakefile +115 -0
  576. data/vendor/bundle/ruby/3.2.0/gems/diff-lcs-1.6.2/SECURITY.md +41 -0
  577. data/vendor/bundle/ruby/3.2.0/gems/diff-lcs-1.6.2/bin/htmldiff +35 -0
  578. data/vendor/bundle/ruby/3.2.0/gems/diff-lcs-1.6.2/bin/ldiff +9 -0
  579. data/vendor/bundle/ruby/3.2.0/gems/diff-lcs-1.6.2/docs/COPYING.txt +339 -0
  580. data/vendor/bundle/ruby/3.2.0/gems/diff-lcs-1.6.2/docs/artistic.txt +127 -0
  581. data/vendor/bundle/ruby/3.2.0/gems/diff-lcs-1.6.2/lib/diff/lcs/array.rb +7 -0
  582. data/vendor/bundle/ruby/3.2.0/gems/diff-lcs-1.6.2/lib/diff/lcs/backports.rb +13 -0
  583. data/vendor/bundle/ruby/3.2.0/gems/diff-lcs-1.6.2/lib/diff/lcs/block.rb +37 -0
  584. data/vendor/bundle/ruby/3.2.0/gems/diff-lcs-1.6.2/lib/diff/lcs/callbacks.rb +327 -0
  585. data/vendor/bundle/ruby/3.2.0/gems/diff-lcs-1.6.2/lib/diff/lcs/change.rb +174 -0
  586. data/vendor/bundle/ruby/3.2.0/gems/diff-lcs-1.6.2/lib/diff/lcs/htmldiff.rb +160 -0
  587. data/vendor/bundle/ruby/3.2.0/gems/diff-lcs-1.6.2/lib/diff/lcs/hunk.rb +379 -0
  588. data/vendor/bundle/ruby/3.2.0/gems/diff-lcs-1.6.2/lib/diff/lcs/internals.rb +308 -0
  589. data/vendor/bundle/ruby/3.2.0/gems/diff-lcs-1.6.2/lib/diff/lcs/ldiff.rb +189 -0
  590. data/vendor/bundle/ruby/3.2.0/gems/diff-lcs-1.6.2/lib/diff/lcs/string.rb +5 -0
  591. data/vendor/bundle/ruby/3.2.0/gems/diff-lcs-1.6.2/lib/diff/lcs/version.rb +7 -0
  592. data/vendor/bundle/ruby/3.2.0/gems/diff-lcs-1.6.2/lib/diff/lcs.rb +742 -0
  593. data/vendor/bundle/ruby/3.2.0/gems/diff-lcs-1.6.2/lib/diff-lcs.rb +3 -0
  594. data/vendor/bundle/ruby/3.2.0/gems/diff-lcs-1.6.2/mise.toml +5 -0
  595. data/vendor/bundle/ruby/3.2.0/gems/diff-lcs-1.6.2/spec/change_spec.rb +89 -0
  596. data/vendor/bundle/ruby/3.2.0/gems/diff-lcs-1.6.2/spec/diff_spec.rb +51 -0
  597. data/vendor/bundle/ruby/3.2.0/gems/diff-lcs-1.6.2/spec/fixtures/123_x +2 -0
  598. data/vendor/bundle/ruby/3.2.0/gems/diff-lcs-1.6.2/spec/fixtures/456_x +2 -0
  599. data/vendor/bundle/ruby/3.2.0/gems/diff-lcs-1.6.2/spec/fixtures/aX +1 -0
  600. data/vendor/bundle/ruby/3.2.0/gems/diff-lcs-1.6.2/spec/fixtures/bXaX +1 -0
  601. data/vendor/bundle/ruby/3.2.0/gems/diff-lcs-1.6.2/spec/fixtures/ds1.csv +50 -0
  602. data/vendor/bundle/ruby/3.2.0/gems/diff-lcs-1.6.2/spec/fixtures/ds2.csv +51 -0
  603. data/vendor/bundle/ruby/3.2.0/gems/diff-lcs-1.6.2/spec/fixtures/empty +0 -0
  604. data/vendor/bundle/ruby/3.2.0/gems/diff-lcs-1.6.2/spec/fixtures/file1.bin +0 -0
  605. data/vendor/bundle/ruby/3.2.0/gems/diff-lcs-1.6.2/spec/fixtures/file2.bin +0 -0
  606. data/vendor/bundle/ruby/3.2.0/gems/diff-lcs-1.6.2/spec/fixtures/four_lines +4 -0
  607. data/vendor/bundle/ruby/3.2.0/gems/diff-lcs-1.6.2/spec/fixtures/four_lines_with_missing_new_line +4 -0
  608. data/vendor/bundle/ruby/3.2.0/gems/diff-lcs-1.6.2/spec/fixtures/ldiff/diff.missing_new_line1-e +1 -0
  609. data/vendor/bundle/ruby/3.2.0/gems/diff-lcs-1.6.2/spec/fixtures/ldiff/diff.missing_new_line1-f +1 -0
  610. data/vendor/bundle/ruby/3.2.0/gems/diff-lcs-1.6.2/spec/fixtures/ldiff/diff.missing_new_line2-e +1 -0
  611. data/vendor/bundle/ruby/3.2.0/gems/diff-lcs-1.6.2/spec/fixtures/ldiff/diff.missing_new_line2-f +1 -0
  612. data/vendor/bundle/ruby/3.2.0/gems/diff-lcs-1.6.2/spec/fixtures/ldiff/error.diff.chef-e +2 -0
  613. data/vendor/bundle/ruby/3.2.0/gems/diff-lcs-1.6.2/spec/fixtures/ldiff/error.diff.chef-f +2 -0
  614. data/vendor/bundle/ruby/3.2.0/gems/diff-lcs-1.6.2/spec/fixtures/ldiff/error.diff.missing_new_line1-e +1 -0
  615. data/vendor/bundle/ruby/3.2.0/gems/diff-lcs-1.6.2/spec/fixtures/ldiff/error.diff.missing_new_line1-f +1 -0
  616. data/vendor/bundle/ruby/3.2.0/gems/diff-lcs-1.6.2/spec/fixtures/ldiff/error.diff.missing_new_line2-e +1 -0
  617. data/vendor/bundle/ruby/3.2.0/gems/diff-lcs-1.6.2/spec/fixtures/ldiff/error.diff.missing_new_line2-f +1 -0
  618. data/vendor/bundle/ruby/3.2.0/gems/diff-lcs-1.6.2/spec/fixtures/ldiff/output.diff +4 -0
  619. data/vendor/bundle/ruby/3.2.0/gems/diff-lcs-1.6.2/spec/fixtures/ldiff/output.diff-c +7 -0
  620. data/vendor/bundle/ruby/3.2.0/gems/diff-lcs-1.6.2/spec/fixtures/ldiff/output.diff-e +3 -0
  621. data/vendor/bundle/ruby/3.2.0/gems/diff-lcs-1.6.2/spec/fixtures/ldiff/output.diff-f +3 -0
  622. data/vendor/bundle/ruby/3.2.0/gems/diff-lcs-1.6.2/spec/fixtures/ldiff/output.diff-u +5 -0
  623. data/vendor/bundle/ruby/3.2.0/gems/diff-lcs-1.6.2/spec/fixtures/ldiff/output.diff.bin1 +0 -0
  624. data/vendor/bundle/ruby/3.2.0/gems/diff-lcs-1.6.2/spec/fixtures/ldiff/output.diff.bin1-c +0 -0
  625. data/vendor/bundle/ruby/3.2.0/gems/diff-lcs-1.6.2/spec/fixtures/ldiff/output.diff.bin1-e +0 -0
  626. data/vendor/bundle/ruby/3.2.0/gems/diff-lcs-1.6.2/spec/fixtures/ldiff/output.diff.bin1-f +0 -0
  627. data/vendor/bundle/ruby/3.2.0/gems/diff-lcs-1.6.2/spec/fixtures/ldiff/output.diff.bin1-u +0 -0
  628. data/vendor/bundle/ruby/3.2.0/gems/diff-lcs-1.6.2/spec/fixtures/ldiff/output.diff.bin2 +1 -0
  629. data/vendor/bundle/ruby/3.2.0/gems/diff-lcs-1.6.2/spec/fixtures/ldiff/output.diff.bin2-c +1 -0
  630. data/vendor/bundle/ruby/3.2.0/gems/diff-lcs-1.6.2/spec/fixtures/ldiff/output.diff.bin2-e +1 -0
  631. data/vendor/bundle/ruby/3.2.0/gems/diff-lcs-1.6.2/spec/fixtures/ldiff/output.diff.bin2-f +1 -0
  632. data/vendor/bundle/ruby/3.2.0/gems/diff-lcs-1.6.2/spec/fixtures/ldiff/output.diff.bin2-u +1 -0
  633. data/vendor/bundle/ruby/3.2.0/gems/diff-lcs-1.6.2/spec/fixtures/ldiff/output.diff.chef +4 -0
  634. data/vendor/bundle/ruby/3.2.0/gems/diff-lcs-1.6.2/spec/fixtures/ldiff/output.diff.chef-c +15 -0
  635. data/vendor/bundle/ruby/3.2.0/gems/diff-lcs-1.6.2/spec/fixtures/ldiff/output.diff.chef-e +3 -0
  636. data/vendor/bundle/ruby/3.2.0/gems/diff-lcs-1.6.2/spec/fixtures/ldiff/output.diff.chef-f +3 -0
  637. data/vendor/bundle/ruby/3.2.0/gems/diff-lcs-1.6.2/spec/fixtures/ldiff/output.diff.chef-u +9 -0
  638. data/vendor/bundle/ruby/3.2.0/gems/diff-lcs-1.6.2/spec/fixtures/ldiff/output.diff.chef2 +7 -0
  639. data/vendor/bundle/ruby/3.2.0/gems/diff-lcs-1.6.2/spec/fixtures/ldiff/output.diff.chef2-c +20 -0
  640. data/vendor/bundle/ruby/3.2.0/gems/diff-lcs-1.6.2/spec/fixtures/ldiff/output.diff.chef2-d +7 -0
  641. data/vendor/bundle/ruby/3.2.0/gems/diff-lcs-1.6.2/spec/fixtures/ldiff/output.diff.chef2-e +7 -0
  642. data/vendor/bundle/ruby/3.2.0/gems/diff-lcs-1.6.2/spec/fixtures/ldiff/output.diff.chef2-f +7 -0
  643. data/vendor/bundle/ruby/3.2.0/gems/diff-lcs-1.6.2/spec/fixtures/ldiff/output.diff.chef2-u +16 -0
  644. data/vendor/bundle/ruby/3.2.0/gems/diff-lcs-1.6.2/spec/fixtures/ldiff/output.diff.empty.vs.four_lines +5 -0
  645. data/vendor/bundle/ruby/3.2.0/gems/diff-lcs-1.6.2/spec/fixtures/ldiff/output.diff.empty.vs.four_lines-c +9 -0
  646. data/vendor/bundle/ruby/3.2.0/gems/diff-lcs-1.6.2/spec/fixtures/ldiff/output.diff.empty.vs.four_lines-e +6 -0
  647. data/vendor/bundle/ruby/3.2.0/gems/diff-lcs-1.6.2/spec/fixtures/ldiff/output.diff.empty.vs.four_lines-f +6 -0
  648. data/vendor/bundle/ruby/3.2.0/gems/diff-lcs-1.6.2/spec/fixtures/ldiff/output.diff.empty.vs.four_lines-u +7 -0
  649. data/vendor/bundle/ruby/3.2.0/gems/diff-lcs-1.6.2/spec/fixtures/ldiff/output.diff.four_lines.vs.empty +5 -0
  650. data/vendor/bundle/ruby/3.2.0/gems/diff-lcs-1.6.2/spec/fixtures/ldiff/output.diff.four_lines.vs.empty-c +9 -0
  651. data/vendor/bundle/ruby/3.2.0/gems/diff-lcs-1.6.2/spec/fixtures/ldiff/output.diff.four_lines.vs.empty-e +1 -0
  652. data/vendor/bundle/ruby/3.2.0/gems/diff-lcs-1.6.2/spec/fixtures/ldiff/output.diff.four_lines.vs.empty-f +1 -0
  653. data/vendor/bundle/ruby/3.2.0/gems/diff-lcs-1.6.2/spec/fixtures/ldiff/output.diff.four_lines.vs.empty-u +7 -0
  654. data/vendor/bundle/ruby/3.2.0/gems/diff-lcs-1.6.2/spec/fixtures/ldiff/output.diff.issue95_trailing_context +4 -0
  655. data/vendor/bundle/ruby/3.2.0/gems/diff-lcs-1.6.2/spec/fixtures/ldiff/output.diff.issue95_trailing_context-c +9 -0
  656. data/vendor/bundle/ruby/3.2.0/gems/diff-lcs-1.6.2/spec/fixtures/ldiff/output.diff.issue95_trailing_context-e +3 -0
  657. data/vendor/bundle/ruby/3.2.0/gems/diff-lcs-1.6.2/spec/fixtures/ldiff/output.diff.issue95_trailing_context-f +3 -0
  658. data/vendor/bundle/ruby/3.2.0/gems/diff-lcs-1.6.2/spec/fixtures/ldiff/output.diff.issue95_trailing_context-u +6 -0
  659. data/vendor/bundle/ruby/3.2.0/gems/diff-lcs-1.6.2/spec/fixtures/ldiff/output.diff.missing_new_line1 +5 -0
  660. data/vendor/bundle/ruby/3.2.0/gems/diff-lcs-1.6.2/spec/fixtures/ldiff/output.diff.missing_new_line1-c +14 -0
  661. data/vendor/bundle/ruby/3.2.0/gems/diff-lcs-1.6.2/spec/fixtures/ldiff/output.diff.missing_new_line1-e +0 -0
  662. data/vendor/bundle/ruby/3.2.0/gems/diff-lcs-1.6.2/spec/fixtures/ldiff/output.diff.missing_new_line1-f +0 -0
  663. data/vendor/bundle/ruby/3.2.0/gems/diff-lcs-1.6.2/spec/fixtures/ldiff/output.diff.missing_new_line1-u +9 -0
  664. data/vendor/bundle/ruby/3.2.0/gems/diff-lcs-1.6.2/spec/fixtures/ldiff/output.diff.missing_new_line2 +5 -0
  665. data/vendor/bundle/ruby/3.2.0/gems/diff-lcs-1.6.2/spec/fixtures/ldiff/output.diff.missing_new_line2-c +14 -0
  666. data/vendor/bundle/ruby/3.2.0/gems/diff-lcs-1.6.2/spec/fixtures/ldiff/output.diff.missing_new_line2-e +0 -0
  667. data/vendor/bundle/ruby/3.2.0/gems/diff-lcs-1.6.2/spec/fixtures/ldiff/output.diff.missing_new_line2-f +0 -0
  668. data/vendor/bundle/ruby/3.2.0/gems/diff-lcs-1.6.2/spec/fixtures/ldiff/output.diff.missing_new_line2-u +9 -0
  669. data/vendor/bundle/ruby/3.2.0/gems/diff-lcs-1.6.2/spec/fixtures/new-chef +4 -0
  670. data/vendor/bundle/ruby/3.2.0/gems/diff-lcs-1.6.2/spec/fixtures/new-chef2 +17 -0
  671. data/vendor/bundle/ruby/3.2.0/gems/diff-lcs-1.6.2/spec/fixtures/old-chef +4 -0
  672. data/vendor/bundle/ruby/3.2.0/gems/diff-lcs-1.6.2/spec/fixtures/old-chef2 +14 -0
  673. data/vendor/bundle/ruby/3.2.0/gems/diff-lcs-1.6.2/spec/hunk_spec.rb +83 -0
  674. data/vendor/bundle/ruby/3.2.0/gems/diff-lcs-1.6.2/spec/issues_spec.rb +160 -0
  675. data/vendor/bundle/ruby/3.2.0/gems/diff-lcs-1.6.2/spec/lcs_spec.rb +56 -0
  676. data/vendor/bundle/ruby/3.2.0/gems/diff-lcs-1.6.2/spec/ldiff_spec.rb +100 -0
  677. data/vendor/bundle/ruby/3.2.0/gems/diff-lcs-1.6.2/spec/patch_spec.rb +416 -0
  678. data/vendor/bundle/ruby/3.2.0/gems/diff-lcs-1.6.2/spec/sdiff_spec.rb +216 -0
  679. data/vendor/bundle/ruby/3.2.0/gems/diff-lcs-1.6.2/spec/spec_helper.rb +376 -0
  680. data/vendor/bundle/ruby/3.2.0/gems/diff-lcs-1.6.2/spec/traverse_balanced_spec.rb +312 -0
  681. data/vendor/bundle/ruby/3.2.0/gems/diff-lcs-1.6.2/spec/traverse_sequences_spec.rb +137 -0
  682. data/vendor/bundle/ruby/3.2.0/gems/faraday-2.14.3/CHANGELOG.md +574 -0
  683. data/vendor/bundle/ruby/3.2.0/gems/faraday-2.14.3/LICENSE.md +20 -0
  684. data/vendor/bundle/ruby/3.2.0/gems/faraday-2.14.3/README.md +67 -0
  685. data/vendor/bundle/ruby/3.2.0/gems/faraday-2.14.3/Rakefile +12 -0
  686. data/vendor/bundle/ruby/3.2.0/gems/faraday-2.14.3/examples/client_spec.rb +119 -0
  687. data/vendor/bundle/ruby/3.2.0/gems/faraday-2.14.3/examples/client_test.rb +144 -0
  688. data/vendor/bundle/ruby/3.2.0/gems/faraday-2.14.3/lib/faraday/adapter/test.rb +319 -0
  689. data/vendor/bundle/ruby/3.2.0/gems/faraday-2.14.3/lib/faraday/adapter.rb +102 -0
  690. data/vendor/bundle/ruby/3.2.0/gems/faraday-2.14.3/lib/faraday/adapter_registry.rb +30 -0
  691. data/vendor/bundle/ruby/3.2.0/gems/faraday-2.14.3/lib/faraday/connection.rb +567 -0
  692. data/vendor/bundle/ruby/3.2.0/gems/faraday-2.14.3/lib/faraday/encoders/flat_params_encoder.rb +106 -0
  693. data/vendor/bundle/ruby/3.2.0/gems/faraday-2.14.3/lib/faraday/encoders/nested_params_encoder.rb +193 -0
  694. data/vendor/bundle/ruby/3.2.0/gems/faraday-2.14.3/lib/faraday/error.rb +202 -0
  695. data/vendor/bundle/ruby/3.2.0/gems/faraday-2.14.3/lib/faraday/logging/formatter.rb +118 -0
  696. data/vendor/bundle/ruby/3.2.0/gems/faraday-2.14.3/lib/faraday/methods.rb +6 -0
  697. data/vendor/bundle/ruby/3.2.0/gems/faraday-2.14.3/lib/faraday/middleware.rb +72 -0
  698. data/vendor/bundle/ruby/3.2.0/gems/faraday-2.14.3/lib/faraday/middleware_registry.rb +83 -0
  699. data/vendor/bundle/ruby/3.2.0/gems/faraday-2.14.3/lib/faraday/options/connection_options.rb +23 -0
  700. data/vendor/bundle/ruby/3.2.0/gems/faraday-2.14.3/lib/faraday/options/env.rb +204 -0
  701. data/vendor/bundle/ruby/3.2.0/gems/faraday-2.14.3/lib/faraday/options/proxy_options.rb +39 -0
  702. data/vendor/bundle/ruby/3.2.0/gems/faraday-2.14.3/lib/faraday/options/request_options.rb +23 -0
  703. data/vendor/bundle/ruby/3.2.0/gems/faraday-2.14.3/lib/faraday/options/ssl_options.rb +76 -0
  704. data/vendor/bundle/ruby/3.2.0/gems/faraday-2.14.3/lib/faraday/options.rb +219 -0
  705. data/vendor/bundle/ruby/3.2.0/gems/faraday-2.14.3/lib/faraday/parameters.rb +5 -0
  706. data/vendor/bundle/ruby/3.2.0/gems/faraday-2.14.3/lib/faraday/rack_builder.rb +248 -0
  707. data/vendor/bundle/ruby/3.2.0/gems/faraday-2.14.3/lib/faraday/request/authorization.rb +54 -0
  708. data/vendor/bundle/ruby/3.2.0/gems/faraday-2.14.3/lib/faraday/request/instrumentation.rb +58 -0
  709. data/vendor/bundle/ruby/3.2.0/gems/faraday-2.14.3/lib/faraday/request/json.rb +70 -0
  710. data/vendor/bundle/ruby/3.2.0/gems/faraday-2.14.3/lib/faraday/request/url_encoded.rb +60 -0
  711. data/vendor/bundle/ruby/3.2.0/gems/faraday-2.14.3/lib/faraday/request.rb +139 -0
  712. data/vendor/bundle/ruby/3.2.0/gems/faraday-2.14.3/lib/faraday/response/json.rb +74 -0
  713. data/vendor/bundle/ruby/3.2.0/gems/faraday-2.14.3/lib/faraday/response/logger.rb +39 -0
  714. data/vendor/bundle/ruby/3.2.0/gems/faraday-2.14.3/lib/faraday/response/raise_error.rb +83 -0
  715. data/vendor/bundle/ruby/3.2.0/gems/faraday-2.14.3/lib/faraday/response.rb +95 -0
  716. data/vendor/bundle/ruby/3.2.0/gems/faraday-2.14.3/lib/faraday/utils/headers.rb +150 -0
  717. data/vendor/bundle/ruby/3.2.0/gems/faraday-2.14.3/lib/faraday/utils/params_hash.rb +61 -0
  718. data/vendor/bundle/ruby/3.2.0/gems/faraday-2.14.3/lib/faraday/utils.rb +121 -0
  719. data/vendor/bundle/ruby/3.2.0/gems/faraday-2.14.3/lib/faraday/version.rb +5 -0
  720. data/vendor/bundle/ruby/3.2.0/gems/faraday-2.14.3/lib/faraday.rb +158 -0
  721. data/vendor/bundle/ruby/3.2.0/gems/faraday-2.14.3/spec/external_adapters/faraday_specs_setup.rb +14 -0
  722. data/vendor/bundle/ruby/3.2.0/gems/faraday-2.14.3/spec/faraday/adapter/test_spec.rb +460 -0
  723. data/vendor/bundle/ruby/3.2.0/gems/faraday-2.14.3/spec/faraday/adapter_registry_spec.rb +28 -0
  724. data/vendor/bundle/ruby/3.2.0/gems/faraday-2.14.3/spec/faraday/adapter_spec.rb +55 -0
  725. data/vendor/bundle/ruby/3.2.0/gems/faraday-2.14.3/spec/faraday/connection_spec.rb +860 -0
  726. data/vendor/bundle/ruby/3.2.0/gems/faraday-2.14.3/spec/faraday/error_spec.rb +175 -0
  727. data/vendor/bundle/ruby/3.2.0/gems/faraday-2.14.3/spec/faraday/middleware_registry_spec.rb +31 -0
  728. data/vendor/bundle/ruby/3.2.0/gems/faraday-2.14.3/spec/faraday/middleware_spec.rb +213 -0
  729. data/vendor/bundle/ruby/3.2.0/gems/faraday-2.14.3/spec/faraday/options/env_spec.rb +76 -0
  730. data/vendor/bundle/ruby/3.2.0/gems/faraday-2.14.3/spec/faraday/options/options_spec.rb +297 -0
  731. data/vendor/bundle/ruby/3.2.0/gems/faraday-2.14.3/spec/faraday/options/proxy_options_spec.rb +79 -0
  732. data/vendor/bundle/ruby/3.2.0/gems/faraday-2.14.3/spec/faraday/options/request_options_spec.rb +19 -0
  733. data/vendor/bundle/ruby/3.2.0/gems/faraday-2.14.3/spec/faraday/params_encoders/flat_spec.rb +42 -0
  734. data/vendor/bundle/ruby/3.2.0/gems/faraday-2.14.3/spec/faraday/params_encoders/nested_spec.rb +179 -0
  735. data/vendor/bundle/ruby/3.2.0/gems/faraday-2.14.3/spec/faraday/rack_builder_spec.rb +317 -0
  736. data/vendor/bundle/ruby/3.2.0/gems/faraday-2.14.3/spec/faraday/request/authorization_spec.rb +118 -0
  737. data/vendor/bundle/ruby/3.2.0/gems/faraday-2.14.3/spec/faraday/request/instrumentation_spec.rb +74 -0
  738. data/vendor/bundle/ruby/3.2.0/gems/faraday-2.14.3/spec/faraday/request/json_spec.rb +199 -0
  739. data/vendor/bundle/ruby/3.2.0/gems/faraday-2.14.3/spec/faraday/request/url_encoded_spec.rb +93 -0
  740. data/vendor/bundle/ruby/3.2.0/gems/faraday-2.14.3/spec/faraday/request_spec.rb +119 -0
  741. data/vendor/bundle/ruby/3.2.0/gems/faraday-2.14.3/spec/faraday/response/json_spec.rb +206 -0
  742. data/vendor/bundle/ruby/3.2.0/gems/faraday-2.14.3/spec/faraday/response/logger_spec.rb +299 -0
  743. data/vendor/bundle/ruby/3.2.0/gems/faraday-2.14.3/spec/faraday/response/raise_error_spec.rb +286 -0
  744. data/vendor/bundle/ruby/3.2.0/gems/faraday-2.14.3/spec/faraday/response_spec.rb +84 -0
  745. data/vendor/bundle/ruby/3.2.0/gems/faraday-2.14.3/spec/faraday/utils/headers_spec.rb +109 -0
  746. data/vendor/bundle/ruby/3.2.0/gems/faraday-2.14.3/spec/faraday/utils_spec.rb +120 -0
  747. data/vendor/bundle/ruby/3.2.0/gems/faraday-2.14.3/spec/faraday_spec.rb +43 -0
  748. data/vendor/bundle/ruby/3.2.0/gems/faraday-2.14.3/spec/spec_helper.rb +133 -0
  749. data/vendor/bundle/ruby/3.2.0/gems/faraday-2.14.3/spec/support/disabling_stub.rb +14 -0
  750. data/vendor/bundle/ruby/3.2.0/gems/faraday-2.14.3/spec/support/fake_safe_buffer.rb +15 -0
  751. data/vendor/bundle/ruby/3.2.0/gems/faraday-2.14.3/spec/support/faraday_middleware_subclasses.rb +18 -0
  752. data/vendor/bundle/ruby/3.2.0/gems/faraday-2.14.3/spec/support/helper_methods.rb +96 -0
  753. data/vendor/bundle/ruby/3.2.0/gems/faraday-2.14.3/spec/support/shared_examples/adapter.rb +105 -0
  754. data/vendor/bundle/ruby/3.2.0/gems/faraday-2.14.3/spec/support/shared_examples/params_encoder.rb +18 -0
  755. data/vendor/bundle/ruby/3.2.0/gems/faraday-2.14.3/spec/support/shared_examples/request_method.rb +263 -0
  756. data/vendor/bundle/ruby/3.2.0/gems/faraday-2.14.3/spec/support/streaming_response_checker.rb +35 -0
  757. data/vendor/bundle/ruby/3.2.0/gems/faraday-multipart-1.2.0/CHANGELOG.md +54 -0
  758. data/vendor/bundle/ruby/3.2.0/gems/faraday-multipart-1.2.0/LICENSE.md +21 -0
  759. data/vendor/bundle/ruby/3.2.0/gems/faraday-multipart-1.2.0/README.md +170 -0
  760. data/vendor/bundle/ruby/3.2.0/gems/faraday-multipart-1.2.0/lib/faraday/multipart/file_part.rb +130 -0
  761. data/vendor/bundle/ruby/3.2.0/gems/faraday-multipart-1.2.0/lib/faraday/multipart/middleware.rb +134 -0
  762. data/vendor/bundle/ruby/3.2.0/gems/faraday-multipart-1.2.0/lib/faraday/multipart/param_part.rb +55 -0
  763. data/vendor/bundle/ruby/3.2.0/gems/faraday-multipart-1.2.0/lib/faraday/multipart/version.rb +16 -0
  764. data/vendor/bundle/ruby/3.2.0/gems/faraday-multipart-1.2.0/lib/faraday/multipart.rb +26 -0
  765. data/vendor/bundle/ruby/3.2.0/gems/faraday-net_http-3.4.4/LICENSE.md +21 -0
  766. data/vendor/bundle/ruby/3.2.0/gems/faraday-net_http-3.4.4/README.md +57 -0
  767. data/vendor/bundle/ruby/3.2.0/gems/faraday-net_http-3.4.4/lib/faraday/adapter/net_http.rb +205 -0
  768. data/vendor/bundle/ruby/3.2.0/gems/faraday-net_http-3.4.4/lib/faraday/net_http/version.rb +7 -0
  769. data/vendor/bundle/ruby/3.2.0/gems/faraday-net_http-3.4.4/lib/faraday/net_http.rb +10 -0
  770. data/vendor/bundle/ruby/3.2.0/gems/io-console-0.8.2/.document +5 -0
  771. data/vendor/bundle/ruby/3.2.0/gems/io-console-0.8.2/BSDL +22 -0
  772. data/vendor/bundle/ruby/3.2.0/gems/io-console-0.8.2/COPYING +56 -0
  773. data/vendor/bundle/ruby/3.2.0/gems/io-console-0.8.2/README.md +46 -0
  774. data/vendor/bundle/ruby/3.2.0/gems/io-console-0.8.2/ext/io/console/Makefile +271 -0
  775. data/vendor/bundle/ruby/3.2.0/gems/io-console-0.8.2/ext/io/console/console.c +2022 -0
  776. data/vendor/bundle/ruby/3.2.0/gems/io-console-0.8.2/ext/io/console/extconf.rb +61 -0
  777. data/vendor/bundle/ruby/3.2.0/gems/io-console-0.8.2/ext/io/console/win32_vk.inc +1390 -0
  778. data/vendor/bundle/ruby/3.2.0/gems/io-console-0.8.2/lib/io/console/size.rb +23 -0
  779. data/vendor/bundle/ruby/3.2.0/gems/io-console-0.8.2/lib/io/console.so +0 -0
  780. data/vendor/bundle/ruby/3.2.0/gems/jaro_winkler-1.5.6/LICENSE.txt +22 -0
  781. data/vendor/bundle/ruby/3.2.0/gems/jaro_winkler-1.5.6/ext/jaro_winkler/Makefile +269 -0
  782. data/vendor/bundle/ruby/3.2.0/gems/jaro_winkler-1.5.6/ext/jaro_winkler/adj_matrix.c +97 -0
  783. data/vendor/bundle/ruby/3.2.0/gems/jaro_winkler-1.5.6/ext/jaro_winkler/adj_matrix.h +22 -0
  784. data/vendor/bundle/ruby/3.2.0/gems/jaro_winkler-1.5.6/ext/jaro_winkler/codepoints.c +61 -0
  785. data/vendor/bundle/ruby/3.2.0/gems/jaro_winkler-1.5.6/ext/jaro_winkler/codepoints.h +13 -0
  786. data/vendor/bundle/ruby/3.2.0/gems/jaro_winkler-1.5.6/ext/jaro_winkler/extconf.rb +5 -0
  787. data/vendor/bundle/ruby/3.2.0/gems/jaro_winkler-1.5.6/ext/jaro_winkler/jaro.c +121 -0
  788. data/vendor/bundle/ruby/3.2.0/gems/jaro_winkler-1.5.6/ext/jaro_winkler/jaro.h +17 -0
  789. data/vendor/bundle/ruby/3.2.0/gems/jaro_winkler-1.5.6/ext/jaro_winkler/jaro_winkler.c +77 -0
  790. data/vendor/bundle/ruby/3.2.0/gems/jaro_winkler-1.5.6/lib/jaro_winkler/adjusting_table.rb +14 -0
  791. data/vendor/bundle/ruby/3.2.0/gems/jaro_winkler-1.5.6/lib/jaro_winkler/jaro_winkler_ext.so +0 -0
  792. data/vendor/bundle/ruby/3.2.0/gems/jaro_winkler-1.5.6/lib/jaro_winkler/jaro_winkler_pure.rb +135 -0
  793. data/vendor/bundle/ruby/3.2.0/gems/jaro_winkler-1.5.6/lib/jaro_winkler/version.rb +5 -0
  794. data/vendor/bundle/ruby/3.2.0/gems/jaro_winkler-1.5.6/lib/jaro_winkler.rb +15 -0
  795. data/vendor/bundle/ruby/3.2.0/gems/json-2.20.0/BSDL +22 -0
  796. data/vendor/bundle/ruby/3.2.0/gems/json-2.20.0/CHANGES.md +798 -0
  797. data/vendor/bundle/ruby/3.2.0/gems/json-2.20.0/COPYING +56 -0
  798. data/vendor/bundle/ruby/3.2.0/gems/json-2.20.0/LEGAL +20 -0
  799. data/vendor/bundle/ruby/3.2.0/gems/json-2.20.0/README.md +308 -0
  800. data/vendor/bundle/ruby/3.2.0/gems/json-2.20.0/ext/json/ext/fbuffer/fbuffer.h +259 -0
  801. data/vendor/bundle/ruby/3.2.0/gems/json-2.20.0/ext/json/ext/generator/Makefile +269 -0
  802. data/vendor/bundle/ruby/3.2.0/gems/json-2.20.0/ext/json/ext/generator/extconf.rb +19 -0
  803. data/vendor/bundle/ruby/3.2.0/gems/json-2.20.0/ext/json/ext/generator/generator.c +1997 -0
  804. data/vendor/bundle/ruby/3.2.0/gems/json-2.20.0/ext/json/ext/json.h +179 -0
  805. data/vendor/bundle/ruby/3.2.0/gems/json-2.20.0/ext/json/ext/parser/Makefile +269 -0
  806. data/vendor/bundle/ruby/3.2.0/gems/json-2.20.0/ext/json/ext/parser/extconf.rb +53 -0
  807. data/vendor/bundle/ruby/3.2.0/gems/json-2.20.0/ext/json/ext/parser/parser.c +2827 -0
  808. data/vendor/bundle/ruby/3.2.0/gems/json-2.20.0/ext/json/ext/simd/conf.rb +24 -0
  809. data/vendor/bundle/ruby/3.2.0/gems/json-2.20.0/ext/json/ext/simd/simd.h +208 -0
  810. data/vendor/bundle/ruby/3.2.0/gems/json-2.20.0/ext/json/ext/vendor/fast_float_parser.h +814 -0
  811. data/vendor/bundle/ruby/3.2.0/gems/json-2.20.0/ext/json/ext/vendor/fpconv.c +480 -0
  812. data/vendor/bundle/ruby/3.2.0/gems/json-2.20.0/ext/json/ext/vendor/jeaiii-ltoa.h +267 -0
  813. data/vendor/bundle/ruby/3.2.0/gems/json-2.20.0/json.gemspec +62 -0
  814. data/vendor/bundle/ruby/3.2.0/gems/json-2.20.0/lib/json/add/bigdecimal.rb +58 -0
  815. data/vendor/bundle/ruby/3.2.0/gems/json-2.20.0/lib/json/add/complex.rb +51 -0
  816. data/vendor/bundle/ruby/3.2.0/gems/json-2.20.0/lib/json/add/core.rb +13 -0
  817. data/vendor/bundle/ruby/3.2.0/gems/json-2.20.0/lib/json/add/date.rb +54 -0
  818. data/vendor/bundle/ruby/3.2.0/gems/json-2.20.0/lib/json/add/date_time.rb +67 -0
  819. data/vendor/bundle/ruby/3.2.0/gems/json-2.20.0/lib/json/add/exception.rb +49 -0
  820. data/vendor/bundle/ruby/3.2.0/gems/json-2.20.0/lib/json/add/ostruct.rb +54 -0
  821. data/vendor/bundle/ruby/3.2.0/gems/json-2.20.0/lib/json/add/range.rb +54 -0
  822. data/vendor/bundle/ruby/3.2.0/gems/json-2.20.0/lib/json/add/rational.rb +49 -0
  823. data/vendor/bundle/ruby/3.2.0/gems/json-2.20.0/lib/json/add/regexp.rb +48 -0
  824. data/vendor/bundle/ruby/3.2.0/gems/json-2.20.0/lib/json/add/set.rb +48 -0
  825. data/vendor/bundle/ruby/3.2.0/gems/json-2.20.0/lib/json/add/string.rb +35 -0
  826. data/vendor/bundle/ruby/3.2.0/gems/json-2.20.0/lib/json/add/struct.rb +52 -0
  827. data/vendor/bundle/ruby/3.2.0/gems/json-2.20.0/lib/json/add/symbol.rb +52 -0
  828. data/vendor/bundle/ruby/3.2.0/gems/json-2.20.0/lib/json/add/time.rb +52 -0
  829. data/vendor/bundle/ruby/3.2.0/gems/json-2.20.0/lib/json/common.rb +1173 -0
  830. data/vendor/bundle/ruby/3.2.0/gems/json-2.20.0/lib/json/ext/generator/state.rb +103 -0
  831. data/vendor/bundle/ruby/3.2.0/gems/json-2.20.0/lib/json/ext/generator.so +0 -0
  832. data/vendor/bundle/ruby/3.2.0/gems/json-2.20.0/lib/json/ext/parser.so +0 -0
  833. data/vendor/bundle/ruby/3.2.0/gems/json-2.20.0/lib/json/ext.rb +45 -0
  834. data/vendor/bundle/ruby/3.2.0/gems/json-2.20.0/lib/json/generic_object.rb +67 -0
  835. data/vendor/bundle/ruby/3.2.0/gems/json-2.20.0/lib/json/truffle_ruby/generator.rb +755 -0
  836. data/vendor/bundle/ruby/3.2.0/gems/json-2.20.0/lib/json/version.rb +5 -0
  837. data/vendor/bundle/ruby/3.2.0/gems/json-2.20.0/lib/json.rb +689 -0
  838. data/vendor/bundle/ruby/3.2.0/gems/logger-1.7.0/.document +4 -0
  839. data/vendor/bundle/ruby/3.2.0/gems/logger-1.7.0/.rdoc_options +3 -0
  840. data/vendor/bundle/ruby/3.2.0/gems/logger-1.7.0/BSDL +22 -0
  841. data/vendor/bundle/ruby/3.2.0/gems/logger-1.7.0/COPYING +56 -0
  842. data/vendor/bundle/ruby/3.2.0/gems/logger-1.7.0/README.md +104 -0
  843. data/vendor/bundle/ruby/3.2.0/gems/logger-1.7.0/lib/logger/errors.rb +9 -0
  844. data/vendor/bundle/ruby/3.2.0/gems/logger-1.7.0/lib/logger/formatter.rb +36 -0
  845. data/vendor/bundle/ruby/3.2.0/gems/logger-1.7.0/lib/logger/log_device.rb +265 -0
  846. data/vendor/bundle/ruby/3.2.0/gems/logger-1.7.0/lib/logger/period.rb +47 -0
  847. data/vendor/bundle/ruby/3.2.0/gems/logger-1.7.0/lib/logger/severity.rb +38 -0
  848. data/vendor/bundle/ruby/3.2.0/gems/logger-1.7.0/lib/logger/version.rb +5 -0
  849. data/vendor/bundle/ruby/3.2.0/gems/logger-1.7.0/lib/logger.rb +789 -0
  850. data/vendor/bundle/ruby/3.2.0/gems/method_source-1.1.0/.gemtest +0 -0
  851. data/vendor/bundle/ruby/3.2.0/gems/method_source-1.1.0/.yardopts +1 -0
  852. data/vendor/bundle/ruby/3.2.0/gems/method_source-1.1.0/CHANGELOG.md +15 -0
  853. data/vendor/bundle/ruby/3.2.0/gems/method_source-1.1.0/Gemfile +6 -0
  854. data/vendor/bundle/ruby/3.2.0/gems/method_source-1.1.0/LICENSE +22 -0
  855. data/vendor/bundle/ruby/3.2.0/gems/method_source-1.1.0/README.markdown +101 -0
  856. data/vendor/bundle/ruby/3.2.0/gems/method_source-1.1.0/Rakefile +81 -0
  857. data/vendor/bundle/ruby/3.2.0/gems/method_source-1.1.0/lib/method_source/code_helpers.rb +154 -0
  858. data/vendor/bundle/ruby/3.2.0/gems/method_source-1.1.0/lib/method_source/source_location.rb +138 -0
  859. data/vendor/bundle/ruby/3.2.0/gems/method_source-1.1.0/lib/method_source/version.rb +3 -0
  860. data/vendor/bundle/ruby/3.2.0/gems/method_source-1.1.0/lib/method_source.rb +177 -0
  861. data/vendor/bundle/ruby/3.2.0/gems/method_source-1.1.0/method_source.gemspec +19 -0
  862. data/vendor/bundle/ruby/3.2.0/gems/method_source-1.1.0/spec/method_source/code_helpers_spec.rb +43 -0
  863. data/vendor/bundle/ruby/3.2.0/gems/method_source-1.1.0/spec/method_source_spec.rb +157 -0
  864. data/vendor/bundle/ruby/3.2.0/gems/method_source-1.1.0/spec/spec_helper.rb +107 -0
  865. data/vendor/bundle/ruby/3.2.0/gems/multipart-post-2.4.1/changelog.md +14 -0
  866. data/vendor/bundle/ruby/3.2.0/gems/multipart-post-2.4.1/lib/composite_io.rb +17 -0
  867. data/vendor/bundle/ruby/3.2.0/gems/multipart-post-2.4.1/lib/multipart/post/composite_read_io.rb +91 -0
  868. data/vendor/bundle/ruby/3.2.0/gems/multipart-post-2.4.1/lib/multipart/post/multipartable.rb +70 -0
  869. data/vendor/bundle/ruby/3.2.0/gems/multipart-post-2.4.1/lib/multipart/post/parts.rb +148 -0
  870. data/vendor/bundle/ruby/3.2.0/gems/multipart-post-2.4.1/lib/multipart/post/upload_io.rb +64 -0
  871. data/vendor/bundle/ruby/3.2.0/gems/multipart-post-2.4.1/lib/multipart/post/version.rb +11 -0
  872. data/vendor/bundle/ruby/3.2.0/gems/multipart-post-2.4.1/lib/multipart/post.rb +8 -0
  873. data/vendor/bundle/ruby/3.2.0/gems/multipart-post-2.4.1/lib/multipart_post.rb +11 -0
  874. data/vendor/bundle/ruby/3.2.0/gems/multipart-post-2.4.1/lib/multipartable.rb +19 -0
  875. data/vendor/bundle/ruby/3.2.0/gems/multipart-post-2.4.1/lib/net/http/post/multipart.rb +28 -0
  876. data/vendor/bundle/ruby/3.2.0/gems/multipart-post-2.4.1/lib/parts.rb +25 -0
  877. data/vendor/bundle/ruby/3.2.0/gems/multipart-post-2.4.1/license.md +58 -0
  878. data/vendor/bundle/ruby/3.2.0/gems/multipart-post-2.4.1/readme.md +170 -0
  879. data/vendor/bundle/ruby/3.2.0/gems/net-http-0.9.1/.document +5 -0
  880. data/vendor/bundle/ruby/3.2.0/gems/net-http-0.9.1/BSDL +22 -0
  881. data/vendor/bundle/ruby/3.2.0/gems/net-http-0.9.1/COPYING +56 -0
  882. data/vendor/bundle/ruby/3.2.0/gems/net-http-0.9.1/README.md +93 -0
  883. data/vendor/bundle/ruby/3.2.0/gems/net-http-0.9.1/doc/net-http/examples.rdoc +31 -0
  884. data/vendor/bundle/ruby/3.2.0/gems/net-http-0.9.1/doc/net-http/included_getters.rdoc +3 -0
  885. data/vendor/bundle/ruby/3.2.0/gems/net-http-0.9.1/lib/net/http/exceptions.rb +35 -0
  886. data/vendor/bundle/ruby/3.2.0/gems/net-http-0.9.1/lib/net/http/generic_request.rb +429 -0
  887. data/vendor/bundle/ruby/3.2.0/gems/net-http-0.9.1/lib/net/http/header.rb +985 -0
  888. data/vendor/bundle/ruby/3.2.0/gems/net-http-0.9.1/lib/net/http/proxy_delta.rb +17 -0
  889. data/vendor/bundle/ruby/3.2.0/gems/net-http-0.9.1/lib/net/http/request.rb +88 -0
  890. data/vendor/bundle/ruby/3.2.0/gems/net-http-0.9.1/lib/net/http/requests.rb +444 -0
  891. data/vendor/bundle/ruby/3.2.0/gems/net-http-0.9.1/lib/net/http/response.rb +739 -0
  892. data/vendor/bundle/ruby/3.2.0/gems/net-http-0.9.1/lib/net/http/responses.rb +1242 -0
  893. data/vendor/bundle/ruby/3.2.0/gems/net-http-0.9.1/lib/net/http/status.rb +84 -0
  894. data/vendor/bundle/ruby/3.2.0/gems/net-http-0.9.1/lib/net/http.rb +2608 -0
  895. data/vendor/bundle/ruby/3.2.0/gems/net-http-0.9.1/lib/net/https.rb +23 -0
  896. data/vendor/bundle/ruby/3.2.0/gems/parallel-1.28.0/MIT-LICENSE.txt +20 -0
  897. data/vendor/bundle/ruby/3.2.0/gems/parallel-1.28.0/lib/parallel/version.rb +4 -0
  898. data/vendor/bundle/ruby/3.2.0/gems/parallel-1.28.0/lib/parallel.rb +719 -0
  899. data/vendor/bundle/ruby/3.2.0/gems/parser-3.3.11.1/LICENSE.txt +26 -0
  900. data/vendor/bundle/ruby/3.2.0/gems/parser-3.3.11.1/bin/ruby-parse +7 -0
  901. data/vendor/bundle/ruby/3.2.0/gems/parser-3.3.11.1/bin/ruby-rewrite +7 -0
  902. data/vendor/bundle/ruby/3.2.0/gems/parser-3.3.11.1/lib/gauntlet_parser.rb +123 -0
  903. data/vendor/bundle/ruby/3.2.0/gems/parser-3.3.11.1/lib/parser/all.rb +17 -0
  904. data/vendor/bundle/ruby/3.2.0/gems/parser-3.3.11.1/lib/parser/ast/node.rb +40 -0
  905. data/vendor/bundle/ruby/3.2.0/gems/parser-3.3.11.1/lib/parser/ast/processor.rb +293 -0
  906. data/vendor/bundle/ruby/3.2.0/gems/parser-3.3.11.1/lib/parser/base.rb +294 -0
  907. data/vendor/bundle/ruby/3.2.0/gems/parser-3.3.11.1/lib/parser/builders/default.rb +2351 -0
  908. data/vendor/bundle/ruby/3.2.0/gems/parser-3.3.11.1/lib/parser/clobbering_error.rb +13 -0
  909. data/vendor/bundle/ruby/3.2.0/gems/parser-3.3.11.1/lib/parser/color.rb +32 -0
  910. data/vendor/bundle/ruby/3.2.0/gems/parser-3.3.11.1/lib/parser/context.rb +51 -0
  911. data/vendor/bundle/ruby/3.2.0/gems/parser-3.3.11.1/lib/parser/current.rb +146 -0
  912. data/vendor/bundle/ruby/3.2.0/gems/parser-3.3.11.1/lib/parser/current_arg_stack.rb +46 -0
  913. data/vendor/bundle/ruby/3.2.0/gems/parser-3.3.11.1/lib/parser/deprecation.rb +13 -0
  914. data/vendor/bundle/ruby/3.2.0/gems/parser-3.3.11.1/lib/parser/diagnostic/engine.rb +104 -0
  915. data/vendor/bundle/ruby/3.2.0/gems/parser-3.3.11.1/lib/parser/diagnostic.rb +163 -0
  916. data/vendor/bundle/ruby/3.2.0/gems/parser-3.3.11.1/lib/parser/lexer/dedenter.rb +88 -0
  917. data/vendor/bundle/ruby/3.2.0/gems/parser-3.3.11.1/lib/parser/lexer/explanation.rb +55 -0
  918. data/vendor/bundle/ruby/3.2.0/gems/parser-3.3.11.1/lib/parser/lexer/literal.rb +284 -0
  919. data/vendor/bundle/ruby/3.2.0/gems/parser-3.3.11.1/lib/parser/lexer/stack_state.rb +49 -0
  920. data/vendor/bundle/ruby/3.2.0/gems/parser-3.3.11.1/lib/parser/lexer-F0.rb +12931 -0
  921. data/vendor/bundle/ruby/3.2.0/gems/parser-3.3.11.1/lib/parser/lexer-F1.rb +14884 -0
  922. data/vendor/bundle/ruby/3.2.0/gems/parser-3.3.11.1/lib/parser/lexer-strings.rb +5433 -0
  923. data/vendor/bundle/ruby/3.2.0/gems/parser-3.3.11.1/lib/parser/macruby.rb +9634 -0
  924. data/vendor/bundle/ruby/3.2.0/gems/parser-3.3.11.1/lib/parser/max_numparam_stack.rb +56 -0
  925. data/vendor/bundle/ruby/3.2.0/gems/parser-3.3.11.1/lib/parser/messages.rb +125 -0
  926. data/vendor/bundle/ruby/3.2.0/gems/parser-3.3.11.1/lib/parser/meta.rb +48 -0
  927. data/vendor/bundle/ruby/3.2.0/gems/parser-3.3.11.1/lib/parser/rewriter.rb +105 -0
  928. data/vendor/bundle/ruby/3.2.0/gems/parser-3.3.11.1/lib/parser/ruby18.rb +9272 -0
  929. data/vendor/bundle/ruby/3.2.0/gems/parser-3.3.11.1/lib/parser/ruby19.rb +9558 -0
  930. data/vendor/bundle/ruby/3.2.0/gems/parser-3.3.11.1/lib/parser/ruby20.rb +10229 -0
  931. data/vendor/bundle/ruby/3.2.0/gems/parser-3.3.11.1/lib/parser/ruby21.rb +10203 -0
  932. data/vendor/bundle/ruby/3.2.0/gems/parser-3.3.11.1/lib/parser/ruby22.rb +10302 -0
  933. data/vendor/bundle/ruby/3.2.0/gems/parser-3.3.11.1/lib/parser/ruby23.rb +10322 -0
  934. data/vendor/bundle/ruby/3.2.0/gems/parser-3.3.11.1/lib/parser/ruby24.rb +10454 -0
  935. data/vendor/bundle/ruby/3.2.0/gems/parser-3.3.11.1/lib/parser/ruby25.rb +10374 -0
  936. data/vendor/bundle/ruby/3.2.0/gems/parser-3.3.11.1/lib/parser/ruby26.rb +10352 -0
  937. data/vendor/bundle/ruby/3.2.0/gems/parser-3.3.11.1/lib/parser/ruby27.rb +11948 -0
  938. data/vendor/bundle/ruby/3.2.0/gems/parser-3.3.11.1/lib/parser/ruby30.rb +12244 -0
  939. data/vendor/bundle/ruby/3.2.0/gems/parser-3.3.11.1/lib/parser/ruby31.rb +12717 -0
  940. data/vendor/bundle/ruby/3.2.0/gems/parser-3.3.11.1/lib/parser/ruby32.rb +12705 -0
  941. data/vendor/bundle/ruby/3.2.0/gems/parser-3.3.11.1/lib/parser/ruby33.rb +12590 -0
  942. data/vendor/bundle/ruby/3.2.0/gems/parser-3.3.11.1/lib/parser/ruby34.rb +12597 -0
  943. data/vendor/bundle/ruby/3.2.0/gems/parser-3.3.11.1/lib/parser/rubymotion.rb +9515 -0
  944. data/vendor/bundle/ruby/3.2.0/gems/parser-3.3.11.1/lib/parser/runner/ruby_parse.rb +157 -0
  945. data/vendor/bundle/ruby/3.2.0/gems/parser-3.3.11.1/lib/parser/runner/ruby_rewrite.rb +101 -0
  946. data/vendor/bundle/ruby/3.2.0/gems/parser-3.3.11.1/lib/parser/runner.rb +299 -0
  947. data/vendor/bundle/ruby/3.2.0/gems/parser-3.3.11.1/lib/parser/source/buffer.rb +369 -0
  948. data/vendor/bundle/ruby/3.2.0/gems/parser-3.3.11.1/lib/parser/source/comment/associator.rb +233 -0
  949. data/vendor/bundle/ruby/3.2.0/gems/parser-3.3.11.1/lib/parser/source/comment.rb +134 -0
  950. data/vendor/bundle/ruby/3.2.0/gems/parser-3.3.11.1/lib/parser/source/map/collection.rb +18 -0
  951. data/vendor/bundle/ruby/3.2.0/gems/parser-3.3.11.1/lib/parser/source/map/condition.rb +21 -0
  952. data/vendor/bundle/ruby/3.2.0/gems/parser-3.3.11.1/lib/parser/source/map/constant.rb +32 -0
  953. data/vendor/bundle/ruby/3.2.0/gems/parser-3.3.11.1/lib/parser/source/map/definition.rb +23 -0
  954. data/vendor/bundle/ruby/3.2.0/gems/parser-3.3.11.1/lib/parser/source/map/for.rb +19 -0
  955. data/vendor/bundle/ruby/3.2.0/gems/parser-3.3.11.1/lib/parser/source/map/heredoc.rb +19 -0
  956. data/vendor/bundle/ruby/3.2.0/gems/parser-3.3.11.1/lib/parser/source/map/index.rb +33 -0
  957. data/vendor/bundle/ruby/3.2.0/gems/parser-3.3.11.1/lib/parser/source/map/keyword.rb +20 -0
  958. data/vendor/bundle/ruby/3.2.0/gems/parser-3.3.11.1/lib/parser/source/map/method_definition.rb +25 -0
  959. data/vendor/bundle/ruby/3.2.0/gems/parser-3.3.11.1/lib/parser/source/map/objc_kwarg.rb +19 -0
  960. data/vendor/bundle/ruby/3.2.0/gems/parser-3.3.11.1/lib/parser/source/map/operator.rb +17 -0
  961. data/vendor/bundle/ruby/3.2.0/gems/parser-3.3.11.1/lib/parser/source/map/rescue_body.rb +21 -0
  962. data/vendor/bundle/ruby/3.2.0/gems/parser-3.3.11.1/lib/parser/source/map/send.rb +36 -0
  963. data/vendor/bundle/ruby/3.2.0/gems/parser-3.3.11.1/lib/parser/source/map/ternary.rb +18 -0
  964. data/vendor/bundle/ruby/3.2.0/gems/parser-3.3.11.1/lib/parser/source/map/variable.rb +31 -0
  965. data/vendor/bundle/ruby/3.2.0/gems/parser-3.3.11.1/lib/parser/source/map.rb +186 -0
  966. data/vendor/bundle/ruby/3.2.0/gems/parser-3.3.11.1/lib/parser/source/range.rb +326 -0
  967. data/vendor/bundle/ruby/3.2.0/gems/parser-3.3.11.1/lib/parser/source/rewriter/action.rb +44 -0
  968. data/vendor/bundle/ruby/3.2.0/gems/parser-3.3.11.1/lib/parser/source/rewriter.rb +513 -0
  969. data/vendor/bundle/ruby/3.2.0/gems/parser-3.3.11.1/lib/parser/source/tree_rewriter/action.rb +243 -0
  970. data/vendor/bundle/ruby/3.2.0/gems/parser-3.3.11.1/lib/parser/source/tree_rewriter.rb +431 -0
  971. data/vendor/bundle/ruby/3.2.0/gems/parser-3.3.11.1/lib/parser/static_environment.rb +134 -0
  972. data/vendor/bundle/ruby/3.2.0/gems/parser-3.3.11.1/lib/parser/syntax_error.rb +21 -0
  973. data/vendor/bundle/ruby/3.2.0/gems/parser-3.3.11.1/lib/parser/tree_rewriter.rb +133 -0
  974. data/vendor/bundle/ruby/3.2.0/gems/parser-3.3.11.1/lib/parser/unknown_encoding_in_magic_comment_error.rb +15 -0
  975. data/vendor/bundle/ruby/3.2.0/gems/parser-3.3.11.1/lib/parser/variables_stack.rb +36 -0
  976. data/vendor/bundle/ruby/3.2.0/gems/parser-3.3.11.1/lib/parser/version.rb +5 -0
  977. data/vendor/bundle/ruby/3.2.0/gems/parser-3.3.11.1/lib/parser.rb +91 -0
  978. data/vendor/bundle/ruby/3.2.0/gems/parser-3.3.11.1/parser.gemspec +43 -0
  979. data/vendor/bundle/ruby/3.2.0/gems/pry-0.16.0/CHANGELOG.md +1211 -0
  980. data/vendor/bundle/ruby/3.2.0/gems/pry-0.16.0/LICENSE +25 -0
  981. data/vendor/bundle/ruby/3.2.0/gems/pry-0.16.0/README.md +469 -0
  982. data/vendor/bundle/ruby/3.2.0/gems/pry-0.16.0/bin/pry +13 -0
  983. data/vendor/bundle/ruby/3.2.0/gems/pry-0.16.0/lib/pry/basic_object.rb +10 -0
  984. data/vendor/bundle/ruby/3.2.0/gems/pry-0.16.0/lib/pry/block_command.rb +22 -0
  985. data/vendor/bundle/ruby/3.2.0/gems/pry-0.16.0/lib/pry/class_command.rb +194 -0
  986. data/vendor/bundle/ruby/3.2.0/gems/pry-0.16.0/lib/pry/cli.rb +211 -0
  987. data/vendor/bundle/ruby/3.2.0/gems/pry-0.16.0/lib/pry/code/code_file.rb +114 -0
  988. data/vendor/bundle/ruby/3.2.0/gems/pry-0.16.0/lib/pry/code/code_range.rb +73 -0
  989. data/vendor/bundle/ruby/3.2.0/gems/pry-0.16.0/lib/pry/code/loc.rb +105 -0
  990. data/vendor/bundle/ruby/3.2.0/gems/pry-0.16.0/lib/pry/code.rb +357 -0
  991. data/vendor/bundle/ruby/3.2.0/gems/pry-0.16.0/lib/pry/code_object.rb +197 -0
  992. data/vendor/bundle/ruby/3.2.0/gems/pry-0.16.0/lib/pry/color_printer.rb +66 -0
  993. data/vendor/bundle/ruby/3.2.0/gems/pry-0.16.0/lib/pry/command.rb +520 -0
  994. data/vendor/bundle/ruby/3.2.0/gems/pry-0.16.0/lib/pry/command_set.rb +418 -0
  995. data/vendor/bundle/ruby/3.2.0/gems/pry-0.16.0/lib/pry/command_state.rb +36 -0
  996. data/vendor/bundle/ruby/3.2.0/gems/pry-0.16.0/lib/pry/commands/amend_line.rb +103 -0
  997. data/vendor/bundle/ruby/3.2.0/gems/pry-0.16.0/lib/pry/commands/bang.rb +24 -0
  998. data/vendor/bundle/ruby/3.2.0/gems/pry-0.16.0/lib/pry/commands/bang_pry.rb +21 -0
  999. data/vendor/bundle/ruby/3.2.0/gems/pry-0.16.0/lib/pry/commands/cat/abstract_formatter.rb +32 -0
  1000. data/vendor/bundle/ruby/3.2.0/gems/pry-0.16.0/lib/pry/commands/cat/exception_formatter.rb +90 -0
  1001. data/vendor/bundle/ruby/3.2.0/gems/pry-0.16.0/lib/pry/commands/cat/file_formatter.rb +77 -0
  1002. data/vendor/bundle/ruby/3.2.0/gems/pry-0.16.0/lib/pry/commands/cat/input_expression_formatter.rb +48 -0
  1003. data/vendor/bundle/ruby/3.2.0/gems/pry-0.16.0/lib/pry/commands/cat.rb +70 -0
  1004. data/vendor/bundle/ruby/3.2.0/gems/pry-0.16.0/lib/pry/commands/cd.rb +48 -0
  1005. data/vendor/bundle/ruby/3.2.0/gems/pry-0.16.0/lib/pry/commands/change_inspector.rb +34 -0
  1006. data/vendor/bundle/ruby/3.2.0/gems/pry-0.16.0/lib/pry/commands/change_prompt.rb +51 -0
  1007. data/vendor/bundle/ruby/3.2.0/gems/pry-0.16.0/lib/pry/commands/clear_screen.rb +20 -0
  1008. data/vendor/bundle/ruby/3.2.0/gems/pry-0.16.0/lib/pry/commands/code_collector.rb +182 -0
  1009. data/vendor/bundle/ruby/3.2.0/gems/pry-0.16.0/lib/pry/commands/disable_pry.rb +31 -0
  1010. data/vendor/bundle/ruby/3.2.0/gems/pry-0.16.0/lib/pry/commands/easter_eggs.rb +101 -0
  1011. data/vendor/bundle/ruby/3.2.0/gems/pry-0.16.0/lib/pry/commands/edit/exception_patcher.rb +29 -0
  1012. data/vendor/bundle/ruby/3.2.0/gems/pry-0.16.0/lib/pry/commands/edit/file_and_line_locator.rb +47 -0
  1013. data/vendor/bundle/ruby/3.2.0/gems/pry-0.16.0/lib/pry/commands/edit.rb +225 -0
  1014. data/vendor/bundle/ruby/3.2.0/gems/pry-0.16.0/lib/pry/commands/exit.rb +47 -0
  1015. data/vendor/bundle/ruby/3.2.0/gems/pry-0.16.0/lib/pry/commands/exit_all.rb +33 -0
  1016. data/vendor/bundle/ruby/3.2.0/gems/pry-0.16.0/lib/pry/commands/exit_program.rb +27 -0
  1017. data/vendor/bundle/ruby/3.2.0/gems/pry-0.16.0/lib/pry/commands/find_method.rb +199 -0
  1018. data/vendor/bundle/ruby/3.2.0/gems/pry-0.16.0/lib/pry/commands/fix_indent.rb +23 -0
  1019. data/vendor/bundle/ruby/3.2.0/gems/pry-0.16.0/lib/pry/commands/help.rb +171 -0
  1020. data/vendor/bundle/ruby/3.2.0/gems/pry-0.16.0/lib/pry/commands/hist.rb +182 -0
  1021. data/vendor/bundle/ruby/3.2.0/gems/pry-0.16.0/lib/pry/commands/import_set.rb +27 -0
  1022. data/vendor/bundle/ruby/3.2.0/gems/pry-0.16.0/lib/pry/commands/jump_to.rb +33 -0
  1023. data/vendor/bundle/ruby/3.2.0/gems/pry-0.16.0/lib/pry/commands/list_inspectors.rb +42 -0
  1024. data/vendor/bundle/ruby/3.2.0/gems/pry-0.16.0/lib/pry/commands/ls/config.rb +54 -0
  1025. data/vendor/bundle/ruby/3.2.0/gems/pry-0.16.0/lib/pry/commands/ls/constants.rb +75 -0
  1026. data/vendor/bundle/ruby/3.2.0/gems/pry-0.16.0/lib/pry/commands/ls/formatter.rb +55 -0
  1027. data/vendor/bundle/ruby/3.2.0/gems/pry-0.16.0/lib/pry/commands/ls/globals.rb +50 -0
  1028. data/vendor/bundle/ruby/3.2.0/gems/pry-0.16.0/lib/pry/commands/ls/grep.rb +23 -0
  1029. data/vendor/bundle/ruby/3.2.0/gems/pry-0.16.0/lib/pry/commands/ls/instance_vars.rb +40 -0
  1030. data/vendor/bundle/ruby/3.2.0/gems/pry-0.16.0/lib/pry/commands/ls/interrogatable.rb +24 -0
  1031. data/vendor/bundle/ruby/3.2.0/gems/pry-0.16.0/lib/pry/commands/ls/jruby_hacks.rb +55 -0
  1032. data/vendor/bundle/ruby/3.2.0/gems/pry-0.16.0/lib/pry/commands/ls/local_names.rb +37 -0
  1033. data/vendor/bundle/ruby/3.2.0/gems/pry-0.16.0/lib/pry/commands/ls/local_vars.rb +47 -0
  1034. data/vendor/bundle/ruby/3.2.0/gems/pry-0.16.0/lib/pry/commands/ls/ls_entity.rb +65 -0
  1035. data/vendor/bundle/ruby/3.2.0/gems/pry-0.16.0/lib/pry/commands/ls/methods.rb +55 -0
  1036. data/vendor/bundle/ruby/3.2.0/gems/pry-0.16.0/lib/pry/commands/ls/methods_helper.rb +50 -0
  1037. data/vendor/bundle/ruby/3.2.0/gems/pry-0.16.0/lib/pry/commands/ls/self_methods.rb +34 -0
  1038. data/vendor/bundle/ruby/3.2.0/gems/pry-0.16.0/lib/pry/commands/ls.rb +114 -0
  1039. data/vendor/bundle/ruby/3.2.0/gems/pry-0.16.0/lib/pry/commands/nesting.rb +29 -0
  1040. data/vendor/bundle/ruby/3.2.0/gems/pry-0.16.0/lib/pry/commands/play.rb +113 -0
  1041. data/vendor/bundle/ruby/3.2.0/gems/pry-0.16.0/lib/pry/commands/pry_backtrace.rb +30 -0
  1042. data/vendor/bundle/ruby/3.2.0/gems/pry-0.16.0/lib/pry/commands/pry_version.rb +21 -0
  1043. data/vendor/bundle/ruby/3.2.0/gems/pry-0.16.0/lib/pry/commands/raise_up.rb +38 -0
  1044. data/vendor/bundle/ruby/3.2.0/gems/pry-0.16.0/lib/pry/commands/reload_code.rb +74 -0
  1045. data/vendor/bundle/ruby/3.2.0/gems/pry-0.16.0/lib/pry/commands/reset.rb +22 -0
  1046. data/vendor/bundle/ruby/3.2.0/gems/pry-0.16.0/lib/pry/commands/ri.rb +75 -0
  1047. data/vendor/bundle/ruby/3.2.0/gems/pry-0.16.0/lib/pry/commands/save_file.rb +63 -0
  1048. data/vendor/bundle/ruby/3.2.0/gems/pry-0.16.0/lib/pry/commands/shell_command.rb +75 -0
  1049. data/vendor/bundle/ruby/3.2.0/gems/pry-0.16.0/lib/pry/commands/shell_mode.rb +30 -0
  1050. data/vendor/bundle/ruby/3.2.0/gems/pry-0.16.0/lib/pry/commands/show_doc.rb +84 -0
  1051. data/vendor/bundle/ruby/3.2.0/gems/pry-0.16.0/lib/pry/commands/show_info.rb +234 -0
  1052. data/vendor/bundle/ruby/3.2.0/gems/pry-0.16.0/lib/pry/commands/show_input.rb +22 -0
  1053. data/vendor/bundle/ruby/3.2.0/gems/pry-0.16.0/lib/pry/commands/show_source.rb +57 -0
  1054. data/vendor/bundle/ruby/3.2.0/gems/pry-0.16.0/lib/pry/commands/stat.rb +44 -0
  1055. data/vendor/bundle/ruby/3.2.0/gems/pry-0.16.0/lib/pry/commands/switch_to.rb +29 -0
  1056. data/vendor/bundle/ruby/3.2.0/gems/pry-0.16.0/lib/pry/commands/toggle_color.rb +28 -0
  1057. data/vendor/bundle/ruby/3.2.0/gems/pry-0.16.0/lib/pry/commands/watch_expression/expression.rb +43 -0
  1058. data/vendor/bundle/ruby/3.2.0/gems/pry-0.16.0/lib/pry/commands/watch_expression.rb +108 -0
  1059. data/vendor/bundle/ruby/3.2.0/gems/pry-0.16.0/lib/pry/commands/whereami.rb +205 -0
  1060. data/vendor/bundle/ruby/3.2.0/gems/pry-0.16.0/lib/pry/commands/wtf.rb +95 -0
  1061. data/vendor/bundle/ruby/3.2.0/gems/pry-0.16.0/lib/pry/config/attributable.rb +22 -0
  1062. data/vendor/bundle/ruby/3.2.0/gems/pry-0.16.0/lib/pry/config/lazy_value.rb +29 -0
  1063. data/vendor/bundle/ruby/3.2.0/gems/pry-0.16.0/lib/pry/config/memoized_value.rb +34 -0
  1064. data/vendor/bundle/ruby/3.2.0/gems/pry-0.16.0/lib/pry/config/value.rb +24 -0
  1065. data/vendor/bundle/ruby/3.2.0/gems/pry-0.16.0/lib/pry/config.rb +321 -0
  1066. data/vendor/bundle/ruby/3.2.0/gems/pry-0.16.0/lib/pry/control_d_handler.rb +28 -0
  1067. data/vendor/bundle/ruby/3.2.0/gems/pry-0.16.0/lib/pry/core_extensions.rb +144 -0
  1068. data/vendor/bundle/ruby/3.2.0/gems/pry-0.16.0/lib/pry/editor.rb +157 -0
  1069. data/vendor/bundle/ruby/3.2.0/gems/pry-0.16.0/lib/pry/env.rb +18 -0
  1070. data/vendor/bundle/ruby/3.2.0/gems/pry-0.16.0/lib/pry/exception_handler.rb +48 -0
  1071. data/vendor/bundle/ruby/3.2.0/gems/pry-0.16.0/lib/pry/exceptions.rb +73 -0
  1072. data/vendor/bundle/ruby/3.2.0/gems/pry-0.16.0/lib/pry/forwardable.rb +27 -0
  1073. data/vendor/bundle/ruby/3.2.0/gems/pry-0.16.0/lib/pry/helpers/base_helpers.rb +71 -0
  1074. data/vendor/bundle/ruby/3.2.0/gems/pry-0.16.0/lib/pry/helpers/command_helpers.rb +146 -0
  1075. data/vendor/bundle/ruby/3.2.0/gems/pry-0.16.0/lib/pry/helpers/documentation_helpers.rb +84 -0
  1076. data/vendor/bundle/ruby/3.2.0/gems/pry-0.16.0/lib/pry/helpers/options_helpers.rb +34 -0
  1077. data/vendor/bundle/ruby/3.2.0/gems/pry-0.16.0/lib/pry/helpers/platform.rb +55 -0
  1078. data/vendor/bundle/ruby/3.2.0/gems/pry-0.16.0/lib/pry/helpers/table.rb +121 -0
  1079. data/vendor/bundle/ruby/3.2.0/gems/pry-0.16.0/lib/pry/helpers/text.rb +118 -0
  1080. data/vendor/bundle/ruby/3.2.0/gems/pry-0.16.0/lib/pry/helpers.rb +8 -0
  1081. data/vendor/bundle/ruby/3.2.0/gems/pry-0.16.0/lib/pry/history.rb +153 -0
  1082. data/vendor/bundle/ruby/3.2.0/gems/pry-0.16.0/lib/pry/hooks.rb +180 -0
  1083. data/vendor/bundle/ruby/3.2.0/gems/pry-0.16.0/lib/pry/indent.rb +414 -0
  1084. data/vendor/bundle/ruby/3.2.0/gems/pry-0.16.0/lib/pry/input/simple_stdio.rb +13 -0
  1085. data/vendor/bundle/ruby/3.2.0/gems/pry-0.16.0/lib/pry/input_completer.rb +283 -0
  1086. data/vendor/bundle/ruby/3.2.0/gems/pry-0.16.0/lib/pry/input_lock.rb +129 -0
  1087. data/vendor/bundle/ruby/3.2.0/gems/pry-0.16.0/lib/pry/inspector.rb +39 -0
  1088. data/vendor/bundle/ruby/3.2.0/gems/pry-0.16.0/lib/pry/last_exception.rb +61 -0
  1089. data/vendor/bundle/ruby/3.2.0/gems/pry-0.16.0/lib/pry/method/disowned.rb +67 -0
  1090. data/vendor/bundle/ruby/3.2.0/gems/pry-0.16.0/lib/pry/method/patcher.rb +131 -0
  1091. data/vendor/bundle/ruby/3.2.0/gems/pry-0.16.0/lib/pry/method/weird_method_locator.rb +222 -0
  1092. data/vendor/bundle/ruby/3.2.0/gems/pry-0.16.0/lib/pry/method.rb +599 -0
  1093. data/vendor/bundle/ruby/3.2.0/gems/pry-0.16.0/lib/pry/object_path.rb +91 -0
  1094. data/vendor/bundle/ruby/3.2.0/gems/pry-0.16.0/lib/pry/output.rb +136 -0
  1095. data/vendor/bundle/ruby/3.2.0/gems/pry-0.16.0/lib/pry/pager.rb +249 -0
  1096. data/vendor/bundle/ruby/3.2.0/gems/pry-0.16.0/lib/pry/prompt.rb +214 -0
  1097. data/vendor/bundle/ruby/3.2.0/gems/pry-0.16.0/lib/pry/pry_class.rb +371 -0
  1098. data/vendor/bundle/ruby/3.2.0/gems/pry-0.16.0/lib/pry/pry_instance.rb +663 -0
  1099. data/vendor/bundle/ruby/3.2.0/gems/pry-0.16.0/lib/pry/repl.rb +326 -0
  1100. data/vendor/bundle/ruby/3.2.0/gems/pry-0.16.0/lib/pry/repl_file_loader.rb +79 -0
  1101. data/vendor/bundle/ruby/3.2.0/gems/pry-0.16.0/lib/pry/ring.rb +89 -0
  1102. data/vendor/bundle/ruby/3.2.0/gems/pry-0.16.0/lib/pry/slop/LICENSE +20 -0
  1103. data/vendor/bundle/ruby/3.2.0/gems/pry-0.16.0/lib/pry/slop/commands.rb +190 -0
  1104. data/vendor/bundle/ruby/3.2.0/gems/pry-0.16.0/lib/pry/slop/option.rb +210 -0
  1105. data/vendor/bundle/ruby/3.2.0/gems/pry-0.16.0/lib/pry/slop.rb +672 -0
  1106. data/vendor/bundle/ruby/3.2.0/gems/pry-0.16.0/lib/pry/syntax_highlighter.rb +26 -0
  1107. data/vendor/bundle/ruby/3.2.0/gems/pry-0.16.0/lib/pry/system_command_handler.rb +17 -0
  1108. data/vendor/bundle/ruby/3.2.0/gems/pry-0.16.0/lib/pry/testable/evalable.rb +24 -0
  1109. data/vendor/bundle/ruby/3.2.0/gems/pry-0.16.0/lib/pry/testable/mockable.rb +22 -0
  1110. data/vendor/bundle/ruby/3.2.0/gems/pry-0.16.0/lib/pry/testable/pry_tester.rb +88 -0
  1111. data/vendor/bundle/ruby/3.2.0/gems/pry-0.16.0/lib/pry/testable/utility.rb +34 -0
  1112. data/vendor/bundle/ruby/3.2.0/gems/pry-0.16.0/lib/pry/testable/variables.rb +52 -0
  1113. data/vendor/bundle/ruby/3.2.0/gems/pry-0.16.0/lib/pry/testable.rb +68 -0
  1114. data/vendor/bundle/ruby/3.2.0/gems/pry-0.16.0/lib/pry/version.rb +5 -0
  1115. data/vendor/bundle/ruby/3.2.0/gems/pry-0.16.0/lib/pry/warning.rb +20 -0
  1116. data/vendor/bundle/ruby/3.2.0/gems/pry-0.16.0/lib/pry/wrapped_module/candidate.rb +145 -0
  1117. data/vendor/bundle/ruby/3.2.0/gems/pry-0.16.0/lib/pry/wrapped_module.rb +382 -0
  1118. data/vendor/bundle/ruby/3.2.0/gems/pry-0.16.0/lib/pry.rb +148 -0
  1119. data/vendor/bundle/ruby/3.2.0/gems/pry-byebug-3.12.0/CHANGELOG.md +252 -0
  1120. data/vendor/bundle/ruby/3.2.0/gems/pry-byebug-3.12.0/LICENSE +20 -0
  1121. data/vendor/bundle/ruby/3.2.0/gems/pry-byebug-3.12.0/README.md +189 -0
  1122. data/vendor/bundle/ruby/3.2.0/gems/pry-byebug-3.12.0/lib/byebug/processors/pry_processor.rb +158 -0
  1123. data/vendor/bundle/ruby/3.2.0/gems/pry-byebug-3.12.0/lib/pry/byebug/breakpoints.rb +167 -0
  1124. data/vendor/bundle/ruby/3.2.0/gems/pry-byebug-3.12.0/lib/pry-byebug/base.rb +29 -0
  1125. data/vendor/bundle/ruby/3.2.0/gems/pry-byebug-3.12.0/lib/pry-byebug/cli.rb +6 -0
  1126. data/vendor/bundle/ruby/3.2.0/gems/pry-byebug-3.12.0/lib/pry-byebug/commands/backtrace.rb +31 -0
  1127. data/vendor/bundle/ruby/3.2.0/gems/pry-byebug-3.12.0/lib/pry-byebug/commands/breakpoint.rb +137 -0
  1128. data/vendor/bundle/ruby/3.2.0/gems/pry-byebug-3.12.0/lib/pry-byebug/commands/continue.rb +43 -0
  1129. data/vendor/bundle/ruby/3.2.0/gems/pry-byebug-3.12.0/lib/pry-byebug/commands/down.rb +35 -0
  1130. data/vendor/bundle/ruby/3.2.0/gems/pry-byebug-3.12.0/lib/pry-byebug/commands/exit_all.rb +18 -0
  1131. data/vendor/bundle/ruby/3.2.0/gems/pry-byebug-3.12.0/lib/pry-byebug/commands/finish.rb +28 -0
  1132. data/vendor/bundle/ruby/3.2.0/gems/pry-byebug-3.12.0/lib/pry-byebug/commands/frame.rb +35 -0
  1133. data/vendor/bundle/ruby/3.2.0/gems/pry-byebug-3.12.0/lib/pry-byebug/commands/next.rb +39 -0
  1134. data/vendor/bundle/ruby/3.2.0/gems/pry-byebug-3.12.0/lib/pry-byebug/commands/step.rb +34 -0
  1135. data/vendor/bundle/ruby/3.2.0/gems/pry-byebug-3.12.0/lib/pry-byebug/commands/up.rb +35 -0
  1136. data/vendor/bundle/ruby/3.2.0/gems/pry-byebug-3.12.0/lib/pry-byebug/commands.rb +12 -0
  1137. data/vendor/bundle/ruby/3.2.0/gems/pry-byebug-3.12.0/lib/pry-byebug/control_d_handler.rb +9 -0
  1138. data/vendor/bundle/ruby/3.2.0/gems/pry-byebug-3.12.0/lib/pry-byebug/helpers/breakpoints.rb +82 -0
  1139. data/vendor/bundle/ruby/3.2.0/gems/pry-byebug-3.12.0/lib/pry-byebug/helpers/location.rb +24 -0
  1140. data/vendor/bundle/ruby/3.2.0/gems/pry-byebug-3.12.0/lib/pry-byebug/helpers/multiline.rb +23 -0
  1141. data/vendor/bundle/ruby/3.2.0/gems/pry-byebug-3.12.0/lib/pry-byebug/helpers/navigation.rb +19 -0
  1142. data/vendor/bundle/ruby/3.2.0/gems/pry-byebug-3.12.0/lib/pry-byebug/pry_ext.rb +20 -0
  1143. data/vendor/bundle/ruby/3.2.0/gems/pry-byebug-3.12.0/lib/pry-byebug/pry_remote_ext.rb +44 -0
  1144. data/vendor/bundle/ruby/3.2.0/gems/pry-byebug-3.12.0/lib/pry-byebug/version.rb +8 -0
  1145. data/vendor/bundle/ruby/3.2.0/gems/pry-byebug-3.12.0/lib/pry-byebug.rb +4 -0
  1146. data/vendor/bundle/ruby/3.2.0/gems/psych-5.4.0/CONTRIBUTING.md +24 -0
  1147. data/vendor/bundle/ruby/3.2.0/gems/psych-5.4.0/LICENSE +21 -0
  1148. data/vendor/bundle/ruby/3.2.0/gems/psych-5.4.0/README.md +90 -0
  1149. data/vendor/bundle/ruby/3.2.0/gems/psych-5.4.0/ext/psych/Makefile +291 -0
  1150. data/vendor/bundle/ruby/3.2.0/gems/psych-5.4.0/ext/psych/depend +17 -0
  1151. data/vendor/bundle/ruby/3.2.0/gems/psych-5.4.0/ext/psych/extconf.rb +56 -0
  1152. data/vendor/bundle/ruby/3.2.0/gems/psych-5.4.0/ext/psych/psych.c +36 -0
  1153. data/vendor/bundle/ruby/3.2.0/gems/psych-5.4.0/ext/psych/psych.h +17 -0
  1154. data/vendor/bundle/ruby/3.2.0/gems/psych-5.4.0/ext/psych/psych_emitter.c +589 -0
  1155. data/vendor/bundle/ruby/3.2.0/gems/psych-5.4.0/ext/psych/psych_emitter.h +8 -0
  1156. data/vendor/bundle/ruby/3.2.0/gems/psych-5.4.0/ext/psych/psych_parser.c +575 -0
  1157. data/vendor/bundle/ruby/3.2.0/gems/psych-5.4.0/ext/psych/psych_parser.h +6 -0
  1158. data/vendor/bundle/ruby/3.2.0/gems/psych-5.4.0/ext/psych/psych_to_ruby.c +42 -0
  1159. data/vendor/bundle/ruby/3.2.0/gems/psych-5.4.0/ext/psych/psych_to_ruby.h +8 -0
  1160. data/vendor/bundle/ruby/3.2.0/gems/psych-5.4.0/ext/psych/psych_yaml_tree.c +11 -0
  1161. data/vendor/bundle/ruby/3.2.0/gems/psych-5.4.0/ext/psych/psych_yaml_tree.h +8 -0
  1162. data/vendor/bundle/ruby/3.2.0/gems/psych-5.4.0/lib/psych/class_loader.rb +105 -0
  1163. data/vendor/bundle/ruby/3.2.0/gems/psych-5.4.0/lib/psych/coder.rb +95 -0
  1164. data/vendor/bundle/ruby/3.2.0/gems/psych-5.4.0/lib/psych/core_ext.rb +36 -0
  1165. data/vendor/bundle/ruby/3.2.0/gems/psych-5.4.0/lib/psych/exception.rb +28 -0
  1166. data/vendor/bundle/ruby/3.2.0/gems/psych-5.4.0/lib/psych/handler.rb +255 -0
  1167. data/vendor/bundle/ruby/3.2.0/gems/psych-5.4.0/lib/psych/handlers/document_stream.rb +23 -0
  1168. data/vendor/bundle/ruby/3.2.0/gems/psych-5.4.0/lib/psych/handlers/recorder.rb +40 -0
  1169. data/vendor/bundle/ruby/3.2.0/gems/psych-5.4.0/lib/psych/json/ruby_events.rb +20 -0
  1170. data/vendor/bundle/ruby/3.2.0/gems/psych-5.4.0/lib/psych/json/stream.rb +17 -0
  1171. data/vendor/bundle/ruby/3.2.0/gems/psych-5.4.0/lib/psych/json/tree_builder.rb +13 -0
  1172. data/vendor/bundle/ruby/3.2.0/gems/psych-5.4.0/lib/psych/json/yaml_events.rb +30 -0
  1173. data/vendor/bundle/ruby/3.2.0/gems/psych-5.4.0/lib/psych/nodes/alias.rb +21 -0
  1174. data/vendor/bundle/ruby/3.2.0/gems/psych-5.4.0/lib/psych/nodes/document.rb +63 -0
  1175. data/vendor/bundle/ruby/3.2.0/gems/psych-5.4.0/lib/psych/nodes/mapping.rb +59 -0
  1176. data/vendor/bundle/ruby/3.2.0/gems/psych-5.4.0/lib/psych/nodes/node.rb +76 -0
  1177. data/vendor/bundle/ruby/3.2.0/gems/psych-5.4.0/lib/psych/nodes/scalar.rb +70 -0
  1178. data/vendor/bundle/ruby/3.2.0/gems/psych-5.4.0/lib/psych/nodes/sequence.rb +84 -0
  1179. data/vendor/bundle/ruby/3.2.0/gems/psych-5.4.0/lib/psych/nodes/stream.rb +40 -0
  1180. data/vendor/bundle/ruby/3.2.0/gems/psych-5.4.0/lib/psych/nodes.rb +78 -0
  1181. data/vendor/bundle/ruby/3.2.0/gems/psych-5.4.0/lib/psych/omap.rb +5 -0
  1182. data/vendor/bundle/ruby/3.2.0/gems/psych-5.4.0/lib/psych/parser.rb +65 -0
  1183. data/vendor/bundle/ruby/3.2.0/gems/psych-5.4.0/lib/psych/scalar_scanner.rb +142 -0
  1184. data/vendor/bundle/ruby/3.2.0/gems/psych-5.4.0/lib/psych/set.rb +5 -0
  1185. data/vendor/bundle/ruby/3.2.0/gems/psych-5.4.0/lib/psych/stream.rb +38 -0
  1186. data/vendor/bundle/ruby/3.2.0/gems/psych-5.4.0/lib/psych/streaming.rb +28 -0
  1187. data/vendor/bundle/ruby/3.2.0/gems/psych-5.4.0/lib/psych/syntax_error.rb +22 -0
  1188. data/vendor/bundle/ruby/3.2.0/gems/psych-5.4.0/lib/psych/tree_builder.rb +137 -0
  1189. data/vendor/bundle/ruby/3.2.0/gems/psych-5.4.0/lib/psych/versions.rb +10 -0
  1190. data/vendor/bundle/ruby/3.2.0/gems/psych-5.4.0/lib/psych/visitors/depth_first.rb +27 -0
  1191. data/vendor/bundle/ruby/3.2.0/gems/psych-5.4.0/lib/psych/visitors/emitter.rb +52 -0
  1192. data/vendor/bundle/ruby/3.2.0/gems/psych-5.4.0/lib/psych/visitors/json_tree.rb +25 -0
  1193. data/vendor/bundle/ruby/3.2.0/gems/psych-5.4.0/lib/psych/visitors/to_ruby.rb +479 -0
  1194. data/vendor/bundle/ruby/3.2.0/gems/psych-5.4.0/lib/psych/visitors/visitor.rb +34 -0
  1195. data/vendor/bundle/ruby/3.2.0/gems/psych-5.4.0/lib/psych/visitors/yaml_tree.rb +626 -0
  1196. data/vendor/bundle/ruby/3.2.0/gems/psych-5.4.0/lib/psych/visitors.rb +7 -0
  1197. data/vendor/bundle/ruby/3.2.0/gems/psych-5.4.0/lib/psych/y.rb +10 -0
  1198. data/vendor/bundle/ruby/3.2.0/gems/psych-5.4.0/lib/psych.rb +794 -0
  1199. data/vendor/bundle/ruby/3.2.0/gems/psych-5.4.0/lib/psych.so +0 -0
  1200. data/vendor/bundle/ruby/3.2.0/gems/racc-1.8.1/BSDL +22 -0
  1201. data/vendor/bundle/ruby/3.2.0/gems/racc-1.8.1/COPYING +56 -0
  1202. data/vendor/bundle/ruby/3.2.0/gems/racc-1.8.1/ChangeLog +846 -0
  1203. data/vendor/bundle/ruby/3.2.0/gems/racc-1.8.1/README.ja.rdoc +58 -0
  1204. data/vendor/bundle/ruby/3.2.0/gems/racc-1.8.1/README.rdoc +60 -0
  1205. data/vendor/bundle/ruby/3.2.0/gems/racc-1.8.1/TODO +5 -0
  1206. data/vendor/bundle/ruby/3.2.0/gems/racc-1.8.1/bin/racc +320 -0
  1207. data/vendor/bundle/ruby/3.2.0/gems/racc-1.8.1/doc/en/grammar.en.rdoc +218 -0
  1208. data/vendor/bundle/ruby/3.2.0/gems/racc-1.8.1/doc/en/grammar2.en.rdoc +219 -0
  1209. data/vendor/bundle/ruby/3.2.0/gems/racc-1.8.1/doc/ja/command.ja.html +99 -0
  1210. data/vendor/bundle/ruby/3.2.0/gems/racc-1.8.1/doc/ja/debug.ja.rdoc +36 -0
  1211. data/vendor/bundle/ruby/3.2.0/gems/racc-1.8.1/doc/ja/grammar.ja.rdoc +348 -0
  1212. data/vendor/bundle/ruby/3.2.0/gems/racc-1.8.1/doc/ja/index.ja.html +10 -0
  1213. data/vendor/bundle/ruby/3.2.0/gems/racc-1.8.1/doc/ja/parser.ja.rdoc +125 -0
  1214. data/vendor/bundle/ruby/3.2.0/gems/racc-1.8.1/doc/ja/usage.ja.html +414 -0
  1215. data/vendor/bundle/ruby/3.2.0/gems/racc-1.8.1/ext/racc/cparse/Makefile +269 -0
  1216. data/vendor/bundle/ruby/3.2.0/gems/racc-1.8.1/ext/racc/cparse/cparse.c +840 -0
  1217. data/vendor/bundle/ruby/3.2.0/gems/racc-1.8.1/ext/racc/cparse/extconf.rb +8 -0
  1218. data/vendor/bundle/ruby/3.2.0/gems/racc-1.8.1/lib/racc/compat.rb +33 -0
  1219. data/vendor/bundle/ruby/3.2.0/gems/racc-1.8.1/lib/racc/cparse.so +0 -0
  1220. data/vendor/bundle/ruby/3.2.0/gems/racc-1.8.1/lib/racc/debugflags.rb +60 -0
  1221. data/vendor/bundle/ruby/3.2.0/gems/racc-1.8.1/lib/racc/exception.rb +16 -0
  1222. data/vendor/bundle/ruby/3.2.0/gems/racc-1.8.1/lib/racc/grammar.rb +1191 -0
  1223. data/vendor/bundle/ruby/3.2.0/gems/racc-1.8.1/lib/racc/grammarfileparser.rb +667 -0
  1224. data/vendor/bundle/ruby/3.2.0/gems/racc-1.8.1/lib/racc/info.rb +18 -0
  1225. data/vendor/bundle/ruby/3.2.0/gems/racc-1.8.1/lib/racc/iset.rb +92 -0
  1226. data/vendor/bundle/ruby/3.2.0/gems/racc-1.8.1/lib/racc/logfilegenerator.rb +212 -0
  1227. data/vendor/bundle/ruby/3.2.0/gems/racc-1.8.1/lib/racc/parser-text.rb +644 -0
  1228. data/vendor/bundle/ruby/3.2.0/gems/racc-1.8.1/lib/racc/parser.rb +630 -0
  1229. data/vendor/bundle/ruby/3.2.0/gems/racc-1.8.1/lib/racc/parserfilegenerator.rb +473 -0
  1230. data/vendor/bundle/ruby/3.2.0/gems/racc-1.8.1/lib/racc/sourcetext.rb +35 -0
  1231. data/vendor/bundle/ruby/3.2.0/gems/racc-1.8.1/lib/racc/state.rb +976 -0
  1232. data/vendor/bundle/ruby/3.2.0/gems/racc-1.8.1/lib/racc/statetransitiontable.rb +311 -0
  1233. data/vendor/bundle/ruby/3.2.0/gems/racc-1.8.1/lib/racc/static.rb +5 -0
  1234. data/vendor/bundle/ruby/3.2.0/gems/racc-1.8.1/lib/racc.rb +6 -0
  1235. data/vendor/bundle/ruby/3.2.0/gems/rainbow-3.1.1/Changelog.md +101 -0
  1236. data/vendor/bundle/ruby/3.2.0/gems/rainbow-3.1.1/LICENSE +20 -0
  1237. data/vendor/bundle/ruby/3.2.0/gems/rainbow-3.1.1/README.markdown +227 -0
  1238. data/vendor/bundle/ruby/3.2.0/gems/rainbow-3.1.1/lib/rainbow/color.rb +150 -0
  1239. data/vendor/bundle/ruby/3.2.0/gems/rainbow-3.1.1/lib/rainbow/ext/string.rb +64 -0
  1240. data/vendor/bundle/ruby/3.2.0/gems/rainbow-3.1.1/lib/rainbow/global.rb +25 -0
  1241. data/vendor/bundle/ruby/3.2.0/gems/rainbow-3.1.1/lib/rainbow/null_presenter.rb +100 -0
  1242. data/vendor/bundle/ruby/3.2.0/gems/rainbow-3.1.1/lib/rainbow/presenter.rb +144 -0
  1243. data/vendor/bundle/ruby/3.2.0/gems/rainbow-3.1.1/lib/rainbow/refinement.rb +14 -0
  1244. data/vendor/bundle/ruby/3.2.0/gems/rainbow-3.1.1/lib/rainbow/string_utils.rb +22 -0
  1245. data/vendor/bundle/ruby/3.2.0/gems/rainbow-3.1.1/lib/rainbow/version.rb +5 -0
  1246. data/vendor/bundle/ruby/3.2.0/gems/rainbow-3.1.1/lib/rainbow/wrapper.rb +22 -0
  1247. data/vendor/bundle/ruby/3.2.0/gems/rainbow-3.1.1/lib/rainbow/x11_color_names.rb +153 -0
  1248. data/vendor/bundle/ruby/3.2.0/gems/rainbow-3.1.1/lib/rainbow.rb +13 -0
  1249. data/vendor/bundle/ruby/3.2.0/gems/rake-13.0.6/History.rdoc +2403 -0
  1250. data/vendor/bundle/ruby/3.2.0/gems/rake-13.0.6/MIT-LICENSE +21 -0
  1251. data/vendor/bundle/ruby/3.2.0/gems/rake-13.0.6/README.rdoc +155 -0
  1252. data/vendor/bundle/ruby/3.2.0/gems/rake-13.0.6/doc/command_line_usage.rdoc +158 -0
  1253. data/vendor/bundle/ruby/3.2.0/gems/rake-13.0.6/doc/example/Rakefile1 +38 -0
  1254. data/vendor/bundle/ruby/3.2.0/gems/rake-13.0.6/doc/example/Rakefile2 +35 -0
  1255. data/vendor/bundle/ruby/3.2.0/gems/rake-13.0.6/doc/example/a.c +6 -0
  1256. data/vendor/bundle/ruby/3.2.0/gems/rake-13.0.6/doc/example/b.c +6 -0
  1257. data/vendor/bundle/ruby/3.2.0/gems/rake-13.0.6/doc/example/main.c +11 -0
  1258. data/vendor/bundle/ruby/3.2.0/gems/rake-13.0.6/doc/glossary.rdoc +42 -0
  1259. data/vendor/bundle/ruby/3.2.0/gems/rake-13.0.6/doc/jamis.rb +592 -0
  1260. data/vendor/bundle/ruby/3.2.0/gems/rake-13.0.6/doc/proto_rake.rdoc +127 -0
  1261. data/vendor/bundle/ruby/3.2.0/gems/rake-13.0.6/doc/rake.1 +156 -0
  1262. data/vendor/bundle/ruby/3.2.0/gems/rake-13.0.6/doc/rakefile.rdoc +622 -0
  1263. data/vendor/bundle/ruby/3.2.0/gems/rake-13.0.6/doc/rational.rdoc +151 -0
  1264. data/vendor/bundle/ruby/3.2.0/gems/rake-13.0.6/exe/rake +27 -0
  1265. data/vendor/bundle/ruby/3.2.0/gems/rake-13.0.6/lib/rake/application.rb +831 -0
  1266. data/vendor/bundle/ruby/3.2.0/gems/rake-13.0.6/lib/rake/backtrace.rb +24 -0
  1267. data/vendor/bundle/ruby/3.2.0/gems/rake-13.0.6/lib/rake/clean.rb +78 -0
  1268. data/vendor/bundle/ruby/3.2.0/gems/rake-13.0.6/lib/rake/cloneable.rb +17 -0
  1269. data/vendor/bundle/ruby/3.2.0/gems/rake-13.0.6/lib/rake/cpu_counter.rb +107 -0
  1270. data/vendor/bundle/ruby/3.2.0/gems/rake-13.0.6/lib/rake/default_loader.rb +15 -0
  1271. data/vendor/bundle/ruby/3.2.0/gems/rake-13.0.6/lib/rake/dsl_definition.rb +195 -0
  1272. data/vendor/bundle/ruby/3.2.0/gems/rake-13.0.6/lib/rake/early_time.rb +22 -0
  1273. data/vendor/bundle/ruby/3.2.0/gems/rake-13.0.6/lib/rake/ext/core.rb +26 -0
  1274. data/vendor/bundle/ruby/3.2.0/gems/rake-13.0.6/lib/rake/ext/string.rb +176 -0
  1275. data/vendor/bundle/ruby/3.2.0/gems/rake-13.0.6/lib/rake/file_creation_task.rb +25 -0
  1276. data/vendor/bundle/ruby/3.2.0/gems/rake-13.0.6/lib/rake/file_list.rb +435 -0
  1277. data/vendor/bundle/ruby/3.2.0/gems/rake-13.0.6/lib/rake/file_task.rb +54 -0
  1278. data/vendor/bundle/ruby/3.2.0/gems/rake-13.0.6/lib/rake/file_utils.rb +134 -0
  1279. data/vendor/bundle/ruby/3.2.0/gems/rake-13.0.6/lib/rake/file_utils_ext.rb +134 -0
  1280. data/vendor/bundle/ruby/3.2.0/gems/rake-13.0.6/lib/rake/invocation_chain.rb +57 -0
  1281. data/vendor/bundle/ruby/3.2.0/gems/rake-13.0.6/lib/rake/invocation_exception_mixin.rb +17 -0
  1282. data/vendor/bundle/ruby/3.2.0/gems/rake-13.0.6/lib/rake/late_time.rb +18 -0
  1283. data/vendor/bundle/ruby/3.2.0/gems/rake-13.0.6/lib/rake/linked_list.rb +112 -0
  1284. data/vendor/bundle/ruby/3.2.0/gems/rake-13.0.6/lib/rake/loaders/makefile.rb +54 -0
  1285. data/vendor/bundle/ruby/3.2.0/gems/rake-13.0.6/lib/rake/multi_task.rb +14 -0
  1286. data/vendor/bundle/ruby/3.2.0/gems/rake-13.0.6/lib/rake/name_space.rb +38 -0
  1287. data/vendor/bundle/ruby/3.2.0/gems/rake-13.0.6/lib/rake/packagetask.rb +222 -0
  1288. data/vendor/bundle/ruby/3.2.0/gems/rake-13.0.6/lib/rake/phony.rb +16 -0
  1289. data/vendor/bundle/ruby/3.2.0/gems/rake-13.0.6/lib/rake/private_reader.rb +21 -0
  1290. data/vendor/bundle/ruby/3.2.0/gems/rake-13.0.6/lib/rake/promise.rb +100 -0
  1291. data/vendor/bundle/ruby/3.2.0/gems/rake-13.0.6/lib/rake/pseudo_status.rb +30 -0
  1292. data/vendor/bundle/ruby/3.2.0/gems/rake-13.0.6/lib/rake/rake_module.rb +67 -0
  1293. data/vendor/bundle/ruby/3.2.0/gems/rake-13.0.6/lib/rake/rake_test_loader.rb +27 -0
  1294. data/vendor/bundle/ruby/3.2.0/gems/rake-13.0.6/lib/rake/rule_recursion_overflow_error.rb +20 -0
  1295. data/vendor/bundle/ruby/3.2.0/gems/rake-13.0.6/lib/rake/scope.rb +43 -0
  1296. data/vendor/bundle/ruby/3.2.0/gems/rake-13.0.6/lib/rake/task.rb +434 -0
  1297. data/vendor/bundle/ruby/3.2.0/gems/rake-13.0.6/lib/rake/task_argument_error.rb +8 -0
  1298. data/vendor/bundle/ruby/3.2.0/gems/rake-13.0.6/lib/rake/task_arguments.rb +109 -0
  1299. data/vendor/bundle/ruby/3.2.0/gems/rake-13.0.6/lib/rake/task_manager.rb +331 -0
  1300. data/vendor/bundle/ruby/3.2.0/gems/rake-13.0.6/lib/rake/tasklib.rb +12 -0
  1301. data/vendor/bundle/ruby/3.2.0/gems/rake-13.0.6/lib/rake/testtask.rb +189 -0
  1302. data/vendor/bundle/ruby/3.2.0/gems/rake-13.0.6/lib/rake/thread_history_display.rb +49 -0
  1303. data/vendor/bundle/ruby/3.2.0/gems/rake-13.0.6/lib/rake/thread_pool.rb +163 -0
  1304. data/vendor/bundle/ruby/3.2.0/gems/rake-13.0.6/lib/rake/trace_output.rb +23 -0
  1305. data/vendor/bundle/ruby/3.2.0/gems/rake-13.0.6/lib/rake/version.rb +10 -0
  1306. data/vendor/bundle/ruby/3.2.0/gems/rake-13.0.6/lib/rake/win32.rb +51 -0
  1307. data/vendor/bundle/ruby/3.2.0/gems/rake-13.0.6/lib/rake.rb +71 -0
  1308. data/vendor/bundle/ruby/3.2.0/gems/rake-13.0.6/rake.gemspec +100 -0
  1309. data/vendor/bundle/ruby/3.2.0/gems/reline-0.6.3/BSDL +22 -0
  1310. data/vendor/bundle/ruby/3.2.0/gems/reline-0.6.3/COPYING +56 -0
  1311. data/vendor/bundle/ruby/3.2.0/gems/reline-0.6.3/README.md +94 -0
  1312. data/vendor/bundle/ruby/3.2.0/gems/reline-0.6.3/lib/reline/config.rb +378 -0
  1313. data/vendor/bundle/ruby/3.2.0/gems/reline-0.6.3/lib/reline/face.rb +199 -0
  1314. data/vendor/bundle/ruby/3.2.0/gems/reline-0.6.3/lib/reline/history.rb +76 -0
  1315. data/vendor/bundle/ruby/3.2.0/gems/reline-0.6.3/lib/reline/io/ansi.rb +310 -0
  1316. data/vendor/bundle/ruby/3.2.0/gems/reline-0.6.3/lib/reline/io/dumb.rb +120 -0
  1317. data/vendor/bundle/ruby/3.2.0/gems/reline-0.6.3/lib/reline/io/windows.rb +530 -0
  1318. data/vendor/bundle/ruby/3.2.0/gems/reline-0.6.3/lib/reline/io.rb +55 -0
  1319. data/vendor/bundle/ruby/3.2.0/gems/reline-0.6.3/lib/reline/key_actor/base.rb +37 -0
  1320. data/vendor/bundle/ruby/3.2.0/gems/reline-0.6.3/lib/reline/key_actor/composite.rb +17 -0
  1321. data/vendor/bundle/ruby/3.2.0/gems/reline-0.6.3/lib/reline/key_actor/emacs.rb +517 -0
  1322. data/vendor/bundle/ruby/3.2.0/gems/reline-0.6.3/lib/reline/key_actor/vi_command.rb +518 -0
  1323. data/vendor/bundle/ruby/3.2.0/gems/reline-0.6.3/lib/reline/key_actor/vi_insert.rb +517 -0
  1324. data/vendor/bundle/ruby/3.2.0/gems/reline-0.6.3/lib/reline/key_actor.rb +8 -0
  1325. data/vendor/bundle/ruby/3.2.0/gems/reline-0.6.3/lib/reline/key_stroke.rb +119 -0
  1326. data/vendor/bundle/ruby/3.2.0/gems/reline-0.6.3/lib/reline/kill_ring.rb +125 -0
  1327. data/vendor/bundle/ruby/3.2.0/gems/reline-0.6.3/lib/reline/line_editor.rb +2356 -0
  1328. data/vendor/bundle/ruby/3.2.0/gems/reline-0.6.3/lib/reline/unicode/east_asian_width.rb +1292 -0
  1329. data/vendor/bundle/ruby/3.2.0/gems/reline-0.6.3/lib/reline/unicode.rb +421 -0
  1330. data/vendor/bundle/ruby/3.2.0/gems/reline-0.6.3/lib/reline/version.rb +3 -0
  1331. data/vendor/bundle/ruby/3.2.0/gems/reline-0.6.3/lib/reline.rb +527 -0
  1332. data/vendor/bundle/ruby/3.2.0/gems/reline-0.6.3/license_of_rb-readline +25 -0
  1333. data/vendor/bundle/ruby/3.2.0/gems/rspec-3.13.2/LICENSE.md +27 -0
  1334. data/vendor/bundle/ruby/3.2.0/gems/rspec-3.13.2/README.md +47 -0
  1335. data/vendor/bundle/ruby/3.2.0/gems/rspec-3.13.2/lib/rspec/version.rb +5 -0
  1336. data/vendor/bundle/ruby/3.2.0/gems/rspec-3.13.2/lib/rspec.rb +3 -0
  1337. data/vendor/bundle/ruby/3.2.0/gems/rspec-core-3.13.6/.document +5 -0
  1338. data/vendor/bundle/ruby/3.2.0/gems/rspec-core-3.13.6/.yardopts +8 -0
  1339. data/vendor/bundle/ruby/3.2.0/gems/rspec-core-3.13.6/Changelog.md +2447 -0
  1340. data/vendor/bundle/ruby/3.2.0/gems/rspec-core-3.13.6/LICENSE.md +26 -0
  1341. data/vendor/bundle/ruby/3.2.0/gems/rspec-core-3.13.6/README.md +389 -0
  1342. data/vendor/bundle/ruby/3.2.0/gems/rspec-core-3.13.6/exe/rspec +4 -0
  1343. data/vendor/bundle/ruby/3.2.0/gems/rspec-core-3.13.6/lib/rspec/autorun.rb +3 -0
  1344. data/vendor/bundle/ruby/3.2.0/gems/rspec-core-3.13.6/lib/rspec/core/backtrace_formatter.rb +65 -0
  1345. data/vendor/bundle/ruby/3.2.0/gems/rspec-core-3.13.6/lib/rspec/core/bisect/coordinator.rb +62 -0
  1346. data/vendor/bundle/ruby/3.2.0/gems/rspec-core-3.13.6/lib/rspec/core/bisect/example_minimizer.rb +173 -0
  1347. data/vendor/bundle/ruby/3.2.0/gems/rspec-core-3.13.6/lib/rspec/core/bisect/fork_runner.rb +140 -0
  1348. data/vendor/bundle/ruby/3.2.0/gems/rspec-core-3.13.6/lib/rspec/core/bisect/server.rb +61 -0
  1349. data/vendor/bundle/ruby/3.2.0/gems/rspec-core-3.13.6/lib/rspec/core/bisect/shell_command.rb +126 -0
  1350. data/vendor/bundle/ruby/3.2.0/gems/rspec-core-3.13.6/lib/rspec/core/bisect/shell_runner.rb +73 -0
  1351. data/vendor/bundle/ruby/3.2.0/gems/rspec-core-3.13.6/lib/rspec/core/bisect/utilities.rb +69 -0
  1352. data/vendor/bundle/ruby/3.2.0/gems/rspec-core-3.13.6/lib/rspec/core/configuration.rb +2419 -0
  1353. data/vendor/bundle/ruby/3.2.0/gems/rspec-core-3.13.6/lib/rspec/core/configuration_options.rb +240 -0
  1354. data/vendor/bundle/ruby/3.2.0/gems/rspec-core-3.13.6/lib/rspec/core/did_you_mean.rb +52 -0
  1355. data/vendor/bundle/ruby/3.2.0/gems/rspec-core-3.13.6/lib/rspec/core/drb.rb +120 -0
  1356. data/vendor/bundle/ruby/3.2.0/gems/rspec-core-3.13.6/lib/rspec/core/dsl.rb +98 -0
  1357. data/vendor/bundle/ruby/3.2.0/gems/rspec-core-3.13.6/lib/rspec/core/example.rb +666 -0
  1358. data/vendor/bundle/ruby/3.2.0/gems/rspec-core-3.13.6/lib/rspec/core/example_group.rb +912 -0
  1359. data/vendor/bundle/ruby/3.2.0/gems/rspec-core-3.13.6/lib/rspec/core/example_status_persister.rb +235 -0
  1360. data/vendor/bundle/ruby/3.2.0/gems/rspec-core-3.13.6/lib/rspec/core/filter_manager.rb +231 -0
  1361. data/vendor/bundle/ruby/3.2.0/gems/rspec-core-3.13.6/lib/rspec/core/flat_map.rb +20 -0
  1362. data/vendor/bundle/ruby/3.2.0/gems/rspec-core-3.13.6/lib/rspec/core/formatters/base_bisect_formatter.rb +45 -0
  1363. data/vendor/bundle/ruby/3.2.0/gems/rspec-core-3.13.6/lib/rspec/core/formatters/base_formatter.rb +70 -0
  1364. data/vendor/bundle/ruby/3.2.0/gems/rspec-core-3.13.6/lib/rspec/core/formatters/base_text_formatter.rb +75 -0
  1365. data/vendor/bundle/ruby/3.2.0/gems/rspec-core-3.13.6/lib/rspec/core/formatters/bisect_drb_formatter.rb +29 -0
  1366. data/vendor/bundle/ruby/3.2.0/gems/rspec-core-3.13.6/lib/rspec/core/formatters/bisect_progress_formatter.rb +157 -0
  1367. data/vendor/bundle/ruby/3.2.0/gems/rspec-core-3.13.6/lib/rspec/core/formatters/console_codes.rb +76 -0
  1368. data/vendor/bundle/ruby/3.2.0/gems/rspec-core-3.13.6/lib/rspec/core/formatters/deprecation_formatter.rb +223 -0
  1369. data/vendor/bundle/ruby/3.2.0/gems/rspec-core-3.13.6/lib/rspec/core/formatters/documentation_formatter.rb +102 -0
  1370. data/vendor/bundle/ruby/3.2.0/gems/rspec-core-3.13.6/lib/rspec/core/formatters/exception_presenter.rb +553 -0
  1371. data/vendor/bundle/ruby/3.2.0/gems/rspec-core-3.13.6/lib/rspec/core/formatters/failure_list_formatter.rb +23 -0
  1372. data/vendor/bundle/ruby/3.2.0/gems/rspec-core-3.13.6/lib/rspec/core/formatters/fallback_message_formatter.rb +28 -0
  1373. data/vendor/bundle/ruby/3.2.0/gems/rspec-core-3.13.6/lib/rspec/core/formatters/helpers.rb +118 -0
  1374. data/vendor/bundle/ruby/3.2.0/gems/rspec-core-3.13.6/lib/rspec/core/formatters/html_formatter.rb +153 -0
  1375. data/vendor/bundle/ruby/3.2.0/gems/rspec-core-3.13.6/lib/rspec/core/formatters/html_printer.rb +412 -0
  1376. data/vendor/bundle/ruby/3.2.0/gems/rspec-core-3.13.6/lib/rspec/core/formatters/html_snippet_extractor.rb +122 -0
  1377. data/vendor/bundle/ruby/3.2.0/gems/rspec-core-3.13.6/lib/rspec/core/formatters/json_formatter.rb +103 -0
  1378. data/vendor/bundle/ruby/3.2.0/gems/rspec-core-3.13.6/lib/rspec/core/formatters/profile_formatter.rb +68 -0
  1379. data/vendor/bundle/ruby/3.2.0/gems/rspec-core-3.13.6/lib/rspec/core/formatters/progress_formatter.rb +29 -0
  1380. data/vendor/bundle/ruby/3.2.0/gems/rspec-core-3.13.6/lib/rspec/core/formatters/protocol.rb +182 -0
  1381. data/vendor/bundle/ruby/3.2.0/gems/rspec-core-3.13.6/lib/rspec/core/formatters/snippet_extractor.rb +134 -0
  1382. data/vendor/bundle/ruby/3.2.0/gems/rspec-core-3.13.6/lib/rspec/core/formatters/syntax_highlighter.rb +91 -0
  1383. data/vendor/bundle/ruby/3.2.0/gems/rspec-core-3.13.6/lib/rspec/core/formatters.rb +279 -0
  1384. data/vendor/bundle/ruby/3.2.0/gems/rspec-core-3.13.6/lib/rspec/core/hooks.rb +646 -0
  1385. data/vendor/bundle/ruby/3.2.0/gems/rspec-core-3.13.6/lib/rspec/core/invocations.rb +87 -0
  1386. data/vendor/bundle/ruby/3.2.0/gems/rspec-core-3.13.6/lib/rspec/core/memoized_helpers.rb +580 -0
  1387. data/vendor/bundle/ruby/3.2.0/gems/rspec-core-3.13.6/lib/rspec/core/metadata.rb +498 -0
  1388. data/vendor/bundle/ruby/3.2.0/gems/rspec-core-3.13.6/lib/rspec/core/metadata_filter.rb +255 -0
  1389. data/vendor/bundle/ruby/3.2.0/gems/rspec-core-3.13.6/lib/rspec/core/minitest_assertions_adapter.rb +31 -0
  1390. data/vendor/bundle/ruby/3.2.0/gems/rspec-core-3.13.6/lib/rspec/core/mocking_adapters/flexmock.rb +31 -0
  1391. data/vendor/bundle/ruby/3.2.0/gems/rspec-core-3.13.6/lib/rspec/core/mocking_adapters/mocha.rb +57 -0
  1392. data/vendor/bundle/ruby/3.2.0/gems/rspec-core-3.13.6/lib/rspec/core/mocking_adapters/null.rb +14 -0
  1393. data/vendor/bundle/ruby/3.2.0/gems/rspec-core-3.13.6/lib/rspec/core/mocking_adapters/rr.rb +31 -0
  1394. data/vendor/bundle/ruby/3.2.0/gems/rspec-core-3.13.6/lib/rspec/core/mocking_adapters/rspec.rb +32 -0
  1395. data/vendor/bundle/ruby/3.2.0/gems/rspec-core-3.13.6/lib/rspec/core/notifications.rb +523 -0
  1396. data/vendor/bundle/ruby/3.2.0/gems/rspec-core-3.13.6/lib/rspec/core/option_parser.rb +325 -0
  1397. data/vendor/bundle/ruby/3.2.0/gems/rspec-core-3.13.6/lib/rspec/core/ordering.rb +208 -0
  1398. data/vendor/bundle/ruby/3.2.0/gems/rspec-core-3.13.6/lib/rspec/core/output_wrapper.rb +29 -0
  1399. data/vendor/bundle/ruby/3.2.0/gems/rspec-core-3.13.6/lib/rspec/core/pending.rb +157 -0
  1400. data/vendor/bundle/ruby/3.2.0/gems/rspec-core-3.13.6/lib/rspec/core/profiler.rb +34 -0
  1401. data/vendor/bundle/ruby/3.2.0/gems/rspec-core-3.13.6/lib/rspec/core/project_initializer/.rspec +1 -0
  1402. data/vendor/bundle/ruby/3.2.0/gems/rspec-core-3.13.6/lib/rspec/core/project_initializer/spec/spec_helper.rb +98 -0
  1403. data/vendor/bundle/ruby/3.2.0/gems/rspec-core-3.13.6/lib/rspec/core/project_initializer.rb +48 -0
  1404. data/vendor/bundle/ruby/3.2.0/gems/rspec-core-3.13.6/lib/rspec/core/rake_task.rb +190 -0
  1405. data/vendor/bundle/ruby/3.2.0/gems/rspec-core-3.13.6/lib/rspec/core/reporter.rb +266 -0
  1406. data/vendor/bundle/ruby/3.2.0/gems/rspec-core-3.13.6/lib/rspec/core/ruby_project.rb +53 -0
  1407. data/vendor/bundle/ruby/3.2.0/gems/rspec-core-3.13.6/lib/rspec/core/runner.rb +216 -0
  1408. data/vendor/bundle/ruby/3.2.0/gems/rspec-core-3.13.6/lib/rspec/core/sandbox.rb +37 -0
  1409. data/vendor/bundle/ruby/3.2.0/gems/rspec-core-3.13.6/lib/rspec/core/set.rb +54 -0
  1410. data/vendor/bundle/ruby/3.2.0/gems/rspec-core-3.13.6/lib/rspec/core/shared_context.rb +55 -0
  1411. data/vendor/bundle/ruby/3.2.0/gems/rspec-core-3.13.6/lib/rspec/core/shared_example_group.rb +271 -0
  1412. data/vendor/bundle/ruby/3.2.0/gems/rspec-core-3.13.6/lib/rspec/core/shell_escape.rb +49 -0
  1413. data/vendor/bundle/ruby/3.2.0/gems/rspec-core-3.13.6/lib/rspec/core/test_unit_assertions_adapter.rb +30 -0
  1414. data/vendor/bundle/ruby/3.2.0/gems/rspec-core-3.13.6/lib/rspec/core/version.rb +9 -0
  1415. data/vendor/bundle/ruby/3.2.0/gems/rspec-core-3.13.6/lib/rspec/core/warnings.rb +40 -0
  1416. data/vendor/bundle/ruby/3.2.0/gems/rspec-core-3.13.6/lib/rspec/core/world.rb +287 -0
  1417. data/vendor/bundle/ruby/3.2.0/gems/rspec-core-3.13.6/lib/rspec/core.rb +212 -0
  1418. data/vendor/bundle/ruby/3.2.0/gems/rspec-expectations-3.13.5/.document +5 -0
  1419. data/vendor/bundle/ruby/3.2.0/gems/rspec-expectations-3.13.5/.yardopts +6 -0
  1420. data/vendor/bundle/ruby/3.2.0/gems/rspec-expectations-3.13.5/Changelog.md +1366 -0
  1421. data/vendor/bundle/ruby/3.2.0/gems/rspec-expectations-3.13.5/LICENSE.md +25 -0
  1422. data/vendor/bundle/ruby/3.2.0/gems/rspec-expectations-3.13.5/README.md +326 -0
  1423. data/vendor/bundle/ruby/3.2.0/gems/rspec-expectations-3.13.5/lib/rspec/expectations/block_snippet_extractor.rb +255 -0
  1424. data/vendor/bundle/ruby/3.2.0/gems/rspec-expectations-3.13.5/lib/rspec/expectations/configuration.rb +244 -0
  1425. data/vendor/bundle/ruby/3.2.0/gems/rspec-expectations-3.13.5/lib/rspec/expectations/expectation_target.rb +163 -0
  1426. data/vendor/bundle/ruby/3.2.0/gems/rspec-expectations-3.13.5/lib/rspec/expectations/fail_with.rb +39 -0
  1427. data/vendor/bundle/ruby/3.2.0/gems/rspec-expectations-3.13.5/lib/rspec/expectations/failure_aggregator.rb +236 -0
  1428. data/vendor/bundle/ruby/3.2.0/gems/rspec-expectations-3.13.5/lib/rspec/expectations/handler.rb +181 -0
  1429. data/vendor/bundle/ruby/3.2.0/gems/rspec-expectations-3.13.5/lib/rspec/expectations/minitest_integration.rb +58 -0
  1430. data/vendor/bundle/ruby/3.2.0/gems/rspec-expectations-3.13.5/lib/rspec/expectations/syntax.rb +132 -0
  1431. data/vendor/bundle/ruby/3.2.0/gems/rspec-expectations-3.13.5/lib/rspec/expectations/version.rb +8 -0
  1432. data/vendor/bundle/ruby/3.2.0/gems/rspec-expectations-3.13.5/lib/rspec/expectations.rb +82 -0
  1433. data/vendor/bundle/ruby/3.2.0/gems/rspec-expectations-3.13.5/lib/rspec/matchers/aliased_matcher.rb +116 -0
  1434. data/vendor/bundle/ruby/3.2.0/gems/rspec-expectations-3.13.5/lib/rspec/matchers/built_in/all.rb +86 -0
  1435. data/vendor/bundle/ruby/3.2.0/gems/rspec-expectations-3.13.5/lib/rspec/matchers/built_in/base_matcher.rb +225 -0
  1436. data/vendor/bundle/ruby/3.2.0/gems/rspec-expectations-3.13.5/lib/rspec/matchers/built_in/be.rb +191 -0
  1437. data/vendor/bundle/ruby/3.2.0/gems/rspec-expectations-3.13.5/lib/rspec/matchers/built_in/be_between.rb +77 -0
  1438. data/vendor/bundle/ruby/3.2.0/gems/rspec-expectations-3.13.5/lib/rspec/matchers/built_in/be_instance_of.rb +26 -0
  1439. data/vendor/bundle/ruby/3.2.0/gems/rspec-expectations-3.13.5/lib/rspec/matchers/built_in/be_kind_of.rb +20 -0
  1440. data/vendor/bundle/ruby/3.2.0/gems/rspec-expectations-3.13.5/lib/rspec/matchers/built_in/be_within.rb +72 -0
  1441. data/vendor/bundle/ruby/3.2.0/gems/rspec-expectations-3.13.5/lib/rspec/matchers/built_in/change.rb +452 -0
  1442. data/vendor/bundle/ruby/3.2.0/gems/rspec-expectations-3.13.5/lib/rspec/matchers/built_in/compound.rb +293 -0
  1443. data/vendor/bundle/ruby/3.2.0/gems/rspec-expectations-3.13.5/lib/rspec/matchers/built_in/contain_exactly.rb +312 -0
  1444. data/vendor/bundle/ruby/3.2.0/gems/rspec-expectations-3.13.5/lib/rspec/matchers/built_in/count_expectation.rb +171 -0
  1445. data/vendor/bundle/ruby/3.2.0/gems/rspec-expectations-3.13.5/lib/rspec/matchers/built_in/cover.rb +24 -0
  1446. data/vendor/bundle/ruby/3.2.0/gems/rspec-expectations-3.13.5/lib/rspec/matchers/built_in/eq.rb +44 -0
  1447. data/vendor/bundle/ruby/3.2.0/gems/rspec-expectations-3.13.5/lib/rspec/matchers/built_in/eql.rb +38 -0
  1448. data/vendor/bundle/ruby/3.2.0/gems/rspec-expectations-3.13.5/lib/rspec/matchers/built_in/equal.rb +81 -0
  1449. data/vendor/bundle/ruby/3.2.0/gems/rspec-expectations-3.13.5/lib/rspec/matchers/built_in/exist.rb +90 -0
  1450. data/vendor/bundle/ruby/3.2.0/gems/rspec-expectations-3.13.5/lib/rspec/matchers/built_in/has.rb +194 -0
  1451. data/vendor/bundle/ruby/3.2.0/gems/rspec-expectations-3.13.5/lib/rspec/matchers/built_in/have_attributes.rb +114 -0
  1452. data/vendor/bundle/ruby/3.2.0/gems/rspec-expectations-3.13.5/lib/rspec/matchers/built_in/include.rb +218 -0
  1453. data/vendor/bundle/ruby/3.2.0/gems/rspec-expectations-3.13.5/lib/rspec/matchers/built_in/match.rb +120 -0
  1454. data/vendor/bundle/ruby/3.2.0/gems/rspec-expectations-3.13.5/lib/rspec/matchers/built_in/operators.rb +128 -0
  1455. data/vendor/bundle/ruby/3.2.0/gems/rspec-expectations-3.13.5/lib/rspec/matchers/built_in/output.rb +207 -0
  1456. data/vendor/bundle/ruby/3.2.0/gems/rspec-expectations-3.13.5/lib/rspec/matchers/built_in/raise_error.rb +275 -0
  1457. data/vendor/bundle/ruby/3.2.0/gems/rspec-expectations-3.13.5/lib/rspec/matchers/built_in/respond_to.rb +200 -0
  1458. data/vendor/bundle/ruby/3.2.0/gems/rspec-expectations-3.13.5/lib/rspec/matchers/built_in/satisfy.rb +62 -0
  1459. data/vendor/bundle/ruby/3.2.0/gems/rspec-expectations-3.13.5/lib/rspec/matchers/built_in/start_or_end_with.rb +94 -0
  1460. data/vendor/bundle/ruby/3.2.0/gems/rspec-expectations-3.13.5/lib/rspec/matchers/built_in/throw_symbol.rb +138 -0
  1461. data/vendor/bundle/ruby/3.2.0/gems/rspec-expectations-3.13.5/lib/rspec/matchers/built_in/yield.rb +375 -0
  1462. data/vendor/bundle/ruby/3.2.0/gems/rspec-expectations-3.13.5/lib/rspec/matchers/built_in.rb +53 -0
  1463. data/vendor/bundle/ruby/3.2.0/gems/rspec-expectations-3.13.5/lib/rspec/matchers/composable.rb +171 -0
  1464. data/vendor/bundle/ruby/3.2.0/gems/rspec-expectations-3.13.5/lib/rspec/matchers/dsl.rb +546 -0
  1465. data/vendor/bundle/ruby/3.2.0/gems/rspec-expectations-3.13.5/lib/rspec/matchers/english_phrasing.rb +60 -0
  1466. data/vendor/bundle/ruby/3.2.0/gems/rspec-expectations-3.13.5/lib/rspec/matchers/fail_matchers.rb +42 -0
  1467. data/vendor/bundle/ruby/3.2.0/gems/rspec-expectations-3.13.5/lib/rspec/matchers/generated_descriptions.rb +41 -0
  1468. data/vendor/bundle/ruby/3.2.0/gems/rspec-expectations-3.13.5/lib/rspec/matchers/matcher_delegator.rb +61 -0
  1469. data/vendor/bundle/ruby/3.2.0/gems/rspec-expectations-3.13.5/lib/rspec/matchers/matcher_protocol.rb +105 -0
  1470. data/vendor/bundle/ruby/3.2.0/gems/rspec-expectations-3.13.5/lib/rspec/matchers/multi_matcher_diff.rb +82 -0
  1471. data/vendor/bundle/ruby/3.2.0/gems/rspec-expectations-3.13.5/lib/rspec/matchers.rb +1046 -0
  1472. data/vendor/bundle/ruby/3.2.0/gems/rspec-mocks-3.13.8/.document +5 -0
  1473. data/vendor/bundle/ruby/3.2.0/gems/rspec-mocks-3.13.8/.yardopts +6 -0
  1474. data/vendor/bundle/ruby/3.2.0/gems/rspec-mocks-3.13.8/Changelog.md +1351 -0
  1475. data/vendor/bundle/ruby/3.2.0/gems/rspec-mocks-3.13.8/LICENSE.md +25 -0
  1476. data/vendor/bundle/ruby/3.2.0/gems/rspec-mocks-3.13.8/README.md +465 -0
  1477. data/vendor/bundle/ruby/3.2.0/gems/rspec-mocks-3.13.8/lib/rspec/mocks/any_instance/chain.rb +111 -0
  1478. data/vendor/bundle/ruby/3.2.0/gems/rspec-mocks-3.13.8/lib/rspec/mocks/any_instance/error_generator.rb +31 -0
  1479. data/vendor/bundle/ruby/3.2.0/gems/rspec-mocks-3.13.8/lib/rspec/mocks/any_instance/expect_chain_chain.rb +31 -0
  1480. data/vendor/bundle/ruby/3.2.0/gems/rspec-mocks-3.13.8/lib/rspec/mocks/any_instance/expectation_chain.rb +50 -0
  1481. data/vendor/bundle/ruby/3.2.0/gems/rspec-mocks-3.13.8/lib/rspec/mocks/any_instance/message_chains.rb +83 -0
  1482. data/vendor/bundle/ruby/3.2.0/gems/rspec-mocks-3.13.8/lib/rspec/mocks/any_instance/proxy.rb +125 -0
  1483. data/vendor/bundle/ruby/3.2.0/gems/rspec-mocks-3.13.8/lib/rspec/mocks/any_instance/recorder.rb +301 -0
  1484. data/vendor/bundle/ruby/3.2.0/gems/rspec-mocks-3.13.8/lib/rspec/mocks/any_instance/stub_chain.rb +51 -0
  1485. data/vendor/bundle/ruby/3.2.0/gems/rspec-mocks-3.13.8/lib/rspec/mocks/any_instance/stub_chain_chain.rb +23 -0
  1486. data/vendor/bundle/ruby/3.2.0/gems/rspec-mocks-3.13.8/lib/rspec/mocks/any_instance.rb +11 -0
  1487. data/vendor/bundle/ruby/3.2.0/gems/rspec-mocks-3.13.8/lib/rspec/mocks/argument_list_matcher.rb +117 -0
  1488. data/vendor/bundle/ruby/3.2.0/gems/rspec-mocks-3.13.8/lib/rspec/mocks/argument_matchers.rb +366 -0
  1489. data/vendor/bundle/ruby/3.2.0/gems/rspec-mocks-3.13.8/lib/rspec/mocks/configuration.rb +212 -0
  1490. data/vendor/bundle/ruby/3.2.0/gems/rspec-mocks-3.13.8/lib/rspec/mocks/error_generator.rb +390 -0
  1491. data/vendor/bundle/ruby/3.2.0/gems/rspec-mocks-3.13.8/lib/rspec/mocks/example_methods.rb +434 -0
  1492. data/vendor/bundle/ruby/3.2.0/gems/rspec-mocks-3.13.8/lib/rspec/mocks/instance_method_stasher.rb +146 -0
  1493. data/vendor/bundle/ruby/3.2.0/gems/rspec-mocks-3.13.8/lib/rspec/mocks/marshal_extension.rb +41 -0
  1494. data/vendor/bundle/ruby/3.2.0/gems/rspec-mocks-3.13.8/lib/rspec/mocks/matchers/expectation_customization.rb +20 -0
  1495. data/vendor/bundle/ruby/3.2.0/gems/rspec-mocks-3.13.8/lib/rspec/mocks/matchers/have_received.rb +134 -0
  1496. data/vendor/bundle/ruby/3.2.0/gems/rspec-mocks-3.13.8/lib/rspec/mocks/matchers/receive.rb +134 -0
  1497. data/vendor/bundle/ruby/3.2.0/gems/rspec-mocks-3.13.8/lib/rspec/mocks/matchers/receive_message_chain.rb +82 -0
  1498. data/vendor/bundle/ruby/3.2.0/gems/rspec-mocks-3.13.8/lib/rspec/mocks/matchers/receive_messages.rb +77 -0
  1499. data/vendor/bundle/ruby/3.2.0/gems/rspec-mocks-3.13.8/lib/rspec/mocks/message_chain.rb +87 -0
  1500. data/vendor/bundle/ruby/3.2.0/gems/rspec-mocks-3.13.8/lib/rspec/mocks/message_expectation.rb +856 -0
  1501. data/vendor/bundle/ruby/3.2.0/gems/rspec-mocks-3.13.8/lib/rspec/mocks/method_double.rb +316 -0
  1502. data/vendor/bundle/ruby/3.2.0/gems/rspec-mocks-3.13.8/lib/rspec/mocks/method_reference.rb +214 -0
  1503. data/vendor/bundle/ruby/3.2.0/gems/rspec-mocks-3.13.8/lib/rspec/mocks/minitest_integration.rb +68 -0
  1504. data/vendor/bundle/ruby/3.2.0/gems/rspec-mocks-3.13.8/lib/rspec/mocks/mutate_const.rb +339 -0
  1505. data/vendor/bundle/ruby/3.2.0/gems/rspec-mocks-3.13.8/lib/rspec/mocks/object_reference.rb +149 -0
  1506. data/vendor/bundle/ruby/3.2.0/gems/rspec-mocks-3.13.8/lib/rspec/mocks/order_group.rb +92 -0
  1507. data/vendor/bundle/ruby/3.2.0/gems/rspec-mocks-3.13.8/lib/rspec/mocks/proxy.rb +517 -0
  1508. data/vendor/bundle/ruby/3.2.0/gems/rspec-mocks-3.13.8/lib/rspec/mocks/space.rb +238 -0
  1509. data/vendor/bundle/ruby/3.2.0/gems/rspec-mocks-3.13.8/lib/rspec/mocks/standalone.rb +3 -0
  1510. data/vendor/bundle/ruby/3.2.0/gems/rspec-mocks-3.13.8/lib/rspec/mocks/syntax.rb +325 -0
  1511. data/vendor/bundle/ruby/3.2.0/gems/rspec-mocks-3.13.8/lib/rspec/mocks/targets.rb +124 -0
  1512. data/vendor/bundle/ruby/3.2.0/gems/rspec-mocks-3.13.8/lib/rspec/mocks/test_double.rb +174 -0
  1513. data/vendor/bundle/ruby/3.2.0/gems/rspec-mocks-3.13.8/lib/rspec/mocks/verifying_double.rb +125 -0
  1514. data/vendor/bundle/ruby/3.2.0/gems/rspec-mocks-3.13.8/lib/rspec/mocks/verifying_message_expectation.rb +55 -0
  1515. data/vendor/bundle/ruby/3.2.0/gems/rspec-mocks-3.13.8/lib/rspec/mocks/verifying_proxy.rb +221 -0
  1516. data/vendor/bundle/ruby/3.2.0/gems/rspec-mocks-3.13.8/lib/rspec/mocks/version.rb +9 -0
  1517. data/vendor/bundle/ruby/3.2.0/gems/rspec-mocks-3.13.8/lib/rspec/mocks.rb +133 -0
  1518. data/vendor/bundle/ruby/3.2.0/gems/rspec-support-3.13.7/Changelog.md +444 -0
  1519. data/vendor/bundle/ruby/3.2.0/gems/rspec-support-3.13.7/LICENSE.md +23 -0
  1520. data/vendor/bundle/ruby/3.2.0/gems/rspec-support-3.13.7/README.md +40 -0
  1521. data/vendor/bundle/ruby/3.2.0/gems/rspec-support-3.13.7/lib/rspec/support/caller_filter.rb +85 -0
  1522. data/vendor/bundle/ruby/3.2.0/gems/rspec-support-3.13.7/lib/rspec/support/comparable_version.rb +48 -0
  1523. data/vendor/bundle/ruby/3.2.0/gems/rspec-support-3.13.7/lib/rspec/support/differ.rb +216 -0
  1524. data/vendor/bundle/ruby/3.2.0/gems/rspec-support-3.13.7/lib/rspec/support/directory_maker.rb +65 -0
  1525. data/vendor/bundle/ruby/3.2.0/gems/rspec-support-3.13.7/lib/rspec/support/encoded_string.rb +163 -0
  1526. data/vendor/bundle/ruby/3.2.0/gems/rspec-support-3.13.7/lib/rspec/support/fuzzy_matcher.rb +53 -0
  1527. data/vendor/bundle/ruby/3.2.0/gems/rspec-support-3.13.7/lib/rspec/support/hunk_generator.rb +49 -0
  1528. data/vendor/bundle/ruby/3.2.0/gems/rspec-support-3.13.7/lib/rspec/support/matcher_definition.rb +44 -0
  1529. data/vendor/bundle/ruby/3.2.0/gems/rspec-support-3.13.7/lib/rspec/support/method_signature_verifier.rb +467 -0
  1530. data/vendor/bundle/ruby/3.2.0/gems/rspec-support-3.13.7/lib/rspec/support/mutex.rb +75 -0
  1531. data/vendor/bundle/ruby/3.2.0/gems/rspec-support-3.13.7/lib/rspec/support/object_formatter.rb +279 -0
  1532. data/vendor/bundle/ruby/3.2.0/gems/rspec-support-3.13.7/lib/rspec/support/recursive_const_methods.rb +78 -0
  1533. data/vendor/bundle/ruby/3.2.0/gems/rspec-support-3.13.7/lib/rspec/support/reentrant_mutex.rb +80 -0
  1534. data/vendor/bundle/ruby/3.2.0/gems/rspec-support-3.13.7/lib/rspec/support/ruby_features.rb +221 -0
  1535. data/vendor/bundle/ruby/3.2.0/gems/rspec-support-3.13.7/lib/rspec/support/source/location.rb +23 -0
  1536. data/vendor/bundle/ruby/3.2.0/gems/rspec-support-3.13.7/lib/rspec/support/source/node.rb +112 -0
  1537. data/vendor/bundle/ruby/3.2.0/gems/rspec-support-3.13.7/lib/rspec/support/source/token.rb +96 -0
  1538. data/vendor/bundle/ruby/3.2.0/gems/rspec-support-3.13.7/lib/rspec/support/source.rb +87 -0
  1539. data/vendor/bundle/ruby/3.2.0/gems/rspec-support-3.13.7/lib/rspec/support/spec/deprecation_helpers.rb +50 -0
  1540. data/vendor/bundle/ruby/3.2.0/gems/rspec-support-3.13.7/lib/rspec/support/spec/diff_helpers.rb +45 -0
  1541. data/vendor/bundle/ruby/3.2.0/gems/rspec-support-3.13.7/lib/rspec/support/spec/formatting_support.rb +11 -0
  1542. data/vendor/bundle/ruby/3.2.0/gems/rspec-support-3.13.7/lib/rspec/support/spec/in_sub_process.rb +73 -0
  1543. data/vendor/bundle/ruby/3.2.0/gems/rspec-support-3.13.7/lib/rspec/support/spec/library_wide_checks.rb +152 -0
  1544. data/vendor/bundle/ruby/3.2.0/gems/rspec-support-3.13.7/lib/rspec/support/spec/shell_out.rb +115 -0
  1545. data/vendor/bundle/ruby/3.2.0/gems/rspec-support-3.13.7/lib/rspec/support/spec/stderr_splitter.rb +77 -0
  1546. data/vendor/bundle/ruby/3.2.0/gems/rspec-support-3.13.7/lib/rspec/support/spec/string_matcher.rb +47 -0
  1547. data/vendor/bundle/ruby/3.2.0/gems/rspec-support-3.13.7/lib/rspec/support/spec/with_isolated_directory.rb +15 -0
  1548. data/vendor/bundle/ruby/3.2.0/gems/rspec-support-3.13.7/lib/rspec/support/spec/with_isolated_stderr.rb +15 -0
  1549. data/vendor/bundle/ruby/3.2.0/gems/rspec-support-3.13.7/lib/rspec/support/spec.rb +84 -0
  1550. data/vendor/bundle/ruby/3.2.0/gems/rspec-support-3.13.7/lib/rspec/support/version.rb +9 -0
  1551. data/vendor/bundle/ruby/3.2.0/gems/rspec-support-3.13.7/lib/rspec/support/warnings.rb +41 -0
  1552. data/vendor/bundle/ruby/3.2.0/gems/rspec-support-3.13.7/lib/rspec/support/with_keywords_when_needed.rb +35 -0
  1553. data/vendor/bundle/ruby/3.2.0/gems/rspec-support-3.13.7/lib/rspec/support.rb +163 -0
  1554. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/LICENSE.txt +20 -0
  1555. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/README.md +221 -0
  1556. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/assets/logo.png +0 -0
  1557. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/assets/output.html.erb +261 -0
  1558. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/bin/console +9 -0
  1559. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/bin/setup +7 -0
  1560. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/config/default.yml +4408 -0
  1561. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/exe/rubocop +17 -0
  1562. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/ast/builder.rb +75 -0
  1563. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/ast/node/and_node.rb +29 -0
  1564. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/ast/node/args_node.rb +29 -0
  1565. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/ast/node/array_node.rb +57 -0
  1566. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/ast/node/block_node.rb +115 -0
  1567. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/ast/node/break_node.rb +17 -0
  1568. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/ast/node/case_node.rb +56 -0
  1569. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/ast/node/def_node.rb +71 -0
  1570. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/ast/node/defined_node.rb +17 -0
  1571. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/ast/node/ensure_node.rb +17 -0
  1572. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/ast/node/for_node.rb +53 -0
  1573. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/ast/node/hash_node.rb +109 -0
  1574. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/ast/node/if_node.rb +175 -0
  1575. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/ast/node/keyword_splat_node.rb +45 -0
  1576. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/ast/node/mixin/basic_literal_node.rb +16 -0
  1577. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/ast/node/mixin/binary_operator_node.rb +43 -0
  1578. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/ast/node/mixin/collection_node.rb +15 -0
  1579. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/ast/node/mixin/conditional_node.rb +45 -0
  1580. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/ast/node/mixin/hash_element_node.rb +125 -0
  1581. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/ast/node/mixin/method_dispatch_node.rb +251 -0
  1582. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/ast/node/mixin/method_identifier_predicates.rb +114 -0
  1583. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/ast/node/mixin/modifier_node.rb +17 -0
  1584. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/ast/node/mixin/parameterized_node.rb +61 -0
  1585. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/ast/node/mixin/predicate_operator_node.rb +35 -0
  1586. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/ast/node/or_node.rb +29 -0
  1587. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/ast/node/pair_node.rb +63 -0
  1588. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/ast/node/range_node.rb +11 -0
  1589. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/ast/node/regexp_node.rb +35 -0
  1590. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/ast/node/resbody_node.rb +17 -0
  1591. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/ast/node/retry_node.rb +17 -0
  1592. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/ast/node/send_node.rb +13 -0
  1593. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/ast/node/str_node.rb +16 -0
  1594. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/ast/node/super_node.rb +21 -0
  1595. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/ast/node/symbol_node.rb +12 -0
  1596. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/ast/node/until_node.rb +35 -0
  1597. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/ast/node/when_node.rb +53 -0
  1598. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/ast/node/while_node.rb +35 -0
  1599. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/ast/node/yield_node.rb +21 -0
  1600. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/ast/node.rb +642 -0
  1601. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/ast/sexp.rb +16 -0
  1602. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/ast/traversal.rb +183 -0
  1603. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cached_data.rb +58 -0
  1604. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cli.rb +307 -0
  1605. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/comment_config.rb +200 -0
  1606. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/config.rb +716 -0
  1607. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/config_loader.rb +214 -0
  1608. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/config_loader_resolver.rb +198 -0
  1609. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/config_store.rb +48 -0
  1610. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/autocorrect_logic.rb +33 -0
  1611. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/badge.rb +73 -0
  1612. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/bundler/duplicated_gem.rb +73 -0
  1613. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/bundler/gem_comment.rb +64 -0
  1614. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/bundler/insecure_protocol_source.rb +69 -0
  1615. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/bundler/ordered_gems.rb +73 -0
  1616. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/commissioner.rb +119 -0
  1617. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/cop.rb +244 -0
  1618. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/corrector.rb +172 -0
  1619. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/correctors/alignment_corrector.rb +120 -0
  1620. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/correctors/condition_corrector.rb +28 -0
  1621. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/correctors/each_to_for_corrector.rb +53 -0
  1622. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/correctors/empty_line_corrector.rb +26 -0
  1623. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/correctors/for_to_each_corrector.rb +73 -0
  1624. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/correctors/lambda_literal_to_method_corrector.rb +136 -0
  1625. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/correctors/line_break_corrector.rb +61 -0
  1626. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/correctors/multiline_literal_brace_corrector.rb +68 -0
  1627. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/correctors/ordered_gem_corrector.rb +44 -0
  1628. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/correctors/parentheses_corrector.rb +31 -0
  1629. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/correctors/percent_literal_corrector.rb +117 -0
  1630. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/correctors/punctuation_corrector.rb +29 -0
  1631. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/correctors/space_corrector.rb +49 -0
  1632. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/correctors/string_literal_corrector.rb +25 -0
  1633. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/correctors/unused_arg_corrector.rb +31 -0
  1634. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/force.rb +42 -0
  1635. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/gemspec/duplicated_assignment.rb +104 -0
  1636. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/gemspec/ordered_dependencies.rb +107 -0
  1637. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/gemspec/required_ruby_version.rb +85 -0
  1638. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/generator/configuration_injector.rb +61 -0
  1639. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/generator/require_file_injector.rb +78 -0
  1640. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/generator.rb +217 -0
  1641. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/ignored_node.rb +38 -0
  1642. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/internal_affairs/node_destructuring.rb +46 -0
  1643. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/internal_affairs/node_type_predicate.rb +44 -0
  1644. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/internal_affairs/offense_location_keyword.rb +54 -0
  1645. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/internal_affairs/redundant_location_argument.rb +61 -0
  1646. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/internal_affairs/redundant_message_argument.rb +73 -0
  1647. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/internal_affairs/useless_message_assertion.rb +52 -0
  1648. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/internal_affairs.rb +8 -0
  1649. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/layout/access_modifier_indentation.rb +109 -0
  1650. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/layout/align_array.rb +39 -0
  1651. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/layout/align_hash.rb +315 -0
  1652. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/layout/align_parameters.rb +94 -0
  1653. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/layout/block_alignment.rb +244 -0
  1654. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/layout/block_end_newline.rb +63 -0
  1655. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/layout/case_indentation.rb +161 -0
  1656. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/layout/class_structure.rb +340 -0
  1657. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/layout/closing_heredoc_indentation.rb +126 -0
  1658. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/layout/closing_parenthesis_indentation.rb +203 -0
  1659. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/layout/comment_indentation.rb +144 -0
  1660. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/layout/condition_position.rb +56 -0
  1661. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/layout/def_end_alignment.rb +74 -0
  1662. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/layout/dot_position.rb +105 -0
  1663. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/layout/else_alignment.rb +134 -0
  1664. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/layout/empty_comment.rb +160 -0
  1665. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/layout/empty_line_after_guard_clause.rb +142 -0
  1666. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/layout/empty_line_after_magic_comment.rb +64 -0
  1667. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/layout/empty_line_between_defs.rb +151 -0
  1668. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/layout/empty_lines.rb +76 -0
  1669. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/layout/empty_lines_around_access_modifier.rb +146 -0
  1670. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/layout/empty_lines_around_arguments.rb +99 -0
  1671. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/layout/empty_lines_around_begin_body.rb +45 -0
  1672. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/layout/empty_lines_around_block_body.rb +39 -0
  1673. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/layout/empty_lines_around_class_body.rb +91 -0
  1674. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/layout/empty_lines_around_exception_handling_keywords.rb +136 -0
  1675. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/layout/empty_lines_around_method_body.rb +45 -0
  1676. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/layout/empty_lines_around_module_body.rb +63 -0
  1677. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/layout/end_alignment.rb +189 -0
  1678. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/layout/end_of_line.rb +87 -0
  1679. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/layout/extra_spacing.rb +246 -0
  1680. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/layout/first_array_element_line_break.rb +45 -0
  1681. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/layout/first_hash_element_line_break.rb +37 -0
  1682. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/layout/first_method_argument_line_break.rb +54 -0
  1683. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/layout/first_method_parameter_line_break.rb +46 -0
  1684. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/layout/first_parameter_indentation.rb +244 -0
  1685. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/layout/indent_array.rb +167 -0
  1686. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/layout/indent_assignment.rb +46 -0
  1687. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/layout/indent_hash.rb +184 -0
  1688. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/layout/indent_heredoc.rb +294 -0
  1689. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/layout/indentation_consistency.rb +201 -0
  1690. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/layout/indentation_width.rb +364 -0
  1691. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/layout/initial_indentation.rb +59 -0
  1692. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/layout/leading_blank_lines.rb +53 -0
  1693. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/layout/leading_comment_space.rb +60 -0
  1694. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/layout/multiline_array_brace_layout.rb +118 -0
  1695. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/layout/multiline_assignment_layout.rb +95 -0
  1696. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/layout/multiline_block_layout.rb +124 -0
  1697. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/layout/multiline_hash_brace_layout.rb +122 -0
  1698. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/layout/multiline_method_call_brace_layout.rb +134 -0
  1699. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/layout/multiline_method_call_indentation.rb +222 -0
  1700. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/layout/multiline_method_definition_brace_layout.rb +131 -0
  1701. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/layout/multiline_operation_indentation.rb +114 -0
  1702. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/layout/rescue_ensure_alignment.rb +175 -0
  1703. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/layout/space_after_colon.rb +47 -0
  1704. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/layout/space_after_comma.rb +35 -0
  1705. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/layout/space_after_method_name.rb +42 -0
  1706. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/layout/space_after_not.rb +40 -0
  1707. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/layout/space_after_semicolon.rb +32 -0
  1708. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/layout/space_around_block_parameters.rb +165 -0
  1709. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/layout/space_around_equals_in_parameter_default.rb +92 -0
  1710. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/layout/space_around_keyword.rb +232 -0
  1711. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/layout/space_around_operators.rb +163 -0
  1712. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/layout/space_before_block_braces.rb +119 -0
  1713. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/layout/space_before_comma.rb +31 -0
  1714. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/layout/space_before_comment.rb +35 -0
  1715. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/layout/space_before_first_arg.rb +67 -0
  1716. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/layout/space_before_semicolon.rb +27 -0
  1717. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/layout/space_in_lambda_literal.rb +94 -0
  1718. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/layout/space_inside_array_literal_brackets.rb +228 -0
  1719. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/layout/space_inside_array_percent_literal.rb +53 -0
  1720. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/layout/space_inside_block_braces.rb +229 -0
  1721. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/layout/space_inside_hash_literal_braces.rb +207 -0
  1722. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/layout/space_inside_parens.rb +113 -0
  1723. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/layout/space_inside_percent_literal_delimiters.rb +65 -0
  1724. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/layout/space_inside_range_literal.rb +63 -0
  1725. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/layout/space_inside_reference_brackets.rb +151 -0
  1726. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/layout/space_inside_string_interpolation.rb +81 -0
  1727. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/layout/tab.rb +87 -0
  1728. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/layout/trailing_blank_lines.rb +113 -0
  1729. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/layout/trailing_whitespace.rb +61 -0
  1730. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/lint/ambiguous_block_association.rb +62 -0
  1731. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/lint/ambiguous_operator.rb +55 -0
  1732. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/lint/ambiguous_regexp_literal.rb +43 -0
  1733. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/lint/assignment_in_condition.rb +84 -0
  1734. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/lint/big_decimal_new.rb +44 -0
  1735. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/lint/boolean_symbol.rb +38 -0
  1736. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/lint/circular_argument_reference.rb +72 -0
  1737. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/lint/debugger.rb +79 -0
  1738. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/lint/deprecated_class_methods.rb +111 -0
  1739. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/lint/disjunctive_assignment_in_constructor.rb +81 -0
  1740. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/lint/duplicate_case_condition.rb +53 -0
  1741. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/lint/duplicate_methods.rb +241 -0
  1742. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/lint/duplicated_key.rb +38 -0
  1743. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/lint/each_with_object_argument.rb +42 -0
  1744. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/lint/else_layout.rb +66 -0
  1745. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/lint/empty_ensure.rb +60 -0
  1746. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/lint/empty_expression.rb +42 -0
  1747. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/lint/empty_interpolation.rb +36 -0
  1748. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/lint/empty_when.rb +38 -0
  1749. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/lint/end_in_method.rb +40 -0
  1750. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/lint/ensure_return.rb +46 -0
  1751. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/lint/erb_new_arguments.rb +107 -0
  1752. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/lint/flip_flop.rb +32 -0
  1753. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/lint/float_out_of_range.rb +35 -0
  1754. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/lint/format_parameter_mismatch.rb +190 -0
  1755. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/lint/handle_exceptions.rb +56 -0
  1756. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/lint/implicit_string_concatenation.rb +101 -0
  1757. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/lint/ineffective_access_modifier.rb +127 -0
  1758. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/lint/inherit_exception.rb +80 -0
  1759. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/lint/interpolation_check.rb +40 -0
  1760. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/lint/literal_as_condition.rb +138 -0
  1761. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/lint/literal_in_interpolation.rb +82 -0
  1762. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/lint/loop.rb +63 -0
  1763. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/lint/missing_cop_enable_directive.rb +84 -0
  1764. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/lint/multiple_compare.rb +48 -0
  1765. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/lint/nested_method_definition.rb +104 -0
  1766. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/lint/nested_percent_literal.rb +51 -0
  1767. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/lint/next_without_accumulator.rb +50 -0
  1768. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/lint/non_local_exit_from_iterator.rb +85 -0
  1769. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/lint/number_conversion.rb +59 -0
  1770. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/lint/ordered_magic_comments.rb +86 -0
  1771. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/lint/parentheses_as_grouped_expression.rb +64 -0
  1772. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/lint/percent_string_array.rb +73 -0
  1773. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/lint/percent_symbol_array.rb +69 -0
  1774. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/lint/rand_one.rb +45 -0
  1775. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/lint/redundant_with_index.rb +82 -0
  1776. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/lint/redundant_with_object.rb +83 -0
  1777. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/lint/regexp_as_condition.rb +29 -0
  1778. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/lint/require_parentheses.rb +66 -0
  1779. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/lint/rescue_exception.rb +46 -0
  1780. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/lint/rescue_type.rb +94 -0
  1781. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/lint/return_in_void_context.rb +74 -0
  1782. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/lint/safe_navigation_chain.rb +69 -0
  1783. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/lint/safe_navigation_consistency.rb +94 -0
  1784. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/lint/safe_navigation_with_empty.rb +38 -0
  1785. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/lint/script_permission.rb +70 -0
  1786. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/lint/shadowed_argument.rb +182 -0
  1787. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/lint/shadowed_exception.rb +178 -0
  1788. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/lint/shadowing_outer_local_variable.rb +53 -0
  1789. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/lint/string_conversion_in_interpolation.rb +59 -0
  1790. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/lint/syntax.rb +59 -0
  1791. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/lint/to_json.rb +38 -0
  1792. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/lint/underscore_prefixed_variable_name.rb +62 -0
  1793. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/lint/unified_integer.rb +43 -0
  1794. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/lint/unneeded_cop_disable_directive.rb +263 -0
  1795. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/lint/unneeded_cop_enable_directive.rb +116 -0
  1796. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/lint/unneeded_require_statement.rb +50 -0
  1797. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/lint/unneeded_splat_expansion.rb +167 -0
  1798. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/lint/unreachable_code.rb +99 -0
  1799. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/lint/unused_block_argument.rb +149 -0
  1800. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/lint/unused_method_argument.rb +68 -0
  1801. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/lint/uri_escape_unescape.rb +76 -0
  1802. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/lint/uri_regexp.rb +73 -0
  1803. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/lint/useless_access_modifier.rb +240 -0
  1804. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/lint/useless_assignment.rb +133 -0
  1805. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/lint/useless_comparison.rb +28 -0
  1806. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/lint/useless_else_without_rescue.rb +46 -0
  1807. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/lint/useless_setter_call.rb +165 -0
  1808. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/lint/void.rb +170 -0
  1809. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/message_annotator.rb +119 -0
  1810. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/metrics/abc_size.rb +24 -0
  1811. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/metrics/block_length.rb +50 -0
  1812. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/metrics/block_nesting.rb +65 -0
  1813. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/metrics/class_length.rb +36 -0
  1814. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/metrics/cyclomatic_complexity.rb +32 -0
  1815. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/metrics/line_length.rb +204 -0
  1816. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/metrics/method_length.rb +36 -0
  1817. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/metrics/module_length.rb +36 -0
  1818. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/metrics/parameter_lists.rb +54 -0
  1819. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/metrics/perceived_complexity.rb +62 -0
  1820. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/metrics/utils/abc_size_calculator.rb +67 -0
  1821. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/mixin/alignment.rb +74 -0
  1822. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/mixin/annotation_comment.rb +37 -0
  1823. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/mixin/array_hash_indentation.rb +85 -0
  1824. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/mixin/array_min_size.rb +59 -0
  1825. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/mixin/array_syntax.rb +17 -0
  1826. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/mixin/check_assignment.rb +44 -0
  1827. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/mixin/classish_length.rb +37 -0
  1828. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/mixin/code_length.rb +38 -0
  1829. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/mixin/configurable_enforced_style.rb +98 -0
  1830. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/mixin/configurable_formatting.rb +47 -0
  1831. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/mixin/configurable_max.rb +23 -0
  1832. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/mixin/configurable_naming.rb +16 -0
  1833. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/mixin/configurable_numbering.rb +17 -0
  1834. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/mixin/def_node.rb +33 -0
  1835. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/mixin/documentation_comment.rb +54 -0
  1836. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/mixin/duplication.rb +46 -0
  1837. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/mixin/empty_lines_around_body.rb +172 -0
  1838. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/mixin/empty_parameter.rb +24 -0
  1839. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/mixin/end_keyword_alignment.rb +67 -0
  1840. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/mixin/enforce_superclass.rb +30 -0
  1841. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/mixin/first_element_line_break.rb +46 -0
  1842. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/mixin/frozen_string_literal.rb +54 -0
  1843. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/mixin/hash_alignment.rb +143 -0
  1844. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/mixin/heredoc.rb +32 -0
  1845. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/mixin/ignored_methods.rb +19 -0
  1846. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/mixin/ignored_pattern.rb +29 -0
  1847. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/mixin/integer_node.rb +14 -0
  1848. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/mixin/match_range.rb +26 -0
  1849. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/mixin/method_complexity.rb +56 -0
  1850. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/mixin/method_preference.rb +31 -0
  1851. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/mixin/min_body_length.rb +21 -0
  1852. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/mixin/multiline_expression_indentation.rb +255 -0
  1853. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/mixin/multiline_literal_brace_layout.rb +141 -0
  1854. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/mixin/negative_conditional.rb +32 -0
  1855. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/mixin/nil_methods.rb +25 -0
  1856. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/mixin/on_normal_if_unless.rb +14 -0
  1857. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/mixin/ordered_gem_node.rb +56 -0
  1858. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/mixin/parentheses.rb +17 -0
  1859. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/mixin/parser_diagnostic.rb +37 -0
  1860. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/mixin/percent_array.rb +52 -0
  1861. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/mixin/percent_literal.rb +38 -0
  1862. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/mixin/preceding_following_alignment.rb +94 -0
  1863. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/mixin/preferred_delimiters.rb +53 -0
  1864. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/mixin/range_help.rb +117 -0
  1865. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/mixin/rescue_node.rb +23 -0
  1866. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/mixin/safe_assignment.rb +23 -0
  1867. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/mixin/safe_mode.rb +22 -0
  1868. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/mixin/space_after_punctuation.rb +55 -0
  1869. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/mixin/space_before_punctuation.rb +49 -0
  1870. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/mixin/statement_modifier.rb +68 -0
  1871. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/mixin/string_help.rb +35 -0
  1872. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/mixin/string_literals_help.rb +23 -0
  1873. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/mixin/surrounding_space.rb +144 -0
  1874. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/mixin/target_rails_version.rb +16 -0
  1875. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/mixin/target_ruby_version.rb +16 -0
  1876. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/mixin/too_many_lines.rb +39 -0
  1877. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/mixin/trailing_body.rb +26 -0
  1878. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/mixin/trailing_comma.rb +216 -0
  1879. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/mixin/uncommunicative_name.rb +106 -0
  1880. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/mixin/unused_argument.rb +33 -0
  1881. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/naming/accessor_method_name.rb +55 -0
  1882. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/naming/ascii_identifiers.rb +72 -0
  1883. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/naming/binary_operator_parameter_name.rb +43 -0
  1884. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/naming/class_and_module_camel_case.rb +33 -0
  1885. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/naming/constant_name.rb +81 -0
  1886. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/naming/file_name.rb +205 -0
  1887. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/naming/heredoc_delimiter_case.rb +62 -0
  1888. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/naming/heredoc_delimiter_naming.rb +55 -0
  1889. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/naming/memoized_instance_variable_name.rb +171 -0
  1890. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/naming/method_name.rb +42 -0
  1891. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/naming/predicate_name.rb +108 -0
  1892. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/naming/uncommunicative_block_param_name.rb +49 -0
  1893. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/naming/uncommunicative_method_param_name.rb +58 -0
  1894. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/naming/variable_name.rb +51 -0
  1895. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/naming/variable_number.rb +61 -0
  1896. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/offense.rb +194 -0
  1897. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/performance/caller.rb +69 -0
  1898. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/performance/case_when_splat.rb +177 -0
  1899. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/performance/casecmp.rb +108 -0
  1900. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/performance/chain_array_allocation.rb +78 -0
  1901. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/performance/compare_with_block.rb +122 -0
  1902. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/performance/count.rb +102 -0
  1903. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/performance/detect.rb +110 -0
  1904. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/performance/double_start_end_with.rb +94 -0
  1905. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/performance/end_with.rb +56 -0
  1906. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/performance/fixed_size.rb +97 -0
  1907. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/performance/flat_map.rb +78 -0
  1908. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/performance/inefficient_hash_search.rb +99 -0
  1909. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/performance/lstrip_rstrip.rb +46 -0
  1910. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/performance/open_struct.rb +46 -0
  1911. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/performance/range_include.rb +50 -0
  1912. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/performance/redundant_block_call.rb +93 -0
  1913. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/performance/redundant_match.rb +56 -0
  1914. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/performance/redundant_merge.rb +183 -0
  1915. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/performance/redundant_sort_by.rb +50 -0
  1916. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/performance/regexp_match.rb +265 -0
  1917. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/performance/reverse_each.rb +42 -0
  1918. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/performance/sample.rb +145 -0
  1919. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/performance/size.rb +77 -0
  1920. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/performance/start_with.rb +59 -0
  1921. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/performance/string_replacement.rb +173 -0
  1922. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/performance/times_map.rb +71 -0
  1923. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/performance/unfreeze_string.rb +50 -0
  1924. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/performance/unneeded_sort.rb +165 -0
  1925. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/performance/uri_default_parser.rb +47 -0
  1926. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/rails/action_filter.rb +117 -0
  1927. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/rails/active_record_aliases.rb +48 -0
  1928. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/rails/active_support_aliases.rb +69 -0
  1929. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/rails/application_job.rb +40 -0
  1930. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/rails/application_record.rb +40 -0
  1931. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/rails/assert_not.rb +44 -0
  1932. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/rails/belongs_to.rb +120 -0
  1933. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/rails/blank.rb +158 -0
  1934. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/rails/bulk_change_table.rb +289 -0
  1935. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/rails/create_table_with_timestamps.rb +91 -0
  1936. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/rails/date.rb +156 -0
  1937. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/rails/delegate.rb +135 -0
  1938. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/rails/delegate_allow_blank.rb +51 -0
  1939. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/rails/dynamic_find_by.rb +91 -0
  1940. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/rails/enum_uniqueness.rb +45 -0
  1941. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/rails/environment_comparison.rb +66 -0
  1942. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/rails/exit.rb +67 -0
  1943. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/rails/file_path.rb +108 -0
  1944. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/rails/find_by.rb +55 -0
  1945. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/rails/find_each.rb +52 -0
  1946. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/rails/has_and_belongs_to_many.rb +25 -0
  1947. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/rails/has_many_or_has_one_dependent.rb +106 -0
  1948. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/rails/http_positional_arguments.rb +117 -0
  1949. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/rails/http_status.rb +186 -0
  1950. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/rails/ignored_skip_action_filter_option.rb +94 -0
  1951. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/rails/inverse_of.rb +246 -0
  1952. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/rails/lexically_scoped_action_filter.rb +149 -0
  1953. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/rails/link_to_blank.rb +90 -0
  1954. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/rails/not_null_column.rb +67 -0
  1955. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/rails/output.rb +49 -0
  1956. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/rails/output_safety.rb +99 -0
  1957. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/rails/pluralization_grammar.rb +107 -0
  1958. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/rails/presence.rb +124 -0
  1959. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/rails/present.rb +149 -0
  1960. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/rails/read_write_attribute.rb +74 -0
  1961. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/rails/redundant_receiver_in_with_options.rb +135 -0
  1962. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/rails/reflection_class_name.rb +38 -0
  1963. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/rails/refute_methods.rb +76 -0
  1964. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/rails/relative_date_constant.rb +93 -0
  1965. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/rails/request_referer.rb +56 -0
  1966. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/rails/reversible_migration.rb +286 -0
  1967. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/rails/safe_navigation.rb +91 -0
  1968. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/rails/save_bang.rb +316 -0
  1969. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/rails/scope_args.rb +29 -0
  1970. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/rails/skips_model_validations.rb +88 -0
  1971. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/rails/time_zone.rb +231 -0
  1972. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/rails/uniq_before_pluck.rb +105 -0
  1973. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/rails/unknown_env.rb +63 -0
  1974. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/rails/validation.rb +106 -0
  1975. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/registry.rb +190 -0
  1976. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/security/eval.rb +31 -0
  1977. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/security/json_load.rb +46 -0
  1978. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/security/marshal_load.rb +39 -0
  1979. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/security/open.rb +71 -0
  1980. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/security/yaml_load.rb +37 -0
  1981. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/severity.rb +77 -0
  1982. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/style/access_modifier_declarations.rb +111 -0
  1983. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/style/alias.rb +141 -0
  1984. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/style/and_or.rb +146 -0
  1985. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/style/array_join.rb +39 -0
  1986. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/style/ascii_comments.rb +61 -0
  1987. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/style/attr.rb +62 -0
  1988. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/style/auto_resource_cleanup.rb +51 -0
  1989. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/style/bare_percent_literals.rb +78 -0
  1990. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/style/begin_block.rb +22 -0
  1991. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/style/block_comments.rb +62 -0
  1992. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/style/block_delimiters.rb +315 -0
  1993. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/style/braces_around_hash_parameters.rb +190 -0
  1994. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/style/case_equality.rb +30 -0
  1995. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/style/character_literal.rb +53 -0
  1996. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/style/class_and_module_children.rb +153 -0
  1997. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/style/class_check.rb +59 -0
  1998. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/style/class_methods.rb +68 -0
  1999. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/style/class_vars.rb +48 -0
  2000. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/style/collection_methods.rb +77 -0
  2001. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/style/colon_method_call.rb +48 -0
  2002. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/style/colon_method_definition.rb +37 -0
  2003. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/style/command_literal.rb +187 -0
  2004. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/style/comment_annotation.rb +97 -0
  2005. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/style/commented_keyword.rb +87 -0
  2006. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/style/conditional_assignment.rb +698 -0
  2007. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/style/constant_visibility.rb +66 -0
  2008. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/style/copyright.rb +95 -0
  2009. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/style/date_time.rb +77 -0
  2010. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/style/def_with_parentheses.rb +57 -0
  2011. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/style/dir.rb +48 -0
  2012. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/style/documentation.rb +101 -0
  2013. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/style/documentation_method.rb +81 -0
  2014. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/style/double_negation.rb +35 -0
  2015. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/style/each_for_simple_loop.rb +58 -0
  2016. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/style/each_with_object.rb +110 -0
  2017. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/style/empty_block_parameter.rb +48 -0
  2018. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/style/empty_case_condition.rb +107 -0
  2019. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/style/empty_else.rb +175 -0
  2020. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/style/empty_lambda_parameter.rb +45 -0
  2021. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/style/empty_literal.rb +123 -0
  2022. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/style/empty_method.rb +115 -0
  2023. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/style/encoding.rb +56 -0
  2024. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/style/end_block.rb +25 -0
  2025. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/style/eval_with_location.rb +148 -0
  2026. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/style/even_odd.rb +58 -0
  2027. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/style/expand_path_arguments.rb +194 -0
  2028. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/style/for.rb +88 -0
  2029. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/style/format_string.rb +123 -0
  2030. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/style/format_string_token.rb +170 -0
  2031. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/style/frozen_string_literal_comment.rb +180 -0
  2032. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/style/global_vars.rb +80 -0
  2033. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/style/guard_clause.rb +92 -0
  2034. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/style/hash_syntax.rb +214 -0
  2035. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/style/identical_conditional_branches.rb +130 -0
  2036. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/style/if_inside_else.rb +45 -0
  2037. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/style/if_unless_modifier.rb +91 -0
  2038. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/style/if_unless_modifier_of_if_unless.rb +39 -0
  2039. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/style/if_with_semicolon.rb +30 -0
  2040. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/style/implicit_runtime_error.rb +32 -0
  2041. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/style/infinite_loop.rb +127 -0
  2042. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/style/inline_comment.rb +34 -0
  2043. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/style/inverse_methods.rb +167 -0
  2044. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/style/ip_addresses.rb +76 -0
  2045. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/style/lambda.rb +129 -0
  2046. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/style/lambda_call.rb +93 -0
  2047. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/style/line_end_concatenation.rb +121 -0
  2048. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/style/method_call_with_args_parentheses.rb +368 -0
  2049. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/style/method_call_without_args_parentheses.rb +77 -0
  2050. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/style/method_called_on_do_end_block.rb +46 -0
  2051. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/style/method_def_parentheses.rb +158 -0
  2052. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/style/method_missing_super.rb +34 -0
  2053. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/style/min_max.rb +68 -0
  2054. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/style/missing_else.rb +180 -0
  2055. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/style/missing_respond_to_missing.rb +46 -0
  2056. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/style/mixin_grouping.rb +150 -0
  2057. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/style/mixin_usage.rb +80 -0
  2058. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/style/module_function.rb +105 -0
  2059. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/style/multiline_block_chain.rb +40 -0
  2060. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/style/multiline_if_modifier.rb +67 -0
  2061. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/style/multiline_if_then.rb +50 -0
  2062. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/style/multiline_memoization.rb +94 -0
  2063. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/style/multiline_method_signature.rb +61 -0
  2064. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/style/multiline_ternary_operator.rb +38 -0
  2065. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/style/multiple_comparison.rb +92 -0
  2066. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/style/mutable_constant.rb +174 -0
  2067. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/style/negated_if.rb +99 -0
  2068. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/style/negated_while.rb +48 -0
  2069. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/style/nested_modifier.rb +89 -0
  2070. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/style/nested_parenthesized_calls.rb +67 -0
  2071. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/style/nested_ternary_operator.rb +32 -0
  2072. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/style/next.rb +244 -0
  2073. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/style/nil_comparison.rb +75 -0
  2074. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/style/non_nil_check.rb +124 -0
  2075. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/style/not.rb +82 -0
  2076. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/style/numeric_literal_prefix.rb +124 -0
  2077. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/style/numeric_literals.rb +110 -0
  2078. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/style/numeric_predicate.rb +145 -0
  2079. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/style/one_line_conditional.rb +99 -0
  2080. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/style/option_hash.rb +55 -0
  2081. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/style/optional_arguments.rb +61 -0
  2082. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/style/or_assignment.rb +90 -0
  2083. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/style/parallel_assignment.rb +287 -0
  2084. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/style/parentheses_around_condition.rb +103 -0
  2085. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/style/percent_literal_delimiters.rb +127 -0
  2086. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/style/percent_q_literals.rb +73 -0
  2087. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/style/perl_backrefs.rb +38 -0
  2088. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/style/preferred_hash_methods.rb +75 -0
  2089. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/style/proc.rb +34 -0
  2090. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/style/raise_args.rb +145 -0
  2091. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/style/random_with_offset.rb +161 -0
  2092. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/style/redundant_begin.rb +91 -0
  2093. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/style/redundant_conditional.rb +97 -0
  2094. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/style/redundant_exception.rb +60 -0
  2095. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/style/redundant_freeze.rb +67 -0
  2096. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/style/redundant_parentheses.rb +222 -0
  2097. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/style/redundant_return.rb +169 -0
  2098. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/style/redundant_self.rb +154 -0
  2099. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/style/regexp_literal.rb +228 -0
  2100. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/style/rescue_modifier.rb +49 -0
  2101. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/style/rescue_standard_error.rb +124 -0
  2102. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/style/return_nil.rb +89 -0
  2103. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/style/safe_navigation.rb +253 -0
  2104. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/style/self_assignment.rb +97 -0
  2105. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/style/semicolon.rb +90 -0
  2106. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/style/send.rb +31 -0
  2107. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/style/signal_exception.rb +211 -0
  2108. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/style/single_line_block_params.rb +95 -0
  2109. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/style/single_line_methods.rb +76 -0
  2110. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/style/special_global_vars.rb +213 -0
  2111. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/style/stabby_lambda_parentheses.rb +86 -0
  2112. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/style/stderr_puts.rb +56 -0
  2113. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/style/string_hash_keys.rb +49 -0
  2114. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/style/string_literals.rb +129 -0
  2115. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/style/string_literals_in_interpolation.rb +49 -0
  2116. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/style/string_methods.rb +46 -0
  2117. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/style/struct_inheritance.rb +32 -0
  2118. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/style/symbol_array.rb +119 -0
  2119. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/style/symbol_literal.rb +32 -0
  2120. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/style/symbol_proc.rb +130 -0
  2121. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/style/ternary_parentheses.rb +194 -0
  2122. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/style/trailing_body_on_class.rb +43 -0
  2123. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/style/trailing_body_on_method_definition.rb +54 -0
  2124. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/style/trailing_body_on_module.rb +43 -0
  2125. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/style/trailing_comma_in_arguments.rb +92 -0
  2126. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/style/trailing_comma_in_array_literal.rb +58 -0
  2127. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/style/trailing_comma_in_hash_literal.rb +56 -0
  2128. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/style/trailing_method_end_statement.rb +93 -0
  2129. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/style/trailing_underscore_variable.rb +161 -0
  2130. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/style/trivial_accessors.rb +191 -0
  2131. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/style/unless_else.rb +56 -0
  2132. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/style/unneeded_capital_w.rb +51 -0
  2133. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/style/unneeded_condition.rb +112 -0
  2134. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/style/unneeded_interpolation.rb +98 -0
  2135. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/style/unneeded_percent_q.rb +112 -0
  2136. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/style/unpack_first.rb +65 -0
  2137. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/style/variable_interpolation.rb +58 -0
  2138. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/style/when_then.rb +37 -0
  2139. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/style/while_until_do.rb +59 -0
  2140. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/style/while_until_modifier.rb +61 -0
  2141. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/style/word_array.rb +102 -0
  2142. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/style/yoda_condition.rb +140 -0
  2143. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/style/zero_length_predicate.rb +117 -0
  2144. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/team.rb +190 -0
  2145. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/util.rb +129 -0
  2146. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/variable_force/assignment.rb +96 -0
  2147. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/variable_force/branch.rb +322 -0
  2148. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/variable_force/branchable.rb +23 -0
  2149. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/variable_force/reference.rb +49 -0
  2150. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/variable_force/scope.rb +109 -0
  2151. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/variable_force/variable.rb +104 -0
  2152. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/variable_force/variable_table.rb +129 -0
  2153. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/cop/variable_force.rb +464 -0
  2154. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/core_ext/string.rb +47 -0
  2155. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/error.rb +11 -0
  2156. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/file_finder.rb +47 -0
  2157. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/formatter/auto_gen_config_formatter.rb +16 -0
  2158. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/formatter/base_formatter.rb +123 -0
  2159. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/formatter/clang_style_formatter.rb +54 -0
  2160. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/formatter/colorizable.rb +41 -0
  2161. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/formatter/disabled_config_formatter.rb +219 -0
  2162. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/formatter/disabled_lines_formatter.rb +57 -0
  2163. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/formatter/emacs_style_formatter.rb +24 -0
  2164. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/formatter/file_list_formatter.rb +20 -0
  2165. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/formatter/formatter_set.rb +105 -0
  2166. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/formatter/fuubar_style_formatter.rb +80 -0
  2167. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/formatter/html_formatter.rb +141 -0
  2168. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/formatter/json_formatter.rb +80 -0
  2169. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/formatter/offense_count_formatter.rb +74 -0
  2170. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/formatter/progress_formatter.rb +63 -0
  2171. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/formatter/quiet_formatter.rb +13 -0
  2172. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/formatter/simple_text_formatter.rb +126 -0
  2173. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/formatter/tap_formatter.rb +71 -0
  2174. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/formatter/text_util.rb +20 -0
  2175. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/formatter/worst_offenders_formatter.rb +62 -0
  2176. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/magic_comment.rb +210 -0
  2177. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/name_similarity.rb +21 -0
  2178. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/node_pattern.rb +584 -0
  2179. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/options.rb +441 -0
  2180. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/path_util.rb +85 -0
  2181. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/platform.rb +11 -0
  2182. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/processed_source.rb +210 -0
  2183. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/rake_task.rb +79 -0
  2184. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/remote_config.rb +104 -0
  2185. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/result_cache.rb +191 -0
  2186. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/rspec/cop_helper.rb +95 -0
  2187. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/rspec/expect_offense.rb +237 -0
  2188. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/rspec/host_environment_simulation_helper.rb +28 -0
  2189. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/rspec/shared_contexts.rb +96 -0
  2190. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/rspec/shared_examples.rb +59 -0
  2191. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/rspec/support.rb +14 -0
  2192. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/runner.rb +353 -0
  2193. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/string_interpreter.rb +57 -0
  2194. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/string_util.rb +14 -0
  2195. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/target_finder.rb +187 -0
  2196. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/token.rb +114 -0
  2197. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/version.rb +21 -0
  2198. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/warning.rb +11 -0
  2199. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop/yaml_duplication_checker.rb +33 -0
  2200. data/vendor/bundle/ruby/3.2.0/gems/rubocop-0.66.0/lib/rubocop.rb +654 -0
  2201. data/vendor/bundle/ruby/3.2.0/gems/ruby-progressbar-1.13.0/LICENSE.txt +19 -0
  2202. data/vendor/bundle/ruby/3.2.0/gems/ruby-progressbar-1.13.0/README.md +131 -0
  2203. data/vendor/bundle/ruby/3.2.0/gems/ruby-progressbar-1.13.0/Rakefile +2 -0
  2204. data/vendor/bundle/ruby/3.2.0/gems/ruby-progressbar-1.13.0/lib/ruby-progressbar/base.rb +234 -0
  2205. data/vendor/bundle/ruby/3.2.0/gems/ruby-progressbar-1.13.0/lib/ruby-progressbar/calculators/length.rb +98 -0
  2206. data/vendor/bundle/ruby/3.2.0/gems/ruby-progressbar-1.13.0/lib/ruby-progressbar/components/bar.rb +102 -0
  2207. data/vendor/bundle/ruby/3.2.0/gems/ruby-progressbar-1.13.0/lib/ruby-progressbar/components/percentage.rb +27 -0
  2208. data/vendor/bundle/ruby/3.2.0/gems/ruby-progressbar-1.13.0/lib/ruby-progressbar/components/rate.rb +39 -0
  2209. data/vendor/bundle/ruby/3.2.0/gems/ruby-progressbar-1.13.0/lib/ruby-progressbar/components/time.rb +101 -0
  2210. data/vendor/bundle/ruby/3.2.0/gems/ruby-progressbar-1.13.0/lib/ruby-progressbar/components/title.rb +13 -0
  2211. data/vendor/bundle/ruby/3.2.0/gems/ruby-progressbar-1.13.0/lib/ruby-progressbar/errors/invalid_progress_error.rb +4 -0
  2212. data/vendor/bundle/ruby/3.2.0/gems/ruby-progressbar-1.13.0/lib/ruby-progressbar/format/formatter.rb +27 -0
  2213. data/vendor/bundle/ruby/3.2.0/gems/ruby-progressbar-1.13.0/lib/ruby-progressbar/format/molecule.rb +61 -0
  2214. data/vendor/bundle/ruby/3.2.0/gems/ruby-progressbar-1.13.0/lib/ruby-progressbar/format/string.rb +38 -0
  2215. data/vendor/bundle/ruby/3.2.0/gems/ruby-progressbar-1.13.0/lib/ruby-progressbar/output.rb +71 -0
  2216. data/vendor/bundle/ruby/3.2.0/gems/ruby-progressbar-1.13.0/lib/ruby-progressbar/outputs/non_tty.rb +47 -0
  2217. data/vendor/bundle/ruby/3.2.0/gems/ruby-progressbar-1.13.0/lib/ruby-progressbar/outputs/null.rb +33 -0
  2218. data/vendor/bundle/ruby/3.2.0/gems/ruby-progressbar-1.13.0/lib/ruby-progressbar/outputs/tty.rb +32 -0
  2219. data/vendor/bundle/ruby/3.2.0/gems/ruby-progressbar-1.13.0/lib/ruby-progressbar/progress.rb +108 -0
  2220. data/vendor/bundle/ruby/3.2.0/gems/ruby-progressbar-1.13.0/lib/ruby-progressbar/projector.rb +14 -0
  2221. data/vendor/bundle/ruby/3.2.0/gems/ruby-progressbar-1.13.0/lib/ruby-progressbar/projectors/smoothed_average.rb +71 -0
  2222. data/vendor/bundle/ruby/3.2.0/gems/ruby-progressbar-1.13.0/lib/ruby-progressbar/refinements/progress_enumerator.rb +28 -0
  2223. data/vendor/bundle/ruby/3.2.0/gems/ruby-progressbar-1.13.0/lib/ruby-progressbar/refinements.rb +1 -0
  2224. data/vendor/bundle/ruby/3.2.0/gems/ruby-progressbar-1.13.0/lib/ruby-progressbar/throttle.rb +25 -0
  2225. data/vendor/bundle/ruby/3.2.0/gems/ruby-progressbar-1.13.0/lib/ruby-progressbar/time.rb +30 -0
  2226. data/vendor/bundle/ruby/3.2.0/gems/ruby-progressbar-1.13.0/lib/ruby-progressbar/timer.rb +78 -0
  2227. data/vendor/bundle/ruby/3.2.0/gems/ruby-progressbar-1.13.0/lib/ruby-progressbar/version.rb +3 -0
  2228. data/vendor/bundle/ruby/3.2.0/gems/ruby-progressbar-1.13.0/lib/ruby-progressbar.rb +12 -0
  2229. data/vendor/bundle/ruby/3.2.0/gems/stringio-3.2.0/.document +5 -0
  2230. data/vendor/bundle/ruby/3.2.0/gems/stringio-3.2.0/.rdoc_options +5 -0
  2231. data/vendor/bundle/ruby/3.2.0/gems/stringio-3.2.0/COPYING +56 -0
  2232. data/vendor/bundle/ruby/3.2.0/gems/stringio-3.2.0/LICENSE.txt +22 -0
  2233. data/vendor/bundle/ruby/3.2.0/gems/stringio-3.2.0/NEWS.md +326 -0
  2234. data/vendor/bundle/ruby/3.2.0/gems/stringio-3.2.0/README.md +45 -0
  2235. data/vendor/bundle/ruby/3.2.0/gems/stringio-3.2.0/docs/io.rb +3 -0
  2236. data/vendor/bundle/ruby/3.2.0/gems/stringio-3.2.0/ext/stringio/.document +1 -0
  2237. data/vendor/bundle/ruby/3.2.0/gems/stringio-3.2.0/ext/stringio/Makefile +269 -0
  2238. data/vendor/bundle/ruby/3.2.0/gems/stringio-3.2.0/ext/stringio/extconf.rb +9 -0
  2239. data/vendor/bundle/ruby/3.2.0/gems/stringio-3.2.0/ext/stringio/stringio.c +2110 -0
  2240. data/vendor/bundle/ruby/3.2.0/gems/stringio-3.2.0/lib/stringio.so +0 -0
  2241. data/vendor/bundle/ruby/3.2.0/gems/unicode-display_width-1.5.0/CHANGELOG.md +121 -0
  2242. data/vendor/bundle/ruby/3.2.0/gems/unicode-display_width-1.5.0/MIT-LICENSE.txt +22 -0
  2243. data/vendor/bundle/ruby/3.2.0/gems/unicode-display_width-1.5.0/README.md +124 -0
  2244. data/vendor/bundle/ruby/3.2.0/gems/unicode-display_width-1.5.0/data/display_width.marshal.gz +0 -0
  2245. data/vendor/bundle/ruby/3.2.0/gems/unicode-display_width-1.5.0/lib/unicode/display_width/constants.rb +8 -0
  2246. data/vendor/bundle/ruby/3.2.0/gems/unicode-display_width-1.5.0/lib/unicode/display_width/index.rb +12 -0
  2247. data/vendor/bundle/ruby/3.2.0/gems/unicode-display_width-1.5.0/lib/unicode/display_width/no_string_ext.rb +7 -0
  2248. data/vendor/bundle/ruby/3.2.0/gems/unicode-display_width-1.5.0/lib/unicode/display_width/string_ext.rb +17 -0
  2249. data/vendor/bundle/ruby/3.2.0/gems/unicode-display_width-1.5.0/lib/unicode/display_width.rb +51 -0
  2250. data/vendor/bundle/ruby/3.2.0/gems/uri-1.1.1/.document +5 -0
  2251. data/vendor/bundle/ruby/3.2.0/gems/uri-1.1.1/.rdoc_options +5 -0
  2252. data/vendor/bundle/ruby/3.2.0/gems/uri-1.1.1/BSDL +22 -0
  2253. data/vendor/bundle/ruby/3.2.0/gems/uri-1.1.1/COPYING +56 -0
  2254. data/vendor/bundle/ruby/3.2.0/gems/uri-1.1.1/README.md +55 -0
  2255. data/vendor/bundle/ruby/3.2.0/gems/uri-1.1.1/docs/kernel.rb +2 -0
  2256. data/vendor/bundle/ruby/3.2.0/gems/uri-1.1.1/lib/uri/common.rb +922 -0
  2257. data/vendor/bundle/ruby/3.2.0/gems/uri-1.1.1/lib/uri/file.rb +100 -0
  2258. data/vendor/bundle/ruby/3.2.0/gems/uri-1.1.1/lib/uri/ftp.rb +267 -0
  2259. data/vendor/bundle/ruby/3.2.0/gems/uri-1.1.1/lib/uri/generic.rb +1592 -0
  2260. data/vendor/bundle/ruby/3.2.0/gems/uri-1.1.1/lib/uri/http.rb +137 -0
  2261. data/vendor/bundle/ruby/3.2.0/gems/uri-1.1.1/lib/uri/https.rb +23 -0
  2262. data/vendor/bundle/ruby/3.2.0/gems/uri-1.1.1/lib/uri/ldap.rb +261 -0
  2263. data/vendor/bundle/ruby/3.2.0/gems/uri-1.1.1/lib/uri/ldaps.rb +22 -0
  2264. data/vendor/bundle/ruby/3.2.0/gems/uri-1.1.1/lib/uri/mailto.rb +293 -0
  2265. data/vendor/bundle/ruby/3.2.0/gems/uri-1.1.1/lib/uri/rfc2396_parser.rb +547 -0
  2266. data/vendor/bundle/ruby/3.2.0/gems/uri-1.1.1/lib/uri/rfc3986_parser.rb +206 -0
  2267. data/vendor/bundle/ruby/3.2.0/gems/uri-1.1.1/lib/uri/version.rb +6 -0
  2268. data/vendor/bundle/ruby/3.2.0/gems/uri-1.1.1/lib/uri/ws.rb +83 -0
  2269. data/vendor/bundle/ruby/3.2.0/gems/uri-1.1.1/lib/uri/wss.rb +23 -0
  2270. data/vendor/bundle/ruby/3.2.0/gems/uri-1.1.1/lib/uri.rb +104 -0
  2271. data/vendor/bundle/ruby/3.2.0/specifications/ast-2.4.3.gemspec +29 -0
  2272. data/vendor/bundle/ruby/3.2.0/specifications/byebug-13.0.0.gemspec +32 -0
  2273. data/vendor/bundle/ruby/3.2.0/specifications/coderay-1.1.3.gemspec +25 -0
  2274. data/vendor/bundle/ruby/3.2.0/specifications/date-3.5.1.gemspec +25 -0
  2275. data/vendor/bundle/ruby/3.2.0/specifications/diff-lcs-1.6.2.gemspec +35 -0
  2276. data/vendor/bundle/ruby/3.2.0/specifications/faraday-2.14.3.gemspec +0 -0
  2277. data/vendor/bundle/ruby/3.2.0/specifications/faraday-multipart-1.2.0.gemspec +26 -0
  2278. data/vendor/bundle/ruby/3.2.0/specifications/faraday-net_http-3.4.4.gemspec +26 -0
  2279. data/vendor/bundle/ruby/3.2.0/specifications/io-console-0.8.2.gemspec +25 -0
  2280. data/vendor/bundle/ruby/3.2.0/specifications/jaro_winkler-1.5.6.gemspec +30 -0
  2281. data/vendor/bundle/ruby/3.2.0/specifications/json-2.20.0.gemspec +0 -0
  2282. data/vendor/bundle/ruby/3.2.0/specifications/logger-1.7.0.gemspec +22 -0
  2283. data/vendor/bundle/ruby/3.2.0/specifications/method_source-1.1.0.gemspec +21 -0
  2284. data/vendor/bundle/ruby/3.2.0/specifications/multipart-post-2.4.1.gemspec +21 -0
  2285. data/vendor/bundle/ruby/3.2.0/specifications/net-http-0.9.1.gemspec +27 -0
  2286. data/vendor/bundle/ruby/3.2.0/specifications/parallel-1.28.0.gemspec +21 -0
  2287. data/vendor/bundle/ruby/3.2.0/specifications/parser-3.3.11.1.gemspec +37 -0
  2288. data/vendor/bundle/ruby/3.2.0/specifications/pry-0.16.0.gemspec +30 -0
  2289. data/vendor/bundle/ruby/3.2.0/specifications/pry-byebug-3.12.0.gemspec +29 -0
  2290. data/vendor/bundle/ruby/3.2.0/specifications/psych-5.4.0.gemspec +32 -0
  2291. data/vendor/bundle/ruby/3.2.0/specifications/racc-1.8.1.gemspec +28 -0
  2292. data/vendor/bundle/ruby/3.2.0/specifications/rainbow-3.1.1.gemspec +25 -0
  2293. data/vendor/bundle/ruby/3.2.0/specifications/rake-13.0.6.gemspec +26 -0
  2294. data/vendor/bundle/ruby/3.2.0/specifications/reline-0.6.3.gemspec +26 -0
  2295. data/vendor/bundle/ruby/3.2.0/specifications/rspec-3.13.2.gemspec +31 -0
  2296. data/vendor/bundle/ruby/3.2.0/specifications/rspec-core-3.13.6.gemspec +31 -0
  2297. data/vendor/bundle/ruby/3.2.0/specifications/rspec-expectations-3.13.5.gemspec +29 -0
  2298. data/vendor/bundle/ruby/3.2.0/specifications/rspec-mocks-3.13.8.gemspec +29 -0
  2299. data/vendor/bundle/ruby/3.2.0/specifications/rspec-support-3.13.7.gemspec +29 -0
  2300. data/vendor/bundle/ruby/3.2.0/specifications/rubocop-0.66.0.gemspec +38 -0
  2301. data/vendor/bundle/ruby/3.2.0/specifications/ruby-progressbar-1.13.0.gemspec +29 -0
  2302. data/vendor/bundle/ruby/3.2.0/specifications/stringio-3.2.0.gemspec +26 -0
  2303. data/vendor/bundle/ruby/3.2.0/specifications/unicode-display_width-1.5.0.gemspec +29 -0
  2304. data/vendor/bundle/ruby/3.2.0/specifications/uri-1.1.1.gemspec +23 -0
  2305. metadata +2416 -27
  2306. data/lib/embed_workflow/actions.rb +0 -19
  2307. data/lib/embed_workflow/app_connections.rb +0 -75
  2308. data/lib/embed_workflow/base.rb +0 -11
  2309. data/lib/embed_workflow/catch_hook.rb +0 -24
  2310. data/lib/embed_workflow/client.rb +0 -130
  2311. data/lib/embed_workflow/errors.rb +0 -17
  2312. data/lib/embed_workflow/executions.rb +0 -28
  2313. data/lib/embed_workflow/trigger.rb +0 -31
  2314. data/lib/embed_workflow/users.rb +0 -51
  2315. data/lib/embed_workflow/workflows.rb +0 -107
@@ -0,0 +1,1997 @@
1
+ #include "../json.h"
2
+ #include "../fbuffer/fbuffer.h"
3
+ #include "../vendor/fpconv.c"
4
+
5
+ #include <math.h>
6
+ #include <ctype.h>
7
+
8
+ #include "../simd/simd.h"
9
+
10
+ /* ruby api and some helpers */
11
+
12
+ enum duplicate_key_action {
13
+ JSON_DEPRECATED = 0,
14
+ JSON_IGNORE,
15
+ JSON_RAISE,
16
+ };
17
+
18
+ typedef struct JSON_Generator_StateStruct {
19
+ VALUE indent;
20
+ VALUE space;
21
+ VALUE space_before;
22
+ VALUE object_nl;
23
+ VALUE array_nl;
24
+ VALUE as_json;
25
+
26
+ long max_nesting;
27
+ long depth;
28
+ long buffer_initial_length;
29
+
30
+ enum duplicate_key_action on_duplicate_key;
31
+
32
+ bool as_json_single_arg;
33
+ bool allow_nan;
34
+ bool ascii_only;
35
+ bool script_safe;
36
+ bool strict;
37
+ } JSON_Generator_State;
38
+
39
+ static VALUE mJSON, cState, cFragment, eGeneratorError, eNestingError, Encoding_UTF_8;
40
+
41
+ static ID i_to_s, i_to_json, i_new, i_encode;
42
+ static VALUE sym_indent, sym_space, sym_space_before, sym_object_nl, sym_array_nl, sym_max_nesting, sym_allow_nan, sym_allow_duplicate_key,
43
+ sym_ascii_only, sym_depth, sym_buffer_initial_length, sym_script_safe, sym_escape_slash, sym_strict, sym_as_json;
44
+
45
+
46
+ #define GET_STATE_TO(self, state) \
47
+ TypedData_Get_Struct(self, JSON_Generator_State, &JSON_Generator_State_type, state)
48
+
49
+ #define GET_STATE(self) \
50
+ JSON_Generator_State *state; \
51
+ GET_STATE_TO(self, state)
52
+
53
+ struct generate_json_data;
54
+
55
+ typedef void (*generator_func)(FBuffer *buffer, struct generate_json_data *data, VALUE obj);
56
+
57
+ struct generate_json_data {
58
+ FBuffer *buffer;
59
+ VALUE vstate;
60
+ JSON_Generator_State *state;
61
+ VALUE obj;
62
+ generator_func func;
63
+ long depth;
64
+ };
65
+
66
+ static SIMD_Implementation simd_impl;
67
+
68
+ static VALUE cState_from_state_s(VALUE self, VALUE opts);
69
+ static VALUE cState_partial_generate(VALUE self, VALUE obj, generator_func, VALUE io);
70
+ static void generate_json(FBuffer *buffer, struct generate_json_data *data, VALUE obj);
71
+ static void generate_json_object(FBuffer *buffer, struct generate_json_data *data, VALUE obj);
72
+ static void generate_json_array(FBuffer *buffer, struct generate_json_data *data, VALUE obj);
73
+ static void generate_json_string(FBuffer *buffer, struct generate_json_data *data, VALUE obj);
74
+ static void generate_json_null(FBuffer *buffer, struct generate_json_data *data, VALUE obj);
75
+ static void generate_json_false(FBuffer *buffer, struct generate_json_data *data, VALUE obj);
76
+ static void generate_json_true(FBuffer *buffer, struct generate_json_data *data, VALUE obj);
77
+ static void generate_json_fixnum(FBuffer *buffer, struct generate_json_data *data, VALUE obj);
78
+ static void generate_json_bignum(FBuffer *buffer, struct generate_json_data *data, VALUE obj);
79
+ static void generate_json_float(FBuffer *buffer, struct generate_json_data *data, VALUE obj);
80
+ static void generate_json_fragment(FBuffer *buffer, struct generate_json_data *data, VALUE obj);
81
+
82
+ static int usascii_encindex, utf8_encindex, binary_encindex;
83
+
84
+ NORETURN(static void) raise_generator_error_str(VALUE invalid_object, VALUE str)
85
+ {
86
+ rb_enc_associate_index(str, utf8_encindex);
87
+ VALUE exc = rb_exc_new_str(eGeneratorError, str);
88
+ rb_ivar_set(exc, rb_intern("@invalid_object"), invalid_object);
89
+ rb_exc_raise(exc);
90
+ }
91
+
92
+ #ifdef RBIMPL_ATTR_FORMAT
93
+ RBIMPL_ATTR_FORMAT(RBIMPL_PRINTF_FORMAT, 2, 3)
94
+ #endif
95
+ NORETURN(static void) raise_generator_error(VALUE invalid_object, const char *fmt, ...)
96
+ {
97
+ va_list args;
98
+ va_start(args, fmt);
99
+ VALUE str = rb_vsprintf(fmt, args);
100
+ va_end(args);
101
+ raise_generator_error_str(invalid_object, str);
102
+ }
103
+
104
+ // 0 - single byte char that don't need to be escaped.
105
+ // (x | 8) - char that needs to be escaped.
106
+ static const unsigned char CHAR_LENGTH_MASK = 7;
107
+ static const unsigned char ESCAPE_MASK = 8;
108
+
109
+ typedef struct _search_state {
110
+ const char *ptr;
111
+ const char *end;
112
+ const char *cursor;
113
+ FBuffer *buffer;
114
+
115
+ #ifdef HAVE_SIMD
116
+ const char *chunk_base;
117
+ const char *chunk_end;
118
+ bool has_matches;
119
+
120
+ #if defined(HAVE_SIMD_NEON)
121
+ uint64_t matches_mask;
122
+ #elif defined(HAVE_SIMD_SSE2)
123
+ int matches_mask;
124
+ #else
125
+ #error "Unknown SIMD Implementation."
126
+ #endif /* HAVE_SIMD_NEON */
127
+ #endif /* HAVE_SIMD */
128
+ } search_state;
129
+
130
+ ALWAYS_INLINE(static) void search_flush(search_state *search)
131
+ {
132
+ // Do not remove this conditional without profiling, specifically escape-heavy text.
133
+ // escape_UTF8_char_basic will advance search->ptr and search->cursor (effectively a search_flush).
134
+ // For back-to-back characters that need to be escaped, specifically for the SIMD code paths, this method
135
+ // will be called just before calling escape_UTF8_char_basic. There will be no characters to append for the
136
+ // consecutive characters that need to be escaped. While the fbuffer_append is a no-op if
137
+ // nothing needs to be flushed, we can save a few memory references with this conditional.
138
+ if (search->ptr > search->cursor) {
139
+ fbuffer_append(search->buffer, search->cursor, search->ptr - search->cursor);
140
+ search->cursor = search->ptr;
141
+ }
142
+ }
143
+
144
+ static const unsigned char escape_table_basic[256] = {
145
+ // ASCII Control Characters
146
+ 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9,
147
+ 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9,
148
+ // ASCII Characters
149
+ 0, 0, 9, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, // '"'
150
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
151
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
152
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 9, 0, 0, 0, // '\\'
153
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
154
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
155
+ };
156
+
157
+ static inline unsigned char search_escape_basic(search_state *search)
158
+ {
159
+ while (search->ptr < search->end) {
160
+ if (RB_UNLIKELY(escape_table_basic[(const unsigned char)*search->ptr])) {
161
+ search_flush(search);
162
+ return 1;
163
+ } else {
164
+ search->ptr++;
165
+ }
166
+ }
167
+ search_flush(search);
168
+ return 0;
169
+ }
170
+
171
+ ALWAYS_INLINE(static) void escape_UTF8_char_basic(search_state *search)
172
+ {
173
+ const unsigned char ch = (unsigned char)*search->ptr;
174
+ switch (ch) {
175
+ case '"': fbuffer_append(search->buffer, "\\\"", 2); break;
176
+ case '\\': fbuffer_append(search->buffer, "\\\\", 2); break;
177
+ case '/': fbuffer_append(search->buffer, "\\/", 2); break;
178
+ case '\b': fbuffer_append(search->buffer, "\\b", 2); break;
179
+ case '\f': fbuffer_append(search->buffer, "\\f", 2); break;
180
+ case '\n': fbuffer_append(search->buffer, "\\n", 2); break;
181
+ case '\r': fbuffer_append(search->buffer, "\\r", 2); break;
182
+ case '\t': fbuffer_append(search->buffer, "\\t", 2); break;
183
+ default: {
184
+ const char *hexdig = "0123456789abcdef";
185
+ char scratch[6] = { '\\', 'u', '0', '0', 0, 0 };
186
+ scratch[4] = hexdig[(ch >> 4) & 0xf];
187
+ scratch[5] = hexdig[ch & 0xf];
188
+ fbuffer_append(search->buffer, scratch, 6);
189
+ break;
190
+ }
191
+ }
192
+ search->ptr++;
193
+ search->cursor = search->ptr;
194
+ }
195
+
196
+ /* Converts in_string to a JSON string (without the wrapping '"'
197
+ * characters) in FBuffer out_buffer.
198
+ *
199
+ * Character are JSON-escaped according to:
200
+ *
201
+ * - Always: ASCII control characters (0x00-0x1F), dquote, and
202
+ * backslash.
203
+ *
204
+ * - If out_ascii_only: non-ASCII characters (>0x7F)
205
+ *
206
+ * - If script_safe: forwardslash (/), line separator (U+2028), and
207
+ * paragraph separator (U+2029)
208
+ *
209
+ * Everything else (should be UTF-8) is just passed through and
210
+ * appended to the result.
211
+ */
212
+
213
+
214
+ #if defined(HAVE_SIMD_NEON)
215
+ static inline unsigned char search_escape_basic_neon(search_state *search);
216
+ #elif defined(HAVE_SIMD_SSE2)
217
+ static inline unsigned char search_escape_basic_sse2(search_state *search);
218
+ #endif
219
+
220
+ static inline unsigned char search_escape_basic(search_state *search);
221
+
222
+ static inline void convert_UTF8_to_JSON(search_state *search)
223
+ {
224
+ #ifdef HAVE_SIMD
225
+ #if defined(HAVE_SIMD_NEON)
226
+ while (search_escape_basic_neon(search)) {
227
+ escape_UTF8_char_basic(search);
228
+ }
229
+ #elif defined(HAVE_SIMD_SSE2)
230
+ if (simd_impl == SIMD_SSE2) {
231
+ while (search_escape_basic_sse2(search)) {
232
+ escape_UTF8_char_basic(search);
233
+ }
234
+ return;
235
+ }
236
+ while (search_escape_basic(search)) {
237
+ escape_UTF8_char_basic(search);
238
+ }
239
+ #endif
240
+ #else
241
+ while (search_escape_basic(search)) {
242
+ escape_UTF8_char_basic(search);
243
+ }
244
+ #endif /* HAVE_SIMD */
245
+ }
246
+
247
+ static inline void escape_UTF8_char(search_state *search, unsigned char ch_len)
248
+ {
249
+ const unsigned char ch = (unsigned char)*search->ptr;
250
+ switch (ch_len) {
251
+ case 1: {
252
+ switch (ch) {
253
+ case '"': fbuffer_append(search->buffer, "\\\"", 2); break;
254
+ case '\\': fbuffer_append(search->buffer, "\\\\", 2); break;
255
+ case '/': fbuffer_append(search->buffer, "\\/", 2); break;
256
+ case '\b': fbuffer_append(search->buffer, "\\b", 2); break;
257
+ case '\f': fbuffer_append(search->buffer, "\\f", 2); break;
258
+ case '\n': fbuffer_append(search->buffer, "\\n", 2); break;
259
+ case '\r': fbuffer_append(search->buffer, "\\r", 2); break;
260
+ case '\t': fbuffer_append(search->buffer, "\\t", 2); break;
261
+ default: {
262
+ const char *hexdig = "0123456789abcdef";
263
+ char scratch[6] = { '\\', 'u', '0', '0', 0, 0 };
264
+ scratch[4] = hexdig[(ch >> 4) & 0xf];
265
+ scratch[5] = hexdig[ch & 0xf];
266
+ fbuffer_append(search->buffer, scratch, 6);
267
+ break;
268
+ }
269
+ }
270
+ break;
271
+ }
272
+ case 3: {
273
+ if (search->ptr[2] & 1) {
274
+ fbuffer_append(search->buffer, "\\u2029", 6);
275
+ } else {
276
+ fbuffer_append(search->buffer, "\\u2028", 6);
277
+ }
278
+ break;
279
+ }
280
+ }
281
+ search->cursor = (search->ptr += ch_len);
282
+ }
283
+
284
+ #ifdef HAVE_SIMD
285
+
286
+ ALWAYS_INLINE(static) char *copy_remaining_bytes(search_state *search, unsigned long vec_len, unsigned long len)
287
+ {
288
+ RBIMPL_ASSERT_OR_ASSUME(len < vec_len);
289
+
290
+ // Flush the buffer so everything up until the last 'len' characters are unflushed.
291
+ search_flush(search);
292
+
293
+ FBuffer *buf = search->buffer;
294
+ fbuffer_inc_capa(buf, vec_len);
295
+
296
+ char *s = (buf->ptr + buf->len);
297
+
298
+ // Pad the buffer with dummy characters that won't need escaping.
299
+ // This seem wasteful at first sight, but memset of vector length is very fast.
300
+ // This is a space as it can be directly represented as an immediate on AArch64.
301
+ memset(s, ' ', vec_len);
302
+
303
+ // Optimistically copy the remaining 'len' characters to the output FBuffer. If there are no characters
304
+ // to escape, then everything ends up in the correct spot. Otherwise it was convenient temporary storage.
305
+ if (vec_len == 16) {
306
+ RBIMPL_ASSERT_OR_ASSUME(len >= SIMD_MINIMUM_THRESHOLD);
307
+ json_fast_memcpy16(s, search->ptr, len);
308
+ } else {
309
+ MEMCPY(s, search->ptr, char, len);
310
+ }
311
+
312
+ return s;
313
+ }
314
+
315
+ #ifdef HAVE_SIMD_NEON
316
+
317
+ ALWAYS_INLINE(static) unsigned char neon_next_match(search_state *search)
318
+ {
319
+ uint64_t mask = search->matches_mask;
320
+ uint32_t index = trailing_zeros64(mask) >> 2;
321
+
322
+ // It is assumed escape_UTF8_char_basic will only ever increase search->ptr by at most one character.
323
+ // If we want to use a similar approach for full escaping we'll need to ensure:
324
+ // search->chunk_base + index >= search->ptr
325
+ // However, since we know escape_UTF8_char_basic only increases search->ptr by one, if the next match
326
+ // is one byte after the previous match then:
327
+ // search->chunk_base + index == search->ptr
328
+ search->ptr = search->chunk_base + index;
329
+ mask &= mask - 1;
330
+ search->matches_mask = mask;
331
+ search_flush(search);
332
+ return 1;
333
+ }
334
+
335
+ static inline unsigned char search_escape_basic_neon(search_state *search)
336
+ {
337
+ if (RB_UNLIKELY(search->has_matches)) {
338
+ // There are more matches if search->matches_mask > 0.
339
+ if (search->matches_mask > 0) {
340
+ return neon_next_match(search);
341
+ } else {
342
+ // neon_next_match will only advance search->ptr up to the last matching character.
343
+ // Skip over any characters in the last chunk that occur after the last match.
344
+ search->has_matches = false;
345
+ search->ptr = search->chunk_end;
346
+ }
347
+ }
348
+
349
+ /*
350
+ * The code below implements an SIMD-based algorithm to determine if N bytes at a time
351
+ * need to be escaped.
352
+ *
353
+ * Assume the ptr = "Te\sting!" (the double quotes are included in the string)
354
+ *
355
+ * The explanation will be limited to the first 8 bytes of the string for simplicity. However
356
+ * the vector insructions may work on larger vectors.
357
+ *
358
+ * First, we load three constants 'lower_bound', 'backslash' and 'dblquote" in vector registers.
359
+ *
360
+ * lower_bound: [20 20 20 20 20 20 20 20]
361
+ * backslash: [5C 5C 5C 5C 5C 5C 5C 5C]
362
+ * dblquote: [22 22 22 22 22 22 22 22]
363
+ *
364
+ * Next we load the first chunk of the ptr:
365
+ * [22 54 65 5C 73 74 69 6E] (" T e \ s t i n)
366
+ *
367
+ * First we check if any byte in chunk is less than 32 (0x20). This returns the following vector
368
+ * as no bytes are less than 32 (0x20):
369
+ * [0 0 0 0 0 0 0 0]
370
+ *
371
+ * Next, we check if any byte in chunk is equal to a backslash:
372
+ * [0 0 0 FF 0 0 0 0]
373
+ *
374
+ * Finally we check if any byte in chunk is equal to a double quote:
375
+ * [FF 0 0 0 0 0 0 0]
376
+ *
377
+ * Now we have three vectors where each byte indicates if the corresponding byte in chunk
378
+ * needs to be escaped. We combine these vectors with a series of logical OR instructions.
379
+ * This is the needs_escape vector and it is equal to:
380
+ * [FF 0 0 FF 0 0 0 0]
381
+ *
382
+ * Next we compute the bitwise AND between each byte and 0x1 and compute the horizontal sum of
383
+ * the values in the vector. This computes how many bytes need to be escaped within this chunk.
384
+ *
385
+ * Finally we compute a mask that indicates which bytes need to be escaped. If the mask is 0 then,
386
+ * no bytes need to be escaped and we can continue to the next chunk. If the mask is not 0 then we
387
+ * have at least one byte that needs to be escaped.
388
+ */
389
+
390
+ if (string_scan_simd_neon(&search->ptr, search->end, &search->matches_mask)) {
391
+ search->has_matches = true;
392
+ search->chunk_base = search->ptr;
393
+ search->chunk_end = search->ptr + sizeof(uint8x16_t);
394
+ return neon_next_match(search);
395
+ }
396
+
397
+ // There are fewer than 16 bytes left.
398
+ unsigned long remaining = (search->end - search->ptr);
399
+ if (remaining >= SIMD_MINIMUM_THRESHOLD) {
400
+ char *s = copy_remaining_bytes(search, sizeof(uint8x16_t), remaining);
401
+
402
+ uint64_t mask = compute_chunk_mask_neon(s);
403
+
404
+ if (!mask) {
405
+ // Nothing to escape, ensure search_flush doesn't do anything by setting
406
+ // search->cursor to search->ptr.
407
+ fbuffer_consumed(search->buffer, remaining);
408
+ search->ptr = search->end;
409
+ search->cursor = search->end;
410
+ return 0;
411
+ }
412
+
413
+ search->matches_mask = mask;
414
+ search->has_matches = true;
415
+ search->chunk_end = search->end;
416
+ search->chunk_base = search->ptr;
417
+ return neon_next_match(search);
418
+ }
419
+
420
+ if (search->ptr < search->end) {
421
+ return search_escape_basic(search);
422
+ }
423
+
424
+ search_flush(search);
425
+ return 0;
426
+ }
427
+ #endif /* HAVE_SIMD_NEON */
428
+
429
+ #ifdef HAVE_SIMD_SSE2
430
+
431
+ ALWAYS_INLINE(static) unsigned char sse2_next_match(search_state *search)
432
+ {
433
+ int mask = search->matches_mask;
434
+ int index = trailing_zeros(mask);
435
+
436
+ // It is assumed escape_UTF8_char_basic will only ever increase search->ptr by at most one character.
437
+ // If we want to use a similar approach for full escaping we'll need to ensure:
438
+ // search->chunk_base + index >= search->ptr
439
+ // However, since we know escape_UTF8_char_basic only increases search->ptr by one, if the next match
440
+ // is one byte after the previous match then:
441
+ // search->chunk_base + index == search->ptr
442
+ search->ptr = search->chunk_base + index;
443
+ mask &= mask - 1;
444
+ search->matches_mask = mask;
445
+ search_flush(search);
446
+ return 1;
447
+ }
448
+
449
+ #if defined(__clang__) || defined(__GNUC__)
450
+ #define TARGET_SSE2 __attribute__((target("sse2")))
451
+ #else
452
+ #define TARGET_SSE2
453
+ #endif
454
+
455
+ ALWAYS_INLINE(static) TARGET_SSE2 unsigned char search_escape_basic_sse2(search_state *search)
456
+ {
457
+ if (RB_UNLIKELY(search->has_matches)) {
458
+ // There are more matches if search->matches_mask > 0.
459
+ if (search->matches_mask > 0) {
460
+ return sse2_next_match(search);
461
+ } else {
462
+ // sse2_next_match will only advance search->ptr up to the last matching character.
463
+ // Skip over any characters in the last chunk that occur after the last match.
464
+ search->has_matches = false;
465
+ if (RB_UNLIKELY(search->chunk_base + sizeof(__m128i) >= search->end)) {
466
+ search->ptr = search->end;
467
+ } else {
468
+ search->ptr = search->chunk_base + sizeof(__m128i);
469
+ }
470
+ }
471
+ }
472
+
473
+ if (string_scan_simd_sse2(&search->ptr, search->end, &search->matches_mask)) {
474
+ search->has_matches = true;
475
+ search->chunk_base = search->ptr;
476
+ search->chunk_end = search->ptr + sizeof(__m128i);
477
+ return sse2_next_match(search);
478
+ }
479
+
480
+ // There are fewer than 16 bytes left.
481
+ unsigned long remaining = (search->end - search->ptr);
482
+ if (remaining >= SIMD_MINIMUM_THRESHOLD) {
483
+ char *s = copy_remaining_bytes(search, sizeof(__m128i), remaining);
484
+
485
+ int needs_escape_mask = compute_chunk_mask_sse2(s);
486
+
487
+ if (needs_escape_mask == 0) {
488
+ // Nothing to escape, ensure search_flush doesn't do anything by setting
489
+ // search->cursor to search->ptr.
490
+ fbuffer_consumed(search->buffer, remaining);
491
+ search->ptr = search->end;
492
+ search->cursor = search->end;
493
+ return 0;
494
+ }
495
+
496
+ search->has_matches = true;
497
+ search->matches_mask = needs_escape_mask;
498
+ search->chunk_base = search->ptr;
499
+ return sse2_next_match(search);
500
+ }
501
+
502
+ if (search->ptr < search->end) {
503
+ return search_escape_basic(search);
504
+ }
505
+
506
+ search_flush(search);
507
+ return 0;
508
+ }
509
+
510
+ #endif /* HAVE_SIMD_SSE2 */
511
+
512
+ #endif /* HAVE_SIMD */
513
+
514
+ static const unsigned char script_safe_escape_table[256] = {
515
+ // ASCII Control Characters
516
+ 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9,
517
+ 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9,
518
+ // ASCII Characters
519
+ 0, 0, 9, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 9, // '"' and '/'
520
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
521
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
522
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 9, 0, 0, 0, // '\\'
523
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
524
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
525
+ // Continuation byte
526
+ 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
527
+ 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
528
+ 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
529
+ 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
530
+ // First byte of a 2-byte code point
531
+ 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
532
+ 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
533
+ // First byte of a 3-byte code point
534
+ 3, 3,11, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, // 0xE2 is the start of \u2028 and \u2029
535
+ //First byte of a 4+ byte code point
536
+ 4, 4, 4, 4, 4, 4, 4, 4, 5, 5, 5, 5, 6, 6, 9, 9,
537
+ };
538
+
539
+ static inline unsigned char search_script_safe_escape(search_state *search)
540
+ {
541
+ while (search->ptr < search->end) {
542
+ unsigned char ch = (unsigned char)*search->ptr;
543
+ unsigned char ch_len = script_safe_escape_table[ch];
544
+
545
+ if (RB_UNLIKELY(ch_len)) {
546
+ if (ch_len & ESCAPE_MASK) {
547
+ if (RB_UNLIKELY(ch_len == 11)) {
548
+ const unsigned char *uptr = (const unsigned char *)search->ptr;
549
+ if (!(uptr[1] == 0x80 && (uptr[2] >> 1) == 0x54)) {
550
+ search->ptr += 3;
551
+ continue;
552
+ }
553
+ }
554
+ search_flush(search);
555
+ return ch_len & CHAR_LENGTH_MASK;
556
+ } else {
557
+ search->ptr += ch_len;
558
+ }
559
+ } else {
560
+ search->ptr++;
561
+ }
562
+ }
563
+ search_flush(search);
564
+ return 0;
565
+ }
566
+
567
+ static void convert_UTF8_to_script_safe_JSON(search_state *search)
568
+ {
569
+ unsigned char ch_len;
570
+ while ((ch_len = search_script_safe_escape(search))) {
571
+ escape_UTF8_char(search, ch_len);
572
+ }
573
+ }
574
+
575
+ static const unsigned char ascii_only_escape_table[256] = {
576
+ // ASCII Control Characters
577
+ 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9,
578
+ 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9,
579
+ // ASCII Characters
580
+ 0, 0, 9, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, // '"'
581
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
582
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
583
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 9, 0, 0, 0, // '\\'
584
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
585
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
586
+ // Continuation byte
587
+ 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
588
+ 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
589
+ 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
590
+ 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
591
+ // First byte of a 2-byte code point
592
+ 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
593
+ 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
594
+ // First byte of a 3-byte code point
595
+ 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3,
596
+ //First byte of a 4+ byte code point
597
+ 4, 4, 4, 4, 4, 4, 4, 4, 5, 5, 5, 5, 6, 6, 9, 9,
598
+ };
599
+
600
+ static inline unsigned char search_ascii_only_escape(search_state *search, const unsigned char escape_table[256])
601
+ {
602
+ while (search->ptr < search->end) {
603
+ unsigned char ch = (unsigned char)*search->ptr;
604
+ unsigned char ch_len = escape_table[ch];
605
+
606
+ if (RB_UNLIKELY(ch_len)) {
607
+ search_flush(search);
608
+ return ch_len & CHAR_LENGTH_MASK;
609
+ } else {
610
+ search->ptr++;
611
+ }
612
+ }
613
+ search_flush(search);
614
+ return 0;
615
+ }
616
+
617
+ static inline void full_escape_UTF8_char(search_state *search, unsigned char ch_len)
618
+ {
619
+ const unsigned char ch = (unsigned char)*search->ptr;
620
+ switch (ch_len) {
621
+ case 1: {
622
+ switch (ch) {
623
+ case '"': fbuffer_append(search->buffer, "\\\"", 2); break;
624
+ case '\\': fbuffer_append(search->buffer, "\\\\", 2); break;
625
+ case '/': fbuffer_append(search->buffer, "\\/", 2); break;
626
+ case '\b': fbuffer_append(search->buffer, "\\b", 2); break;
627
+ case '\f': fbuffer_append(search->buffer, "\\f", 2); break;
628
+ case '\n': fbuffer_append(search->buffer, "\\n", 2); break;
629
+ case '\r': fbuffer_append(search->buffer, "\\r", 2); break;
630
+ case '\t': fbuffer_append(search->buffer, "\\t", 2); break;
631
+ default: {
632
+ const char *hexdig = "0123456789abcdef";
633
+ char scratch[6] = { '\\', 'u', '0', '0', 0, 0 };
634
+ scratch[4] = hexdig[(ch >> 4) & 0xf];
635
+ scratch[5] = hexdig[ch & 0xf];
636
+ fbuffer_append(search->buffer, scratch, 6);
637
+ break;
638
+ }
639
+ }
640
+ break;
641
+ }
642
+ default: {
643
+ const char *hexdig = "0123456789abcdef";
644
+ char scratch[12] = { '\\', 'u', 0, 0, 0, 0, '\\', 'u' };
645
+
646
+ uint32_t wchar = 0;
647
+
648
+ switch (ch_len) {
649
+ case 2:
650
+ wchar = ch & 0x1F;
651
+ break;
652
+ case 3:
653
+ wchar = ch & 0x0F;
654
+ break;
655
+ case 4:
656
+ wchar = ch & 0x07;
657
+ break;
658
+ }
659
+
660
+ for (short i = 1; i < ch_len; i++) {
661
+ wchar = (wchar << 6) | (search->ptr[i] & 0x3F);
662
+ }
663
+
664
+ if (wchar <= 0xFFFF) {
665
+ scratch[2] = hexdig[wchar >> 12];
666
+ scratch[3] = hexdig[(wchar >> 8) & 0xf];
667
+ scratch[4] = hexdig[(wchar >> 4) & 0xf];
668
+ scratch[5] = hexdig[wchar & 0xf];
669
+ fbuffer_append(search->buffer, scratch, 6);
670
+ } else {
671
+ uint16_t hi, lo;
672
+ wchar -= 0x10000;
673
+ hi = 0xD800 + (uint16_t)(wchar >> 10);
674
+ lo = 0xDC00 + (uint16_t)(wchar & 0x3FF);
675
+
676
+ scratch[2] = hexdig[hi >> 12];
677
+ scratch[3] = hexdig[(hi >> 8) & 0xf];
678
+ scratch[4] = hexdig[(hi >> 4) & 0xf];
679
+ scratch[5] = hexdig[hi & 0xf];
680
+
681
+ scratch[8] = hexdig[lo >> 12];
682
+ scratch[9] = hexdig[(lo >> 8) & 0xf];
683
+ scratch[10] = hexdig[(lo >> 4) & 0xf];
684
+ scratch[11] = hexdig[lo & 0xf];
685
+
686
+ fbuffer_append(search->buffer, scratch, 12);
687
+ }
688
+
689
+ break;
690
+ }
691
+ }
692
+ search->cursor = (search->ptr += ch_len);
693
+ }
694
+
695
+ static void convert_UTF8_to_ASCII_only_JSON(search_state *search, const unsigned char escape_table[256])
696
+ {
697
+ unsigned char ch_len;
698
+ while ((ch_len = search_ascii_only_escape(search, escape_table))) {
699
+ full_escape_UTF8_char(search, ch_len);
700
+ }
701
+ }
702
+
703
+ static void State_mark(void *ptr)
704
+ {
705
+ JSON_Generator_State *state = ptr;
706
+ rb_gc_mark_movable(state->indent);
707
+ rb_gc_mark_movable(state->space);
708
+ rb_gc_mark_movable(state->space_before);
709
+ rb_gc_mark_movable(state->object_nl);
710
+ rb_gc_mark_movable(state->array_nl);
711
+ rb_gc_mark_movable(state->as_json);
712
+ }
713
+
714
+ static void State_compact(void *ptr)
715
+ {
716
+ JSON_Generator_State *state = ptr;
717
+ state->indent = rb_gc_location(state->indent);
718
+ state->space = rb_gc_location(state->space);
719
+ state->space_before = rb_gc_location(state->space_before);
720
+ state->object_nl = rb_gc_location(state->object_nl);
721
+ state->array_nl = rb_gc_location(state->array_nl);
722
+ state->as_json = rb_gc_location(state->as_json);
723
+ }
724
+
725
+ static size_t State_memsize(const void *ptr)
726
+ {
727
+ #ifdef HAVE_RUBY_TYPED_EMBEDDABLE
728
+ return 0;
729
+ #else
730
+ return sizeof(JSON_Generator_State);
731
+ #endif
732
+ }
733
+
734
+ static const rb_data_type_t JSON_Generator_State_type = {
735
+ .wrap_struct_name = "JSON/Generator/State",
736
+ .function = {
737
+ .dmark = State_mark,
738
+ .dfree = RUBY_DEFAULT_FREE,
739
+ .dsize = State_memsize,
740
+ .dcompact = State_compact,
741
+ },
742
+ .flags = RUBY_TYPED_WB_PROTECTED | RUBY_TYPED_FREE_IMMEDIATELY | RUBY_TYPED_FROZEN_SHAREABLE | RUBY_TYPED_EMBEDDABLE,
743
+ };
744
+
745
+ static void state_init(JSON_Generator_State *state)
746
+ {
747
+ state->max_nesting = 100;
748
+ state->buffer_initial_length = FBUFFER_INITIAL_LENGTH_DEFAULT;
749
+ }
750
+
751
+ static VALUE cState_s_allocate(VALUE klass)
752
+ {
753
+ JSON_Generator_State *state;
754
+ VALUE obj = TypedData_Make_Struct(klass, JSON_Generator_State, &JSON_Generator_State_type, state);
755
+ state_init(state);
756
+ return obj;
757
+ }
758
+
759
+ static void vstate_spill(struct generate_json_data *data)
760
+ {
761
+ VALUE vstate = cState_s_allocate(cState);
762
+ GET_STATE(vstate);
763
+ MEMCPY(state, data->state, JSON_Generator_State, 1);
764
+ data->state = state;
765
+ data->vstate = vstate;
766
+ RB_OBJ_WRITTEN(vstate, Qundef, state->indent);
767
+ RB_OBJ_WRITTEN(vstate, Qundef, state->space);
768
+ RB_OBJ_WRITTEN(vstate, Qundef, state->space_before);
769
+ RB_OBJ_WRITTEN(vstate, Qundef, state->object_nl);
770
+ RB_OBJ_WRITTEN(vstate, Qundef, state->array_nl);
771
+ RB_OBJ_WRITTEN(vstate, Qundef, state->as_json);
772
+ }
773
+
774
+ static inline VALUE json_call_to_json(struct generate_json_data *data, VALUE obj)
775
+ {
776
+ if (RB_UNLIKELY(!data->vstate)) {
777
+ vstate_spill(data);
778
+ }
779
+ GET_STATE(data->vstate);
780
+ state->depth = data->depth;
781
+ VALUE tmp = rb_funcall(obj, i_to_json, 1, data->vstate);
782
+ // no need to restore state->depth, vstate is just a temporary State
783
+ return tmp;
784
+ }
785
+
786
+ static VALUE
787
+ json_call_as_json(JSON_Generator_State *state, VALUE object, VALUE is_key)
788
+ {
789
+ VALUE proc_args[2] = {object, is_key};
790
+ return rb_proc_call_with_block(state->as_json, 2, proc_args, Qnil);
791
+ }
792
+
793
+ static VALUE
794
+ convert_string_subclass(VALUE key)
795
+ {
796
+ VALUE key_to_s = rb_funcall(key, i_to_s, 0);
797
+
798
+ if (RB_UNLIKELY(!RB_TYPE_P(key_to_s, T_STRING))) {
799
+ VALUE cname = rb_obj_class(key);
800
+ rb_raise(rb_eTypeError,
801
+ "can't convert %"PRIsVALUE" to %s (%"PRIsVALUE"#%s gives %"PRIsVALUE")",
802
+ cname, "String", cname, "to_s", rb_obj_class(key_to_s));
803
+ }
804
+
805
+ return key_to_s;
806
+ }
807
+
808
+ static bool enc_utf8_compatible_p(int enc_idx)
809
+ {
810
+ if (enc_idx == usascii_encindex) return true;
811
+ if (enc_idx == utf8_encindex) return true;
812
+ return false;
813
+ }
814
+
815
+ static VALUE encode_json_string_try(VALUE str)
816
+ {
817
+ return rb_funcall(str, i_encode, 1, Encoding_UTF_8);
818
+ }
819
+
820
+ static VALUE encode_json_string_rescue(VALUE str, VALUE exception)
821
+ {
822
+ raise_generator_error_str(str, rb_funcall(exception, rb_intern("message"), 0));
823
+ return Qundef;
824
+ }
825
+
826
+ static inline int json_str_coderange(VALUE str) {
827
+ int coderange = RB_ENC_CODERANGE(str);
828
+ if (coderange == RUBY_ENC_CODERANGE_UNKNOWN) {
829
+ coderange = rb_enc_str_coderange(str);
830
+ }
831
+ return coderange;
832
+ }
833
+
834
+ static inline bool valid_json_string_p(VALUE str)
835
+ {
836
+ int coderange = json_str_coderange(str);
837
+
838
+ if (RB_LIKELY(coderange == ENC_CODERANGE_7BIT)) {
839
+ return true;
840
+ }
841
+
842
+ if (RB_LIKELY(coderange == ENC_CODERANGE_VALID)) {
843
+ return enc_utf8_compatible_p(RB_ENCODING_GET_INLINED(str));
844
+ }
845
+
846
+ return false;
847
+ }
848
+
849
+ NOINLINE(static) VALUE convert_invalid_encoding(struct generate_json_data *data, VALUE str, bool as_json_called, bool is_key)
850
+ {
851
+ if (!as_json_called && data->state->strict && RTEST(data->state->as_json)) {
852
+ VALUE coerced_str = json_call_as_json(data->state, str, Qfalse);
853
+ if (coerced_str != str) {
854
+ if (RB_TYPE_P(coerced_str, T_STRING)) {
855
+ if (!valid_json_string_p(coerced_str)) {
856
+ raise_generator_error(str, "source sequence is illegal/malformed utf-8");
857
+ }
858
+ } else {
859
+ // as_json could return another type than T_STRING
860
+ if (is_key) {
861
+ raise_generator_error(coerced_str, "%"PRIsVALUE" not allowed as object key in JSON", CLASS_OF(coerced_str));
862
+ }
863
+ }
864
+
865
+ return coerced_str;
866
+ }
867
+ }
868
+
869
+ if (RB_ENCODING_GET_INLINED(str) == binary_encindex) {
870
+ VALUE utf8_string = rb_enc_associate_index(rb_str_dup(str), utf8_encindex);
871
+ switch (rb_enc_str_coderange(utf8_string)) {
872
+ case ENC_CODERANGE_7BIT:
873
+ return utf8_string;
874
+ case ENC_CODERANGE_VALID:
875
+ // For historical reason, we silently reinterpret binary strings as UTF-8 if it would work.
876
+ // TODO: Raise in 3.0.0
877
+ rb_warn("JSON.generate: UTF-8 string passed as BINARY, this will raise an encoding error in json 3.0");
878
+ return utf8_string;
879
+ break;
880
+ }
881
+ }
882
+
883
+ return rb_rescue(encode_json_string_try, str, encode_json_string_rescue, str);
884
+ }
885
+
886
+ ALWAYS_INLINE(static) VALUE ensure_valid_encoding(struct generate_json_data *data, VALUE str, bool as_json_called, bool is_key)
887
+ {
888
+ if (RB_LIKELY(valid_json_string_p(str))) {
889
+ return str;
890
+ }
891
+ else {
892
+ return convert_invalid_encoding(data, str, as_json_called, is_key);
893
+ }
894
+ }
895
+
896
+ static void raw_generate_json_string(FBuffer *buffer, struct generate_json_data *data, VALUE obj)
897
+ {
898
+ fbuffer_append_char(buffer, '"');
899
+
900
+ long len;
901
+ search_state search;
902
+ search.buffer = buffer;
903
+ RSTRING_GETMEM(obj, search.ptr, len);
904
+ search.cursor = search.ptr;
905
+ search.end = search.ptr + len;
906
+
907
+ #ifdef HAVE_SIMD
908
+ search.matches_mask = 0;
909
+ search.has_matches = false;
910
+ search.chunk_base = NULL;
911
+ search.chunk_end = NULL;
912
+ #endif /* HAVE_SIMD */
913
+
914
+ switch (json_str_coderange(obj)) {
915
+ case ENC_CODERANGE_7BIT:
916
+ case ENC_CODERANGE_VALID:
917
+ if (RB_UNLIKELY(data->state->ascii_only)) {
918
+ convert_UTF8_to_ASCII_only_JSON(&search, data->state->script_safe ? script_safe_escape_table : ascii_only_escape_table);
919
+ } else if (RB_UNLIKELY(data->state->script_safe)) {
920
+ convert_UTF8_to_script_safe_JSON(&search);
921
+ } else {
922
+ convert_UTF8_to_JSON(&search);
923
+ }
924
+ break;
925
+ default:
926
+ raise_generator_error(obj, "source sequence is illegal/malformed utf-8");
927
+ break;
928
+ }
929
+ fbuffer_append_char(buffer, '"');
930
+ }
931
+
932
+ static void generate_json_string(FBuffer *buffer, struct generate_json_data *data, VALUE obj)
933
+ {
934
+ obj = ensure_valid_encoding(data, obj, false, false);
935
+ raw_generate_json_string(buffer, data, obj);
936
+ }
937
+
938
+ struct hash_foreach_arg {
939
+ VALUE hash;
940
+ struct generate_json_data *data;
941
+ int first_key_type;
942
+ bool first;
943
+ bool mixed_keys_encountered;
944
+ };
945
+
946
+ NOINLINE(static) void
947
+ json_inspect_hash_with_mixed_keys(struct hash_foreach_arg *arg)
948
+ {
949
+ if (arg->mixed_keys_encountered) {
950
+ return;
951
+ }
952
+ arg->mixed_keys_encountered = true;
953
+
954
+ JSON_Generator_State *state = arg->data->state;
955
+ if (state->on_duplicate_key != JSON_IGNORE) {
956
+ VALUE do_raise = state->on_duplicate_key == JSON_RAISE ? Qtrue : Qfalse;
957
+ rb_funcall(mJSON, rb_intern("on_mixed_keys_hash"), 2, arg->hash, do_raise);
958
+ }
959
+ }
960
+
961
+ static int
962
+ json_object_i(VALUE key, VALUE val, VALUE _arg)
963
+ {
964
+ struct hash_foreach_arg *arg = (struct hash_foreach_arg *)_arg;
965
+ struct generate_json_data *data = arg->data;
966
+
967
+ FBuffer *buffer = data->buffer;
968
+ JSON_Generator_State *state = data->state;
969
+
970
+ long depth = data->depth;
971
+ int key_type = rb_type(key);
972
+
973
+ if (arg->first) {
974
+ arg->first = false;
975
+ arg->first_key_type = key_type;
976
+ }
977
+ else {
978
+ fbuffer_append_char(buffer, ',');
979
+ }
980
+
981
+ if (RB_UNLIKELY(data->state->object_nl)) {
982
+ fbuffer_append_str(buffer, data->state->object_nl);
983
+ }
984
+ if (RB_UNLIKELY(data->state->indent)) {
985
+ fbuffer_append_str_repeat(buffer, data->state->indent, depth);
986
+ }
987
+
988
+ VALUE key_to_s;
989
+ bool as_json_called = false;
990
+
991
+ start:
992
+ switch (key_type) {
993
+ case T_STRING:
994
+ if (RB_UNLIKELY(arg->first_key_type != T_STRING)) {
995
+ json_inspect_hash_with_mixed_keys(arg);
996
+ }
997
+
998
+ if (RB_LIKELY(RBASIC_CLASS(key) == rb_cString)) {
999
+ key_to_s = key;
1000
+ } else {
1001
+ key_to_s = convert_string_subclass(key);
1002
+ }
1003
+ break;
1004
+ case T_SYMBOL:
1005
+ if (RB_UNLIKELY(arg->first_key_type != T_SYMBOL)) {
1006
+ json_inspect_hash_with_mixed_keys(arg);
1007
+ }
1008
+
1009
+ key_to_s = rb_sym2str(key);
1010
+ break;
1011
+ default:
1012
+ if (data->state->strict) {
1013
+ if (RTEST(data->state->as_json) && !as_json_called) {
1014
+ key = json_call_as_json(data->state, key, Qtrue);
1015
+ key_type = rb_type(key);
1016
+ as_json_called = true;
1017
+ goto start;
1018
+ } else {
1019
+ raise_generator_error(key, "%"PRIsVALUE" not allowed as object key in JSON", CLASS_OF(key));
1020
+ }
1021
+ }
1022
+ key_to_s = rb_convert_type(key, T_STRING, "String", "to_s");
1023
+ break;
1024
+ }
1025
+
1026
+ key_to_s = ensure_valid_encoding(data, key_to_s, as_json_called, true);
1027
+
1028
+ if (RB_LIKELY(RBASIC_CLASS(key_to_s) == rb_cString)) {
1029
+ raw_generate_json_string(buffer, data, key_to_s);
1030
+ } else {
1031
+ generate_json(buffer, data, key_to_s);
1032
+ }
1033
+ if (RB_UNLIKELY(state->space_before)) fbuffer_append_str(buffer, data->state->space_before);
1034
+ fbuffer_append_char(buffer, ':');
1035
+ if (RB_UNLIKELY(state->space)) fbuffer_append_str(buffer, data->state->space);
1036
+ generate_json(buffer, data, val);
1037
+
1038
+ return ST_CONTINUE;
1039
+ }
1040
+
1041
+ static inline long increase_depth(struct generate_json_data *data)
1042
+ {
1043
+ JSON_Generator_State *state = data->state;
1044
+ long depth = ++data->depth;
1045
+ if (RB_UNLIKELY(depth > state->max_nesting && state->max_nesting)) {
1046
+ rb_raise(eNestingError, "nesting of %ld is too deep. Did you try to serialize objects with circular references?", --data->depth);
1047
+ }
1048
+ return depth;
1049
+ }
1050
+
1051
+ static void generate_json_object(FBuffer *buffer, struct generate_json_data *data, VALUE obj)
1052
+ {
1053
+ long depth = increase_depth(data);
1054
+
1055
+ if (RHASH_SIZE(obj) == 0) {
1056
+ fbuffer_append(buffer, "{}", 2);
1057
+ --data->depth;
1058
+ return;
1059
+ }
1060
+
1061
+ fbuffer_append_char(buffer, '{');
1062
+
1063
+ struct hash_foreach_arg arg = {
1064
+ .hash = obj,
1065
+ .data = data,
1066
+ .first = true,
1067
+ };
1068
+ rb_hash_foreach(obj, json_object_i, (VALUE)&arg);
1069
+
1070
+ depth = --data->depth;
1071
+ if (RB_UNLIKELY(data->state->object_nl)) {
1072
+ fbuffer_append_str(buffer, data->state->object_nl);
1073
+ if (RB_UNLIKELY(data->state->indent)) {
1074
+ fbuffer_append_str_repeat(buffer, data->state->indent, depth);
1075
+ }
1076
+ }
1077
+ fbuffer_append_char(buffer, '}');
1078
+ }
1079
+
1080
+ static void generate_json_array(FBuffer *buffer, struct generate_json_data *data, VALUE obj)
1081
+ {
1082
+ long depth = increase_depth(data);
1083
+
1084
+ if (RARRAY_LEN(obj) == 0) {
1085
+ fbuffer_append(buffer, "[]", 2);
1086
+ --data->depth;
1087
+ return;
1088
+ }
1089
+
1090
+ fbuffer_append_char(buffer, '[');
1091
+ if (RB_UNLIKELY(data->state->array_nl)) fbuffer_append_str(buffer, data->state->array_nl);
1092
+ for (int i = 0; i < RARRAY_LEN(obj); i++) {
1093
+ if (i > 0) {
1094
+ fbuffer_append_char(buffer, ',');
1095
+ if (RB_UNLIKELY(data->state->array_nl)) fbuffer_append_str(buffer, data->state->array_nl);
1096
+ }
1097
+ if (RB_UNLIKELY(data->state->indent)) {
1098
+ fbuffer_append_str_repeat(buffer, data->state->indent, depth);
1099
+ }
1100
+ generate_json(buffer, data, RARRAY_AREF(obj, i));
1101
+ }
1102
+ data->depth = --depth;
1103
+ if (RB_UNLIKELY(data->state->array_nl)) {
1104
+ fbuffer_append_str(buffer, data->state->array_nl);
1105
+ if (RB_UNLIKELY(data->state->indent)) {
1106
+ fbuffer_append_str_repeat(buffer, data->state->indent, depth);
1107
+ }
1108
+ }
1109
+ fbuffer_append_char(buffer, ']');
1110
+ }
1111
+
1112
+ static void generate_json_fallback(FBuffer *buffer, struct generate_json_data *data, VALUE obj)
1113
+ {
1114
+ VALUE tmp;
1115
+ if (rb_respond_to(obj, i_to_json)) {
1116
+ tmp = json_call_to_json(data, obj);
1117
+ Check_Type(tmp, T_STRING);
1118
+ fbuffer_append_str(buffer, tmp);
1119
+ } else {
1120
+ tmp = rb_funcall(obj, i_to_s, 0);
1121
+ Check_Type(tmp, T_STRING);
1122
+ generate_json_string(buffer, data, tmp);
1123
+ }
1124
+ }
1125
+
1126
+ static inline void generate_json_symbol(FBuffer *buffer, struct generate_json_data *data, VALUE obj)
1127
+ {
1128
+ if (data->state->strict) {
1129
+ generate_json_string(buffer, data, rb_sym2str(obj));
1130
+ } else {
1131
+ generate_json_fallback(buffer, data, obj);
1132
+ }
1133
+ }
1134
+
1135
+ static void generate_json_null(FBuffer *buffer, struct generate_json_data *data, VALUE obj)
1136
+ {
1137
+ fbuffer_append(buffer, "null", 4);
1138
+ }
1139
+
1140
+ static void generate_json_false(FBuffer *buffer, struct generate_json_data *data, VALUE obj)
1141
+ {
1142
+ fbuffer_append(buffer, "false", 5);
1143
+ }
1144
+
1145
+ static void generate_json_true(FBuffer *buffer, struct generate_json_data *data, VALUE obj)
1146
+ {
1147
+ fbuffer_append(buffer, "true", 4);
1148
+ }
1149
+
1150
+ static void generate_json_fixnum(FBuffer *buffer, struct generate_json_data *data, VALUE obj)
1151
+ {
1152
+ fbuffer_append_long(buffer, FIX2LONG(obj));
1153
+ }
1154
+
1155
+ static void generate_json_bignum(FBuffer *buffer, struct generate_json_data *data, VALUE obj)
1156
+ {
1157
+ VALUE tmp = rb_funcall(obj, i_to_s, 0);
1158
+ fbuffer_append_str(buffer, StringValue(tmp));
1159
+ }
1160
+
1161
+ static void generate_json_float(FBuffer *buffer, struct generate_json_data *data, VALUE obj)
1162
+ {
1163
+ double value = RFLOAT_VALUE(obj);
1164
+ char allow_nan = data->state->allow_nan;
1165
+ if (isinf(value) || isnan(value)) {
1166
+ /* for NaN and Infinity values we either raise an error or rely on Float#to_s. */
1167
+ if (!allow_nan) {
1168
+ if (data->state->strict && data->state->as_json) {
1169
+ VALUE casted_obj = json_call_as_json(data->state, obj, Qfalse);
1170
+ if (casted_obj != obj) {
1171
+ increase_depth(data);
1172
+ generate_json(buffer, data, casted_obj);
1173
+ data->depth--;
1174
+ return;
1175
+ }
1176
+ }
1177
+ raise_generator_error(obj, "%"PRIsVALUE" not allowed in JSON", rb_funcall(obj, i_to_s, 0));
1178
+ }
1179
+
1180
+ VALUE tmp = rb_funcall(obj, i_to_s, 0);
1181
+ fbuffer_append_str(buffer, tmp);
1182
+ return;
1183
+ }
1184
+
1185
+ /* This implementation writes directly into the buffer. We reserve
1186
+ * the 32 characters that fpconv_dtoa states as its maximum.
1187
+ */
1188
+ fbuffer_inc_capa(buffer, 32);
1189
+ char* d = buffer->ptr + buffer->len;
1190
+ int len = fpconv_dtoa(value, d);
1191
+ /* fpconv_dtoa converts a float to its shortest string representation,
1192
+ * but it adds a ".0" if this is a plain integer.
1193
+ */
1194
+ fbuffer_consumed(buffer, len);
1195
+ }
1196
+
1197
+ static void generate_json_fragment(FBuffer *buffer, struct generate_json_data *data, VALUE obj)
1198
+ {
1199
+ VALUE fragment = RSTRUCT_GET(obj, 0);
1200
+ Check_Type(fragment, T_STRING);
1201
+ fbuffer_append_str(buffer, fragment);
1202
+ }
1203
+
1204
+ static inline void generate_json_general(FBuffer *buffer, struct generate_json_data *data, VALUE obj, bool fallback)
1205
+ {
1206
+ bool as_json_called = false;
1207
+ start:
1208
+ if (obj == Qnil) {
1209
+ generate_json_null(buffer, data, obj);
1210
+ } else if (obj == Qfalse) {
1211
+ generate_json_false(buffer, data, obj);
1212
+ } else if (obj == Qtrue) {
1213
+ generate_json_true(buffer, data, obj);
1214
+ } else if (RB_SPECIAL_CONST_P(obj)) {
1215
+ if (RB_FIXNUM_P(obj)) {
1216
+ generate_json_fixnum(buffer, data, obj);
1217
+ } else if (RB_FLONUM_P(obj)) {
1218
+ generate_json_float(buffer, data, obj);
1219
+ } else if (RB_STATIC_SYM_P(obj)) {
1220
+ generate_json_symbol(buffer, data, obj);
1221
+ } else {
1222
+ goto general;
1223
+ }
1224
+ } else {
1225
+ VALUE klass = RBASIC_CLASS(obj);
1226
+ switch (RB_BUILTIN_TYPE(obj)) {
1227
+ case T_BIGNUM:
1228
+ generate_json_bignum(buffer, data, obj);
1229
+ break;
1230
+ case T_HASH:
1231
+ if (fallback && klass != rb_cHash) goto general;
1232
+ generate_json_object(buffer, data, obj);
1233
+ break;
1234
+ case T_ARRAY:
1235
+ if (fallback && klass != rb_cArray) goto general;
1236
+ generate_json_array(buffer, data, obj);
1237
+ break;
1238
+ case T_STRING:
1239
+ if (fallback && klass != rb_cString) goto general;
1240
+
1241
+ if (RB_LIKELY(valid_json_string_p(obj))) {
1242
+ raw_generate_json_string(buffer, data, obj);
1243
+ } else if (as_json_called) {
1244
+ raise_generator_error(obj, "source sequence is illegal/malformed utf-8");
1245
+ } else {
1246
+ obj = ensure_valid_encoding(data, obj, false, false);
1247
+ as_json_called = true;
1248
+ goto start;
1249
+ }
1250
+ break;
1251
+ case T_SYMBOL:
1252
+ generate_json_symbol(buffer, data, obj);
1253
+ break;
1254
+ case T_FLOAT:
1255
+ if (fallback && klass != rb_cFloat) goto general;
1256
+ generate_json_float(buffer, data, obj);
1257
+ break;
1258
+ case T_STRUCT:
1259
+ if (klass != cFragment) goto general;
1260
+ generate_json_fragment(buffer, data, obj);
1261
+ break;
1262
+ default:
1263
+ general:
1264
+ if (data->state->strict) {
1265
+ if (RTEST(data->state->as_json) && !as_json_called) {
1266
+ obj = json_call_as_json(data->state, obj, Qfalse);
1267
+ as_json_called = true;
1268
+ goto start;
1269
+ } else {
1270
+ raise_generator_error(obj, "%"PRIsVALUE" not allowed in JSON", CLASS_OF(obj));
1271
+ }
1272
+ } else {
1273
+ generate_json_fallback(buffer, data, obj);
1274
+ }
1275
+ }
1276
+ }
1277
+ }
1278
+
1279
+ static void generate_json(FBuffer *buffer, struct generate_json_data *data, VALUE obj)
1280
+ {
1281
+ generate_json_general(buffer, data, obj, true);
1282
+ }
1283
+
1284
+ static void generate_json_no_fallback(FBuffer *buffer, struct generate_json_data *data, VALUE obj)
1285
+ {
1286
+ generate_json_general(buffer, data, obj, false);
1287
+ }
1288
+
1289
+ static VALUE generate_json_try(VALUE d)
1290
+ {
1291
+ struct generate_json_data *data = (struct generate_json_data *)d;
1292
+
1293
+ data->func(data->buffer, data, data->obj);
1294
+
1295
+ return fbuffer_finalize(data->buffer);
1296
+ }
1297
+
1298
+ static VALUE generate_json_ensure(VALUE d)
1299
+ {
1300
+ struct generate_json_data *data = (struct generate_json_data *)d;
1301
+ fbuffer_free(data->buffer);
1302
+
1303
+ return Qundef;
1304
+ }
1305
+
1306
+ static inline VALUE cState_partial_generate(VALUE self, VALUE obj, generator_func func, VALUE io)
1307
+ {
1308
+ GET_STATE(self);
1309
+
1310
+ char stack_buffer[FBUFFER_STACK_SIZE];
1311
+ FBuffer buffer = { 0 };
1312
+ fbuffer_init(&buffer, state->buffer_initial_length, io, stack_buffer, FBUFFER_STACK_SIZE);
1313
+
1314
+ struct generate_json_data data = {
1315
+ .buffer = &buffer,
1316
+ .vstate = Qfalse, // don't use self as it may be frozen and its depth is mutated when calling to_json
1317
+ .state = state,
1318
+ .depth = state->depth,
1319
+ .obj = obj,
1320
+ .func = func
1321
+ };
1322
+ return rb_ensure(generate_json_try, (VALUE)&data, generate_json_ensure, (VALUE)&data);
1323
+ }
1324
+
1325
+ /* call-seq:
1326
+ * generate(obj) -> String
1327
+ * generate(obj, anIO) -> anIO
1328
+ *
1329
+ * Generates a valid JSON document from object +obj+ and returns the
1330
+ * result. If no valid JSON document can be created this method raises a
1331
+ * GeneratorError exception.
1332
+ */
1333
+ static VALUE cState_generate(int argc, VALUE *argv, VALUE self)
1334
+ {
1335
+ rb_check_arity(argc, 1, 2);
1336
+ VALUE obj = argv[0];
1337
+ VALUE io = argc > 1 ? argv[1] : Qnil;
1338
+ return cState_partial_generate(self, obj, generate_json, io);
1339
+ }
1340
+
1341
+ /* :nodoc: */
1342
+ static VALUE cState_generate_no_fallback(int argc, VALUE *argv, VALUE self)
1343
+ {
1344
+ rb_check_arity(argc, 1, 2);
1345
+ VALUE obj = argv[0];
1346
+ VALUE io = argc > 1 ? argv[1] : Qnil;
1347
+ return cState_partial_generate(self, obj, generate_json_no_fallback, io);
1348
+ }
1349
+
1350
+ static VALUE cState_initialize(int argc, VALUE *argv, VALUE self)
1351
+ {
1352
+ rb_warn("The json gem extension was loaded with the stdlib ruby code. You should upgrade rubygems with `gem update --system`");
1353
+ return self;
1354
+ }
1355
+
1356
+ /*
1357
+ * call-seq: initialize_copy(orig)
1358
+ *
1359
+ * Initializes this object from orig if it can be duplicated/cloned and returns
1360
+ * it.
1361
+ */
1362
+ static VALUE cState_init_copy(VALUE obj, VALUE orig)
1363
+ {
1364
+ JSON_Generator_State *objState, *origState;
1365
+
1366
+ if (obj == orig) return obj;
1367
+ GET_STATE_TO(obj, objState);
1368
+ GET_STATE_TO(orig, origState);
1369
+ if (!objState) rb_raise(rb_eArgError, "unallocated JSON::State");
1370
+
1371
+ MEMCPY(objState, origState, JSON_Generator_State, 1);
1372
+
1373
+ RB_OBJ_WRITTEN(obj, Qundef, objState->indent);
1374
+ RB_OBJ_WRITTEN(obj, Qundef, objState->space);
1375
+ RB_OBJ_WRITTEN(obj, Qundef, objState->space_before);
1376
+ RB_OBJ_WRITTEN(obj, Qundef, objState->object_nl);
1377
+ RB_OBJ_WRITTEN(obj, Qundef, objState->array_nl);
1378
+ RB_OBJ_WRITTEN(obj, Qundef, objState->as_json);
1379
+
1380
+ return obj;
1381
+ }
1382
+
1383
+ /*
1384
+ * call-seq: from_state(opts)
1385
+ *
1386
+ * Creates a State object from _opts_, which ought to be Hash to create a
1387
+ * new State instance configured by _opts_, something else to create an
1388
+ * unconfigured instance. If _opts_ is a State object, it is just returned.
1389
+ */
1390
+ static VALUE cState_from_state_s(VALUE self, VALUE opts)
1391
+ {
1392
+ if (rb_obj_is_kind_of(opts, self)) {
1393
+ return opts;
1394
+ } else if (rb_obj_is_kind_of(opts, rb_cHash)) {
1395
+ return rb_funcall(self, i_new, 1, opts);
1396
+ } else {
1397
+ return rb_class_new_instance(0, NULL, cState);
1398
+ }
1399
+ }
1400
+
1401
+ /*
1402
+ * call-seq: indent()
1403
+ *
1404
+ * Returns the string that is used to indent levels in the JSON text.
1405
+ */
1406
+ static VALUE cState_indent(VALUE self)
1407
+ {
1408
+ GET_STATE(self);
1409
+ return state->indent ? state->indent : rb_str_freeze(rb_utf8_str_new("", 0));
1410
+ }
1411
+
1412
+ static VALUE string_config(VALUE config)
1413
+ {
1414
+ if (RTEST(config)) {
1415
+ Check_Type(config, T_STRING);
1416
+ if (RSTRING_LEN(config)) {
1417
+ return rb_str_new_frozen(config);
1418
+ }
1419
+ }
1420
+ return Qfalse;
1421
+ }
1422
+
1423
+ /*
1424
+ * call-seq: indent=(indent)
1425
+ *
1426
+ * Sets the string that is used to indent levels in the JSON text.
1427
+ */
1428
+ static VALUE cState_indent_set(VALUE self, VALUE indent)
1429
+ {
1430
+ rb_check_frozen(self);
1431
+ GET_STATE(self);
1432
+ RB_OBJ_WRITE(self, &state->indent, string_config(indent));
1433
+ return Qnil;
1434
+ }
1435
+
1436
+ /*
1437
+ * call-seq: space()
1438
+ *
1439
+ * Returns the string that is used to insert a space between the tokens in a JSON
1440
+ * string.
1441
+ */
1442
+ static VALUE cState_space(VALUE self)
1443
+ {
1444
+ GET_STATE(self);
1445
+ return state->space ? state->space : rb_str_freeze(rb_utf8_str_new("", 0));
1446
+ }
1447
+
1448
+ /*
1449
+ * call-seq: space=(space)
1450
+ *
1451
+ * Sets _space_ to the string that is used to insert a space between the tokens in a JSON
1452
+ * string.
1453
+ */
1454
+ static VALUE cState_space_set(VALUE self, VALUE space)
1455
+ {
1456
+ rb_check_frozen(self);
1457
+ GET_STATE(self);
1458
+ RB_OBJ_WRITE(self, &state->space, string_config(space));
1459
+ return Qnil;
1460
+ }
1461
+
1462
+ /*
1463
+ * call-seq: space_before()
1464
+ *
1465
+ * Returns the string that is used to insert a space before the ':' in JSON objects.
1466
+ */
1467
+ static VALUE cState_space_before(VALUE self)
1468
+ {
1469
+ GET_STATE(self);
1470
+ return state->space_before ? state->space_before : rb_str_freeze(rb_utf8_str_new("", 0));
1471
+ }
1472
+
1473
+ /*
1474
+ * call-seq: space_before=(space_before)
1475
+ *
1476
+ * Sets the string that is used to insert a space before the ':' in JSON objects.
1477
+ */
1478
+ static VALUE cState_space_before_set(VALUE self, VALUE space_before)
1479
+ {
1480
+ rb_check_frozen(self);
1481
+ GET_STATE(self);
1482
+ RB_OBJ_WRITE(self, &state->space_before, string_config(space_before));
1483
+ return Qnil;
1484
+ }
1485
+
1486
+ /*
1487
+ * call-seq: object_nl()
1488
+ *
1489
+ * This string is put at the end of a line that holds a JSON object (or
1490
+ * Hash).
1491
+ */
1492
+ static VALUE cState_object_nl(VALUE self)
1493
+ {
1494
+ GET_STATE(self);
1495
+ return state->object_nl ? state->object_nl : rb_str_freeze(rb_utf8_str_new("", 0));
1496
+ }
1497
+
1498
+ /*
1499
+ * call-seq: object_nl=(object_nl)
1500
+ *
1501
+ * This string is put at the end of a line that holds a JSON object (or
1502
+ * Hash).
1503
+ */
1504
+ static VALUE cState_object_nl_set(VALUE self, VALUE object_nl)
1505
+ {
1506
+ rb_check_frozen(self);
1507
+ GET_STATE(self);
1508
+ RB_OBJ_WRITE(self, &state->object_nl, string_config(object_nl));
1509
+ return Qnil;
1510
+ }
1511
+
1512
+ /*
1513
+ * call-seq: array_nl()
1514
+ *
1515
+ * This string is put at the end of a line that holds a JSON array.
1516
+ */
1517
+ static VALUE cState_array_nl(VALUE self)
1518
+ {
1519
+ GET_STATE(self);
1520
+ return state->array_nl ? state->array_nl : rb_str_freeze(rb_utf8_str_new("", 0));
1521
+ }
1522
+
1523
+ /*
1524
+ * call-seq: array_nl=(array_nl)
1525
+ *
1526
+ * This string is put at the end of a line that holds a JSON array.
1527
+ */
1528
+ static VALUE cState_array_nl_set(VALUE self, VALUE array_nl)
1529
+ {
1530
+ rb_check_frozen(self);
1531
+ GET_STATE(self);
1532
+ RB_OBJ_WRITE(self, &state->array_nl, string_config(array_nl));
1533
+ return Qnil;
1534
+ }
1535
+
1536
+ /*
1537
+ * call-seq: as_json()
1538
+ *
1539
+ * This string is put at the end of a line that holds a JSON array.
1540
+ */
1541
+ static VALUE cState_as_json(VALUE self)
1542
+ {
1543
+ GET_STATE(self);
1544
+ return state->as_json;
1545
+ }
1546
+
1547
+ /*
1548
+ * call-seq: as_json=(as_json)
1549
+ *
1550
+ * This string is put at the end of a line that holds a JSON array.
1551
+ */
1552
+ static VALUE cState_as_json_set(VALUE self, VALUE as_json)
1553
+ {
1554
+ rb_check_frozen(self);
1555
+ GET_STATE(self);
1556
+ RB_OBJ_WRITE(self, &state->as_json, rb_convert_type(as_json, T_DATA, "Proc", "to_proc"));
1557
+ return Qnil;
1558
+ }
1559
+
1560
+ /*
1561
+ * call-seq: check_circular?
1562
+ *
1563
+ * Returns true, if circular data structures should be checked,
1564
+ * otherwise returns false.
1565
+ */
1566
+ static VALUE cState_check_circular_p(VALUE self)
1567
+ {
1568
+ GET_STATE(self);
1569
+ return state->max_nesting ? Qtrue : Qfalse;
1570
+ }
1571
+
1572
+ /*
1573
+ * call-seq: max_nesting
1574
+ *
1575
+ * This integer returns the maximum level of data structure nesting in
1576
+ * the generated JSON, max_nesting = 0 if no maximum is checked.
1577
+ */
1578
+ static VALUE cState_max_nesting(VALUE self)
1579
+ {
1580
+ GET_STATE(self);
1581
+ return LONG2FIX(state->max_nesting);
1582
+ }
1583
+
1584
+ static long long_config(VALUE num)
1585
+ {
1586
+ return RTEST(num) ? NUM2LONG(num) : 0;
1587
+ }
1588
+
1589
+ // depth must never be negative; reject early with a clear error.
1590
+ static long depth_config(VALUE num)
1591
+ {
1592
+ if (!RTEST(num)) return 0;
1593
+ long d = NUM2LONG(num);
1594
+ if (RB_UNLIKELY(d < 0)) {
1595
+ rb_raise(rb_eArgError, "depth must be >= 0 (got %ld)", d);
1596
+ }
1597
+ if (RB_UNLIKELY(d > INT_MAX)) {
1598
+ rb_raise(rb_eArgError, "depth is too large (got %ld)", d);
1599
+ }
1600
+ return d;
1601
+ }
1602
+
1603
+ /*
1604
+ * call-seq: max_nesting=(depth)
1605
+ *
1606
+ * This sets the maximum level of data structure nesting in the generated JSON
1607
+ * to the integer depth, max_nesting = 0 if no maximum should be checked.
1608
+ */
1609
+ static VALUE cState_max_nesting_set(VALUE self, VALUE depth)
1610
+ {
1611
+ rb_check_frozen(self);
1612
+ GET_STATE(self);
1613
+ state->max_nesting = long_config(depth);
1614
+ return Qnil;
1615
+ }
1616
+
1617
+ /*
1618
+ * call-seq: script_safe
1619
+ *
1620
+ * If this boolean is true, the forward slashes will be escaped in
1621
+ * the json output.
1622
+ */
1623
+ static VALUE cState_script_safe(VALUE self)
1624
+ {
1625
+ GET_STATE(self);
1626
+ return state->script_safe ? Qtrue : Qfalse;
1627
+ }
1628
+
1629
+ /*
1630
+ * call-seq: script_safe=(enable)
1631
+ *
1632
+ * This sets whether or not the forward slashes will be escaped in
1633
+ * the json output.
1634
+ */
1635
+ static VALUE cState_script_safe_set(VALUE self, VALUE enable)
1636
+ {
1637
+ rb_check_frozen(self);
1638
+ GET_STATE(self);
1639
+ state->script_safe = RTEST(enable);
1640
+ return Qnil;
1641
+ }
1642
+
1643
+ /*
1644
+ * call-seq: strict
1645
+ *
1646
+ * If this boolean is false, types unsupported by the JSON format will
1647
+ * be serialized as strings.
1648
+ * If this boolean is true, types unsupported by the JSON format will
1649
+ * raise a JSON::GeneratorError.
1650
+ */
1651
+ static VALUE cState_strict(VALUE self)
1652
+ {
1653
+ GET_STATE(self);
1654
+ return state->strict ? Qtrue : Qfalse;
1655
+ }
1656
+
1657
+ /*
1658
+ * call-seq: strict=(enable)
1659
+ *
1660
+ * This sets whether or not to serialize types unsupported by the
1661
+ * JSON format as strings.
1662
+ * If this boolean is false, types unsupported by the JSON format will
1663
+ * be serialized as strings.
1664
+ * If this boolean is true, types unsupported by the JSON format will
1665
+ * raise a JSON::GeneratorError.
1666
+ */
1667
+ static VALUE cState_strict_set(VALUE self, VALUE enable)
1668
+ {
1669
+ rb_check_frozen(self);
1670
+ GET_STATE(self);
1671
+ state->strict = RTEST(enable);
1672
+ return Qnil;
1673
+ }
1674
+
1675
+ /*
1676
+ * call-seq: allow_nan?
1677
+ *
1678
+ * Returns true, if NaN, Infinity, and -Infinity should be generated, otherwise
1679
+ * returns false.
1680
+ */
1681
+ static VALUE cState_allow_nan_p(VALUE self)
1682
+ {
1683
+ GET_STATE(self);
1684
+ return state->allow_nan ? Qtrue : Qfalse;
1685
+ }
1686
+
1687
+ /*
1688
+ * call-seq: allow_nan=(enable)
1689
+ *
1690
+ * This sets whether or not to serialize NaN, Infinity, and -Infinity
1691
+ */
1692
+ static VALUE cState_allow_nan_set(VALUE self, VALUE enable)
1693
+ {
1694
+ rb_check_frozen(self);
1695
+ GET_STATE(self);
1696
+ state->allow_nan = RTEST(enable);
1697
+ return Qnil;
1698
+ }
1699
+
1700
+ /*
1701
+ * call-seq: ascii_only?
1702
+ *
1703
+ * Returns true, if only ASCII characters should be generated. Otherwise
1704
+ * returns false.
1705
+ */
1706
+ static VALUE cState_ascii_only_p(VALUE self)
1707
+ {
1708
+ GET_STATE(self);
1709
+ return state->ascii_only ? Qtrue : Qfalse;
1710
+ }
1711
+
1712
+ /*
1713
+ * call-seq: ascii_only=(enable)
1714
+ *
1715
+ * This sets whether only ASCII characters should be generated.
1716
+ */
1717
+ static VALUE cState_ascii_only_set(VALUE self, VALUE enable)
1718
+ {
1719
+ rb_check_frozen(self);
1720
+ GET_STATE(self);
1721
+ state->ascii_only = RTEST(enable);
1722
+ return Qnil;
1723
+ }
1724
+
1725
+ static VALUE cState_allow_duplicate_key_p(VALUE self)
1726
+ {
1727
+ GET_STATE(self);
1728
+ switch (state->on_duplicate_key) {
1729
+ case JSON_IGNORE:
1730
+ return Qtrue;
1731
+ case JSON_DEPRECATED:
1732
+ return Qnil;
1733
+ default:
1734
+ return Qfalse;
1735
+ }
1736
+ }
1737
+
1738
+ /*
1739
+ * call-seq: depth
1740
+ *
1741
+ * This integer returns the current depth of data structure nesting.
1742
+ */
1743
+ static VALUE cState_depth(VALUE self)
1744
+ {
1745
+ GET_STATE(self);
1746
+ return LONG2FIX(state->depth);
1747
+ }
1748
+
1749
+ /*
1750
+ * call-seq: depth=(depth)
1751
+ *
1752
+ * This sets the maximum level of data structure nesting in the generated JSON
1753
+ * to the integer depth, max_nesting = 0 if no maximum should be checked.
1754
+ */
1755
+ static VALUE cState_depth_set(VALUE self, VALUE depth)
1756
+ {
1757
+ rb_check_frozen(self);
1758
+ GET_STATE(self);
1759
+ state->depth = depth_config(depth);
1760
+ return Qnil;
1761
+ }
1762
+
1763
+ /*
1764
+ * call-seq: buffer_initial_length
1765
+ *
1766
+ * This integer returns the current initial length of the buffer.
1767
+ */
1768
+ static VALUE cState_buffer_initial_length(VALUE self)
1769
+ {
1770
+ GET_STATE(self);
1771
+ return LONG2FIX(state->buffer_initial_length);
1772
+ }
1773
+
1774
+ static void buffer_initial_length_set(JSON_Generator_State *state, VALUE buffer_initial_length)
1775
+ {
1776
+ Check_Type(buffer_initial_length, T_FIXNUM);
1777
+ long initial_length = FIX2LONG(buffer_initial_length);
1778
+ if (initial_length > 0) {
1779
+ state->buffer_initial_length = initial_length;
1780
+ }
1781
+ }
1782
+
1783
+ /*
1784
+ * call-seq: buffer_initial_length=(length)
1785
+ *
1786
+ * This sets the initial length of the buffer to +length+, if +length+ > 0,
1787
+ * otherwise its value isn't changed.
1788
+ */
1789
+ static VALUE cState_buffer_initial_length_set(VALUE self, VALUE buffer_initial_length)
1790
+ {
1791
+ rb_check_frozen(self);
1792
+ GET_STATE(self);
1793
+ buffer_initial_length_set(state, buffer_initial_length);
1794
+ return Qnil;
1795
+ }
1796
+
1797
+ struct configure_state_data {
1798
+ JSON_Generator_State *state;
1799
+ VALUE vstate; // Ruby object that owns the state, or Qfalse if stack-allocated
1800
+ };
1801
+
1802
+ static inline void state_write_value(struct configure_state_data *data, VALUE *field, VALUE value)
1803
+ {
1804
+ if (RTEST(data->vstate)) {
1805
+ RB_OBJ_WRITE(data->vstate, field, value);
1806
+ } else {
1807
+ *field = value;
1808
+ }
1809
+ }
1810
+
1811
+ static int configure_state_i(VALUE key, VALUE val, VALUE _arg)
1812
+ {
1813
+ struct configure_state_data *data = (struct configure_state_data *)_arg;
1814
+ JSON_Generator_State *state = data->state;
1815
+
1816
+ if (key == sym_indent) { state_write_value(data, &state->indent, string_config(val)); }
1817
+ else if (key == sym_space) { state_write_value(data, &state->space, string_config(val)); }
1818
+ else if (key == sym_space_before) { state_write_value(data, &state->space_before, string_config(val)); }
1819
+ else if (key == sym_object_nl) { state_write_value(data, &state->object_nl, string_config(val)); }
1820
+ else if (key == sym_array_nl) { state_write_value(data, &state->array_nl, string_config(val)); }
1821
+ else if (key == sym_max_nesting) { state->max_nesting = long_config(val); }
1822
+ else if (key == sym_allow_nan) { state->allow_nan = RTEST(val); }
1823
+ else if (key == sym_ascii_only) { state->ascii_only = RTEST(val); }
1824
+ else if (key == sym_depth) { state->depth = depth_config(val); }
1825
+ else if (key == sym_buffer_initial_length) { buffer_initial_length_set(state, val); }
1826
+ else if (key == sym_script_safe) { state->script_safe = RTEST(val); }
1827
+ else if (key == sym_escape_slash) { state->script_safe = RTEST(val); }
1828
+ else if (key == sym_strict) { state->strict = RTEST(val); }
1829
+ else if (key == sym_allow_duplicate_key) { state->on_duplicate_key = RTEST(val) ? JSON_IGNORE : JSON_RAISE; }
1830
+ else if (key == sym_as_json) {
1831
+ VALUE proc = RTEST(val) ? rb_convert_type(val, T_DATA, "Proc", "to_proc") : Qfalse;
1832
+ state->as_json_single_arg = proc && rb_proc_arity(proc) == 1;
1833
+ state_write_value(data, &state->as_json, proc);
1834
+ }
1835
+ return ST_CONTINUE;
1836
+ }
1837
+
1838
+ static void configure_state(JSON_Generator_State *state, VALUE vstate, VALUE config)
1839
+ {
1840
+ if (!RTEST(config)) return;
1841
+
1842
+ Check_Type(config, T_HASH);
1843
+
1844
+ if (!RHASH_SIZE(config)) return;
1845
+
1846
+ struct configure_state_data data = {
1847
+ .state = state,
1848
+ .vstate = vstate
1849
+ };
1850
+
1851
+ // We assume in most cases few keys are set so it's faster to go over
1852
+ // the provided keys than to check all possible keys.
1853
+ rb_hash_foreach(config, configure_state_i, (VALUE)&data);
1854
+ }
1855
+
1856
+ static VALUE cState_configure(VALUE self, VALUE opts)
1857
+ {
1858
+ rb_check_frozen(self);
1859
+ GET_STATE(self);
1860
+ configure_state(state, self, opts);
1861
+ return self;
1862
+ }
1863
+
1864
+ static VALUE cState_m_do_generate(VALUE klass, VALUE obj, VALUE opts, VALUE io, generator_func func)
1865
+ {
1866
+ JSON_Generator_State state = {0};
1867
+ state_init(&state);
1868
+ configure_state(&state, Qfalse, opts);
1869
+
1870
+ char stack_buffer[FBUFFER_STACK_SIZE];
1871
+ FBuffer buffer = { 0 };
1872
+ fbuffer_init(&buffer, state.buffer_initial_length, io, stack_buffer, FBUFFER_STACK_SIZE);
1873
+
1874
+ struct generate_json_data data = {
1875
+ .buffer = &buffer,
1876
+ .vstate = Qfalse,
1877
+ .state = &state,
1878
+ .depth = state.depth,
1879
+ .obj = obj,
1880
+ .func = func,
1881
+ };
1882
+ return rb_ensure(generate_json_try, (VALUE)&data, generate_json_ensure, (VALUE)&data);
1883
+ }
1884
+
1885
+ static VALUE cState_m_generate(VALUE klass, VALUE obj, VALUE opts, VALUE io)
1886
+ {
1887
+ return cState_m_do_generate(klass, obj, opts, io, generate_json);
1888
+ }
1889
+
1890
+ static VALUE cState_m_generate_no_fallback(VALUE klass, VALUE obj, VALUE opts, VALUE io)
1891
+ {
1892
+ return cState_m_do_generate(klass, obj, opts, io, generate_json_no_fallback);
1893
+ }
1894
+
1895
+ void Init_generator(void)
1896
+ {
1897
+ #ifdef HAVE_RB_EXT_RACTOR_SAFE
1898
+ rb_ext_ractor_safe(true);
1899
+ #endif
1900
+
1901
+ #undef rb_intern
1902
+ rb_require("json/common");
1903
+
1904
+ mJSON = rb_define_module("JSON");
1905
+
1906
+ rb_global_variable(&cFragment);
1907
+ cFragment = rb_const_get(mJSON, rb_intern("Fragment"));
1908
+
1909
+ VALUE mExt = rb_define_module_under(mJSON, "Ext");
1910
+ VALUE mGenerator = rb_define_module_under(mExt, "Generator");
1911
+
1912
+ rb_global_variable(&eGeneratorError);
1913
+ eGeneratorError = rb_path2class("JSON::GeneratorError");
1914
+
1915
+ rb_global_variable(&eNestingError);
1916
+ eNestingError = rb_path2class("JSON::NestingError");
1917
+
1918
+ cState = rb_define_class_under(mGenerator, "State", rb_cObject);
1919
+ rb_define_alloc_func(cState, cState_s_allocate);
1920
+ rb_define_singleton_method(cState, "from_state", cState_from_state_s, 1);
1921
+ rb_define_method(cState, "initialize", cState_initialize, -1);
1922
+ rb_define_alias(cState, "initialize", "initialize"); // avoid method redefinition warnings
1923
+ rb_define_private_method(cState, "_configure", cState_configure, 1);
1924
+
1925
+ rb_define_method(cState, "initialize_copy", cState_init_copy, 1);
1926
+ rb_define_method(cState, "indent", cState_indent, 0);
1927
+ rb_define_method(cState, "indent=", cState_indent_set, 1);
1928
+ rb_define_method(cState, "space", cState_space, 0);
1929
+ rb_define_method(cState, "space=", cState_space_set, 1);
1930
+ rb_define_method(cState, "space_before", cState_space_before, 0);
1931
+ rb_define_method(cState, "space_before=", cState_space_before_set, 1);
1932
+ rb_define_method(cState, "object_nl", cState_object_nl, 0);
1933
+ rb_define_method(cState, "object_nl=", cState_object_nl_set, 1);
1934
+ rb_define_method(cState, "array_nl", cState_array_nl, 0);
1935
+ rb_define_method(cState, "array_nl=", cState_array_nl_set, 1);
1936
+ rb_define_method(cState, "as_json", cState_as_json, 0);
1937
+ rb_define_method(cState, "as_json=", cState_as_json_set, 1);
1938
+ rb_define_method(cState, "max_nesting", cState_max_nesting, 0);
1939
+ rb_define_method(cState, "max_nesting=", cState_max_nesting_set, 1);
1940
+ rb_define_method(cState, "script_safe", cState_script_safe, 0);
1941
+ rb_define_method(cState, "script_safe?", cState_script_safe, 0);
1942
+ rb_define_method(cState, "script_safe=", cState_script_safe_set, 1);
1943
+ rb_define_alias(cState, "escape_slash", "script_safe");
1944
+ rb_define_alias(cState, "escape_slash?", "script_safe?");
1945
+ rb_define_alias(cState, "escape_slash=", "script_safe=");
1946
+ rb_define_method(cState, "strict", cState_strict, 0);
1947
+ rb_define_method(cState, "strict?", cState_strict, 0);
1948
+ rb_define_method(cState, "strict=", cState_strict_set, 1);
1949
+ rb_define_method(cState, "check_circular?", cState_check_circular_p, 0);
1950
+ rb_define_method(cState, "allow_nan?", cState_allow_nan_p, 0);
1951
+ rb_define_method(cState, "allow_nan=", cState_allow_nan_set, 1);
1952
+ rb_define_method(cState, "ascii_only?", cState_ascii_only_p, 0);
1953
+ rb_define_method(cState, "ascii_only=", cState_ascii_only_set, 1);
1954
+ rb_define_method(cState, "depth", cState_depth, 0);
1955
+ rb_define_method(cState, "depth=", cState_depth_set, 1);
1956
+ rb_define_method(cState, "buffer_initial_length", cState_buffer_initial_length, 0);
1957
+ rb_define_method(cState, "buffer_initial_length=", cState_buffer_initial_length_set, 1);
1958
+ rb_define_method(cState, "generate", cState_generate, -1);
1959
+ rb_define_method(cState, "_generate_no_fallback", cState_generate_no_fallback, -1);
1960
+
1961
+ rb_define_private_method(cState, "allow_duplicate_key?", cState_allow_duplicate_key_p, 0);
1962
+
1963
+ rb_define_singleton_method(cState, "generate", cState_m_generate, 3);
1964
+ rb_define_singleton_method(cState, "_generate_no_fallback", cState_m_generate_no_fallback, 3);
1965
+
1966
+ rb_global_variable(&Encoding_UTF_8);
1967
+ Encoding_UTF_8 = rb_const_get(rb_path2class("Encoding"), rb_intern("UTF_8"));
1968
+
1969
+ i_to_s = rb_intern("to_s");
1970
+ i_to_json = rb_intern("to_json");
1971
+ i_new = rb_intern("new");
1972
+ i_encode = rb_intern("encode");
1973
+
1974
+ sym_indent = ID2SYM(rb_intern("indent"));
1975
+ sym_space = ID2SYM(rb_intern("space"));
1976
+ sym_space_before = ID2SYM(rb_intern("space_before"));
1977
+ sym_object_nl = ID2SYM(rb_intern("object_nl"));
1978
+ sym_array_nl = ID2SYM(rb_intern("array_nl"));
1979
+ sym_max_nesting = ID2SYM(rb_intern("max_nesting"));
1980
+ sym_allow_nan = ID2SYM(rb_intern("allow_nan"));
1981
+ sym_ascii_only = ID2SYM(rb_intern("ascii_only"));
1982
+ sym_depth = ID2SYM(rb_intern("depth"));
1983
+ sym_buffer_initial_length = ID2SYM(rb_intern("buffer_initial_length"));
1984
+ sym_script_safe = ID2SYM(rb_intern("script_safe"));
1985
+ sym_escape_slash = ID2SYM(rb_intern("escape_slash"));
1986
+ sym_strict = ID2SYM(rb_intern("strict"));
1987
+ sym_as_json = ID2SYM(rb_intern("as_json"));
1988
+ sym_allow_duplicate_key = ID2SYM(rb_intern("allow_duplicate_key"));
1989
+
1990
+ usascii_encindex = rb_usascii_encindex();
1991
+ utf8_encindex = rb_utf8_encindex();
1992
+ binary_encindex = rb_ascii8bit_encindex();
1993
+
1994
+ rb_require("json/ext/generator/state");
1995
+
1996
+ simd_impl = find_simd_implementation();
1997
+ }