alchemrest 3.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (245) hide show
  1. checksums.yaml +7 -0
  2. data/.rspec +3 -0
  3. data/.rubocop.yml +22 -0
  4. data/.rubocop_todo.yml +242 -0
  5. data/.ruby-version +1 -0
  6. data/Appraisals +19 -0
  7. data/Gemfile +6 -0
  8. data/Gemfile.lock +378 -0
  9. data/Rakefile +29 -0
  10. data/alchemrest.gemspec +71 -0
  11. data/coach.yml +5 -0
  12. data/examples/bank_api/client.rb +31 -0
  13. data/examples/bank_api/data/account.rb +21 -0
  14. data/examples/bank_api/data/ach.rb +16 -0
  15. data/examples/bank_api/data/business_account.rb +22 -0
  16. data/examples/bank_api/data/card.rb +21 -0
  17. data/examples/bank_api/data/check.rb +19 -0
  18. data/examples/bank_api/data/product.rb +20 -0
  19. data/examples/bank_api/data/transaction.rb +49 -0
  20. data/examples/bank_api/data/user.rb +27 -0
  21. data/examples/bank_api/factories.rb +68 -0
  22. data/examples/bank_api/graph_visualization.rb +45 -0
  23. data/examples/bank_api/positive_interest_string.rb +33 -0
  24. data/examples/bank_api/requests/delete_user.rb +17 -0
  25. data/examples/bank_api/requests/get_business_account.rb +24 -0
  26. data/examples/bank_api/requests/get_products.rb +12 -0
  27. data/examples/bank_api/requests/get_transactions.rb +34 -0
  28. data/examples/bank_api/requests/get_user.rb +19 -0
  29. data/examples/bank_api/requests/post_transaction.rb +20 -0
  30. data/examples/bank_api/requests/update_user.rb +28 -0
  31. data/examples/bank_api/root.rb +52 -0
  32. data/examples/bank_api.rb +33 -0
  33. data/gemfiles/faraday_2.gemfile +9 -0
  34. data/gemfiles/faraday_2.gemfile.lock +363 -0
  35. data/gemfiles/rails_7_0.gemfile.lock +341 -0
  36. data/gemfiles/rails_7_2.gemfile +9 -0
  37. data/gemfiles/rails_7_2.gemfile.lock +384 -0
  38. data/gemfiles/rails_8_0.gemfile +9 -0
  39. data/gemfiles/rails_8_0.gemfile.lock +385 -0
  40. data/lib/alchemrest/circuit_breaker.rb +84 -0
  41. data/lib/alchemrest/client/configuration/connection.rb +83 -0
  42. data/lib/alchemrest/client/configuration.rb +89 -0
  43. data/lib/alchemrest/client.rb +48 -0
  44. data/lib/alchemrest/cop.rb +8 -0
  45. data/lib/alchemrest/data/capture_configuration.rb +77 -0
  46. data/lib/alchemrest/data/field.rb +36 -0
  47. data/lib/alchemrest/data/graph.rb +40 -0
  48. data/lib/alchemrest/data/record.rb +60 -0
  49. data/lib/alchemrest/data/schema.rb +80 -0
  50. data/lib/alchemrest/data.rb +9 -0
  51. data/lib/alchemrest/endpoint_definition.rb +47 -0
  52. data/lib/alchemrest/error.rb +122 -0
  53. data/lib/alchemrest/factory_bot.rb +64 -0
  54. data/lib/alchemrest/faraday_middleware/external_api_instrumentation.rb +24 -0
  55. data/lib/alchemrest/faraday_middleware/json_parser.rb +30 -0
  56. data/lib/alchemrest/faraday_middleware/kill_switch.rb +22 -0
  57. data/lib/alchemrest/faraday_middleware/underscore_response.rb +24 -0
  58. data/lib/alchemrest/hash_path.rb +81 -0
  59. data/lib/alchemrest/http_request.rb +75 -0
  60. data/lib/alchemrest/kill_switch/adapters.rb +88 -0
  61. data/lib/alchemrest/kill_switch.rb +31 -0
  62. data/lib/alchemrest/railtie.rb +25 -0
  63. data/lib/alchemrest/request/endpoint.rb +29 -0
  64. data/lib/alchemrest/request/returns.rb +46 -0
  65. data/lib/alchemrest/request.rb +80 -0
  66. data/lib/alchemrest/request_definition/builder.rb +13 -0
  67. data/lib/alchemrest/request_definition.rb +26 -0
  68. data/lib/alchemrest/response/pipeline/extract_payload.rb +64 -0
  69. data/lib/alchemrest/response/pipeline/final.rb +11 -0
  70. data/lib/alchemrest/response/pipeline/omit.rb +46 -0
  71. data/lib/alchemrest/response/pipeline/sanitize.rb +59 -0
  72. data/lib/alchemrest/response/pipeline/transform.rb +26 -0
  73. data/lib/alchemrest/response/pipeline/was_successful.rb +29 -0
  74. data/lib/alchemrest/response/pipeline.rb +71 -0
  75. data/lib/alchemrest/response.rb +73 -0
  76. data/lib/alchemrest/response_captured_handler.rb +68 -0
  77. data/lib/alchemrest/result/halt.rb +15 -0
  78. data/lib/alchemrest/result/try_helpers.rb +16 -0
  79. data/lib/alchemrest/result.rb +128 -0
  80. data/lib/alchemrest/root.rb +77 -0
  81. data/lib/alchemrest/transforms/base_to_type_transform_registry.rb +42 -0
  82. data/lib/alchemrest/transforms/constrainable.rb +41 -0
  83. data/lib/alchemrest/transforms/constraint/block.rb +22 -0
  84. data/lib/alchemrest/transforms/constraint/greater_than.rb +19 -0
  85. data/lib/alchemrest/transforms/constraint/greater_than_or_eq.rb +19 -0
  86. data/lib/alchemrest/transforms/constraint/in_list.rb +19 -0
  87. data/lib/alchemrest/transforms/constraint/is_instance_of.rb +19 -0
  88. data/lib/alchemrest/transforms/constraint/is_uuid.rb +19 -0
  89. data/lib/alchemrest/transforms/constraint/less_than.rb +19 -0
  90. data/lib/alchemrest/transforms/constraint/less_than_or_eq.rb +19 -0
  91. data/lib/alchemrest/transforms/constraint/matches_regex.rb +19 -0
  92. data/lib/alchemrest/transforms/constraint/max_length.rb +19 -0
  93. data/lib/alchemrest/transforms/constraint/min_length.rb +19 -0
  94. data/lib/alchemrest/transforms/constraint.rb +17 -0
  95. data/lib/alchemrest/transforms/constraint_builder/for_number.rb +25 -0
  96. data/lib/alchemrest/transforms/constraint_builder/for_string.rb +21 -0
  97. data/lib/alchemrest/transforms/constraint_builder.rb +15 -0
  98. data/lib/alchemrest/transforms/date_transform.rb +30 -0
  99. data/lib/alchemrest/transforms/enum.rb +52 -0
  100. data/lib/alchemrest/transforms/epoch_time.rb +32 -0
  101. data/lib/alchemrest/transforms/from_chain.rb +15 -0
  102. data/lib/alchemrest/transforms/from_number/to_type_transform_registry.rb +18 -0
  103. data/lib/alchemrest/transforms/from_number.rb +47 -0
  104. data/lib/alchemrest/transforms/from_string/to_type_transform_registry.rb +17 -0
  105. data/lib/alchemrest/transforms/from_string.rb +36 -0
  106. data/lib/alchemrest/transforms/from_type/empty_to_type_transform_registry.rb +14 -0
  107. data/lib/alchemrest/transforms/from_type.rb +64 -0
  108. data/lib/alchemrest/transforms/iso_time.rb +58 -0
  109. data/lib/alchemrest/transforms/json_number.rb +26 -0
  110. data/lib/alchemrest/transforms/loose_hash.rb +96 -0
  111. data/lib/alchemrest/transforms/money_transform.rb +42 -0
  112. data/lib/alchemrest/transforms/number.rb +27 -0
  113. data/lib/alchemrest/transforms/output_type.rb +65 -0
  114. data/lib/alchemrest/transforms/to_decimal.rb +22 -0
  115. data/lib/alchemrest/transforms/to_type/from_string_to_time_selector.rb +29 -0
  116. data/lib/alchemrest/transforms/to_type/transforms_selector.rb +61 -0
  117. data/lib/alchemrest/transforms/to_type.rb +86 -0
  118. data/lib/alchemrest/transforms/typed.rb +32 -0
  119. data/lib/alchemrest/transforms/union.rb +44 -0
  120. data/lib/alchemrest/transforms/with_constraint.rb +26 -0
  121. data/lib/alchemrest/transforms.rb +93 -0
  122. data/lib/alchemrest/url_builder/encoders.rb +39 -0
  123. data/lib/alchemrest/url_builder/options.rb +33 -0
  124. data/lib/alchemrest/url_builder.rb +31 -0
  125. data/lib/alchemrest/version.rb +5 -0
  126. data/lib/alchemrest/webmock_helpers.rb +27 -0
  127. data/lib/alchemrest.rb +159 -0
  128. data/lib/generators/alchemrest/kill_switch_migration_generator.rb +27 -0
  129. data/lib/generators/alchemrest/templates/kill_switch_migration.rb.erb +17 -0
  130. data/lib/rubocop/cop/alchemrest/define_request_using_with_params.rb +53 -0
  131. data/lib/rubocop/cop/alchemrest/endpoint_definition_using_generic_params.rb +55 -0
  132. data/lib/rubocop/cop/alchemrest/request_hash_returning_block.rb +54 -0
  133. data/lib/rubocop/cop/alchemrest/time_transform_with_no_zone.rb +56 -0
  134. data/lib/tapioca/dsl/compilers/alchemrest_data.rb +84 -0
  135. data/lib/tapioca/dsl/compilers/alchemrest_root.rb +68 -0
  136. data/mutant.yml +16 -0
  137. data/rbi/alchemrest/result.rbi +80 -0
  138. data/rbi/alchemrest.rbi +246 -0
  139. data/sorbet/config +5 -0
  140. data/sorbet/rbi/gems/.gitattributes +1 -0
  141. data/sorbet/rbi/gems/abstract_type@0.0.7.rbi +41 -0
  142. data/sorbet/rbi/gems/actionpack@8.0.4.rbi +11733 -0
  143. data/sorbet/rbi/gems/actionview@8.0.4.rbi +6560 -0
  144. data/sorbet/rbi/gems/activemodel@8.0.4.rbi +2891 -0
  145. data/sorbet/rbi/gems/activesupport@8.0.4.rbi +9621 -0
  146. data/sorbet/rbi/gems/adamantium@0.2.0.rbi +144 -0
  147. data/sorbet/rbi/gems/addressable@2.8.7.rbi +779 -0
  148. data/sorbet/rbi/gems/anima@0.3.2.rbi +103 -0
  149. data/sorbet/rbi/gems/ast@2.4.2.rbi +107 -0
  150. data/sorbet/rbi/gems/base64@0.3.0.rbi +52 -0
  151. data/sorbet/rbi/gems/benchmark@0.5.0.rbi +153 -0
  152. data/sorbet/rbi/gems/bigdecimal@3.3.1.rbi +77 -0
  153. data/sorbet/rbi/gems/builder@3.3.0.rbi +9 -0
  154. data/sorbet/rbi/gems/circuitbox@2.0.0.rbi +297 -0
  155. data/sorbet/rbi/gems/concord@0.1.6.rbi +51 -0
  156. data/sorbet/rbi/gems/concurrent-ruby@1.3.5.rbi +4716 -0
  157. data/sorbet/rbi/gems/connection_pool@2.5.4.rbi +9 -0
  158. data/sorbet/rbi/gems/crack@1.0.0.rbi +110 -0
  159. data/sorbet/rbi/gems/crass@1.0.6.rbi +294 -0
  160. data/sorbet/rbi/gems/date@3.4.1.rbi +58 -0
  161. data/sorbet/rbi/gems/drb@2.2.3.rbi +639 -0
  162. data/sorbet/rbi/gems/equalizer@0.0.11.rbi +38 -0
  163. data/sorbet/rbi/gems/erubi@1.13.1.rbi +85 -0
  164. data/sorbet/rbi/gems/factory_bot@6.5.0.rbi +1529 -0
  165. data/sorbet/rbi/gems/faraday-em_http@1.0.0.rbi +181 -0
  166. data/sorbet/rbi/gems/faraday-em_synchrony@1.0.1.rbi +120 -0
  167. data/sorbet/rbi/gems/faraday-excon@1.1.0.rbi +128 -0
  168. data/sorbet/rbi/gems/faraday-httpclient@1.0.1.rbi +123 -0
  169. data/sorbet/rbi/gems/faraday-multipart@1.2.0.rbi +190 -0
  170. data/sorbet/rbi/gems/faraday-net_http@1.0.2.rbi +140 -0
  171. data/sorbet/rbi/gems/faraday-net_http_persistent@1.2.0.rbi +116 -0
  172. data/sorbet/rbi/gems/faraday-patron@1.0.0.rbi +119 -0
  173. data/sorbet/rbi/gems/faraday-rack@1.0.0.rbi +113 -0
  174. data/sorbet/rbi/gems/faraday-retry@1.0.3.rbi +149 -0
  175. data/sorbet/rbi/gems/faraday@1.10.5.rbi +1620 -0
  176. data/sorbet/rbi/gems/hansi@0.2.1.rbi +9 -0
  177. data/sorbet/rbi/gems/hashdiff@1.1.2.rbi +174 -0
  178. data/sorbet/rbi/gems/i18n@1.14.7.rbi +1328 -0
  179. data/sorbet/rbi/gems/ice_nine@0.11.2.rbi +145 -0
  180. data/sorbet/rbi/gems/io-console@0.8.0.rbi +9 -0
  181. data/sorbet/rbi/gems/json@2.9.1.rbi +282 -0
  182. data/sorbet/rbi/gems/language_server-protocol@3.17.0.3.rbi +8057 -0
  183. data/sorbet/rbi/gems/logger@1.7.0.rbi +260 -0
  184. data/sorbet/rbi/gems/loofah@2.24.0.rbi +571 -0
  185. data/sorbet/rbi/gems/memoizable@0.4.2.rbi +131 -0
  186. data/sorbet/rbi/gems/memosa@0.8.2.rbi +185 -0
  187. data/sorbet/rbi/gems/minitest@5.26.0.rbi +824 -0
  188. data/sorbet/rbi/gems/money@6.19.0.rbi +815 -0
  189. data/sorbet/rbi/gems/morpher@0.4.2.rbi +388 -0
  190. data/sorbet/rbi/gems/mprelude@0.1.0.rbi +140 -0
  191. data/sorbet/rbi/gems/multi_json@1.15.0.rbi +180 -0
  192. data/sorbet/rbi/gems/multipart-post@2.4.1.rbi +154 -0
  193. data/sorbet/rbi/gems/mustermann-contrib@3.0.3.rbi +9 -0
  194. data/sorbet/rbi/gems/mustermann@3.0.3.rbi +809 -0
  195. data/sorbet/rbi/gems/netrc@0.11.0.rbi +112 -0
  196. data/sorbet/rbi/gems/nokogiri@1.19.1.rbi +3412 -0
  197. data/sorbet/rbi/gems/parallel@1.26.3.rbi +234 -0
  198. data/sorbet/rbi/gems/parser@3.3.7.0.rbi +4877 -0
  199. data/sorbet/rbi/gems/pp@0.6.2.rbi +176 -0
  200. data/sorbet/rbi/gems/prettyprint@0.2.0.rbi +155 -0
  201. data/sorbet/rbi/gems/prism@1.5.1.rbi +26368 -0
  202. data/sorbet/rbi/gems/procto@0.0.3.rbi +9 -0
  203. data/sorbet/rbi/gems/psych@5.2.3.rbi +806 -0
  204. data/sorbet/rbi/gems/public_suffix@6.0.1.rbi +267 -0
  205. data/sorbet/rbi/gems/racc@1.8.1.rbi +120 -0
  206. data/sorbet/rbi/gems/rack-session@2.1.1.rbi +458 -0
  207. data/sorbet/rbi/gems/rack-test@2.2.0.rbi +405 -0
  208. data/sorbet/rbi/gems/rack@3.1.14.rbi +2774 -0
  209. data/sorbet/rbi/gems/rackup@2.2.1.rbi +132 -0
  210. data/sorbet/rbi/gems/rails-dom-testing@2.2.0.rbi +266 -0
  211. data/sorbet/rbi/gems/rails-html-sanitizer@1.6.2.rbi +545 -0
  212. data/sorbet/rbi/gems/railties@8.0.4.rbi +2150 -0
  213. data/sorbet/rbi/gems/rainbow@3.1.1.rbi +333 -0
  214. data/sorbet/rbi/gems/rake@13.2.1.rbi +2054 -0
  215. data/sorbet/rbi/gems/rbi@0.2.3.rbi +3961 -0
  216. data/sorbet/rbi/gems/rdoc@6.13.1.rbi +6784 -0
  217. data/sorbet/rbi/gems/regexp_parser@2.11.3.rbi +3020 -0
  218. data/sorbet/rbi/gems/reline@0.6.0.rbi +9 -0
  219. data/sorbet/rbi/gems/rexml@3.4.2.rbi +1777 -0
  220. data/sorbet/rbi/gems/rubocop-ast@1.38.0.rbi +5293 -0
  221. data/sorbet/rbi/gems/rubocop@1.71.1.rbi +31846 -0
  222. data/sorbet/rbi/gems/ruby-progressbar@1.13.0.rbi +980 -0
  223. data/sorbet/rbi/gems/ruby2_keywords@0.0.5.rbi +9 -0
  224. data/sorbet/rbi/gems/securerandom@0.4.1.rbi +33 -0
  225. data/sorbet/rbi/gems/sentry-ruby@5.22.1.rbi +3782 -0
  226. data/sorbet/rbi/gems/spoom@1.5.1.rbi +4321 -0
  227. data/sorbet/rbi/gems/stringio@3.1.2.rbi +9 -0
  228. data/sorbet/rbi/gems/tapioca@0.16.8.rbi +3399 -0
  229. data/sorbet/rbi/gems/thor@1.3.2.rbi +2012 -0
  230. data/sorbet/rbi/gems/thread_safe@0.3.6.rbi +711 -0
  231. data/sorbet/rbi/gems/timeout@0.4.4.rbi +80 -0
  232. data/sorbet/rbi/gems/tsort@0.2.0.rbi +50 -0
  233. data/sorbet/rbi/gems/tzinfo@2.0.6.rbi +1677 -0
  234. data/sorbet/rbi/gems/unicode-display_width@2.6.0.rbi +62 -0
  235. data/sorbet/rbi/gems/uri@1.1.0.rbi +760 -0
  236. data/sorbet/rbi/gems/useragent@0.16.11.rbi +9 -0
  237. data/sorbet/rbi/gems/webmock@3.24.0.rbi +1362 -0
  238. data/sorbet/rbi/gems/yard-sorbet@0.9.0.rbi +345 -0
  239. data/sorbet/rbi/gems/yard@0.9.37.rbi +8795 -0
  240. data/sorbet/rbi/gems/zeitwerk@2.7.1.rbi +589 -0
  241. data/sorbet/tapioca/config.yml +45 -0
  242. data/sorbet/tapioca/require.rb +8 -0
  243. data/sorbet/tapioca/sorbet/rbi/dsl/.gitattributes +1 -0
  244. data/sorbet/tapioca/sorbet/rbi/dsl/active_support/callbacks.rbi +23 -0
  245. metadata +737 -0
@@ -0,0 +1,589 @@
1
+ # typed: true
2
+
3
+ # DO NOT EDIT MANUALLY
4
+ # This is an autogenerated file for types exported from the `zeitwerk` gem.
5
+ # Please instead update this file by running `bin/tapioca gem zeitwerk`.
6
+
7
+
8
+ # source://zeitwerk//lib/zeitwerk/core_ext/kernel.rb#3
9
+ module Kernel
10
+ private
11
+
12
+ # source://zeitwerk//lib/zeitwerk/core_ext/kernel.rb#23
13
+ def require(path); end
14
+
15
+ class << self
16
+ # source://zeitwerk//lib/zeitwerk/core_ext/kernel.rb#23
17
+ def require(path); end
18
+ end
19
+ end
20
+
21
+ class Module
22
+ include ::Zeitwerk::ConstAdded
23
+ end
24
+
25
+ # source://zeitwerk//lib/zeitwerk.rb#3
26
+ module Zeitwerk
27
+ class << self
28
+ # source://zeitwerk//lib/zeitwerk.rb#24
29
+ def with_loader; end
30
+ end
31
+ end
32
+
33
+ # source://zeitwerk//lib/zeitwerk/core_ext/module.rb#3
34
+ module Zeitwerk::ConstAdded
35
+ # source://zeitwerk//lib/zeitwerk/core_ext/module.rb#4
36
+ def const_added(cname); end
37
+ end
38
+
39
+ # source://zeitwerk//lib/zeitwerk/cref.rb#13
40
+ class Zeitwerk::Cref
41
+ include ::Zeitwerk::RealModName
42
+
43
+ # source://zeitwerk//lib/zeitwerk/cref.rb#26
44
+ def initialize(mod, cname); end
45
+
46
+ # source://zeitwerk//lib/zeitwerk/cref.rb#43
47
+ def autoload(abspath); end
48
+
49
+ # source://zeitwerk//lib/zeitwerk/cref.rb#38
50
+ def autoload?; end
51
+
52
+ # source://zeitwerk//lib/zeitwerk/cref.rb#20
53
+ def cname; end
54
+
55
+ # source://zeitwerk//lib/zeitwerk/cref.rb#48
56
+ def defined?; end
57
+
58
+ # source://zeitwerk//lib/zeitwerk/cref.rb#59
59
+ def get; end
60
+
61
+ # source://zeitwerk//lib/zeitwerk/cref.rb#17
62
+ def mod; end
63
+
64
+ # source://zeitwerk//lib/zeitwerk/cref.rb#33
65
+ def path; end
66
+
67
+ # source://zeitwerk//lib/zeitwerk/cref.rb#65
68
+ def remove; end
69
+
70
+ # source://zeitwerk//lib/zeitwerk/cref.rb#53
71
+ def set(value); end
72
+ end
73
+
74
+ # source://zeitwerk//lib/zeitwerk/error.rb#4
75
+ class Zeitwerk::Error < ::StandardError; end
76
+
77
+ # source://zeitwerk//lib/zeitwerk/explicit_namespace.rb#19
78
+ module Zeitwerk::ExplicitNamespace
79
+ extend ::Zeitwerk::RealModName
80
+
81
+ class << self
82
+ # source://zeitwerk//lib/zeitwerk/explicit_namespace.rb#80
83
+ def __clear; end
84
+
85
+ # source://zeitwerk//lib/zeitwerk/explicit_namespace.rb#57
86
+ def __loader_for(mod, cname); end
87
+
88
+ # source://zeitwerk//lib/zeitwerk/explicit_namespace.rb#48
89
+ def __register(cref, loader); end
90
+
91
+ # source://zeitwerk//lib/zeitwerk/explicit_namespace.rb#73
92
+ def __registered?(cname_or_cpath); end
93
+
94
+ # source://zeitwerk//lib/zeitwerk/explicit_namespace.rb#66
95
+ def __unregister_loader(loader); end
96
+
97
+ private
98
+
99
+ # source://zeitwerk//lib/zeitwerk/explicit_namespace.rb#80
100
+ def clear; end
101
+
102
+ # source://zeitwerk//lib/zeitwerk/explicit_namespace.rb#57
103
+ def loader_for(mod, cname); end
104
+
105
+ # source://zeitwerk//lib/zeitwerk/explicit_namespace.rb#48
106
+ def register(cref, loader); end
107
+
108
+ # source://zeitwerk//lib/zeitwerk/explicit_namespace.rb#73
109
+ def registered?(cname_or_cpath); end
110
+
111
+ # source://zeitwerk//lib/zeitwerk/explicit_namespace.rb#66
112
+ def unregister_loader(loader); end
113
+ end
114
+ end
115
+
116
+ # source://zeitwerk//lib/zeitwerk/gem_inflector.rb#4
117
+ class Zeitwerk::GemInflector < ::Zeitwerk::Inflector
118
+ # source://zeitwerk//lib/zeitwerk/gem_inflector.rb#6
119
+ def initialize(root_file); end
120
+
121
+ # source://zeitwerk//lib/zeitwerk/gem_inflector.rb#13
122
+ def camelize(basename, abspath); end
123
+ end
124
+
125
+ # source://zeitwerk//lib/zeitwerk/gem_loader.rb#5
126
+ class Zeitwerk::GemLoader < ::Zeitwerk::Loader
127
+ # source://zeitwerk//lib/zeitwerk/gem_loader.rb#19
128
+ def initialize(root_file, namespace:, warn_on_extra_files:); end
129
+
130
+ # source://zeitwerk//lib/zeitwerk/gem_loader.rb#34
131
+ def setup; end
132
+
133
+ private
134
+
135
+ # source://zeitwerk//lib/zeitwerk/gem_loader.rb#42
136
+ def warn_on_extra_files; end
137
+
138
+ class << self
139
+ # source://zeitwerk//lib/zeitwerk/gem_loader.rb#14
140
+ def __new(root_file, namespace:, warn_on_extra_files:); end
141
+
142
+ private
143
+
144
+ def new(*_arg0); end
145
+ end
146
+ end
147
+
148
+ # source://zeitwerk//lib/zeitwerk/inflector.rb#4
149
+ class Zeitwerk::Inflector
150
+ # source://zeitwerk//lib/zeitwerk/inflector.rb#15
151
+ def camelize(basename, _abspath); end
152
+
153
+ # source://zeitwerk//lib/zeitwerk/inflector.rb#32
154
+ def inflect(inflections); end
155
+
156
+ private
157
+
158
+ # source://zeitwerk//lib/zeitwerk/inflector.rb#42
159
+ def overrides; end
160
+ end
161
+
162
+ # source://zeitwerk//lib/zeitwerk/internal.rb#4
163
+ module Zeitwerk::Internal
164
+ # source://zeitwerk//lib/zeitwerk/internal.rb#5
165
+ def internal(method_name); end
166
+ end
167
+
168
+ # source://zeitwerk//lib/zeitwerk/loader.rb#7
169
+ class Zeitwerk::Loader
170
+ include ::Zeitwerk::RealModName
171
+ include ::Zeitwerk::Loader::Callbacks
172
+ include ::Zeitwerk::Loader::Helpers
173
+ include ::Zeitwerk::Loader::Config
174
+ include ::Zeitwerk::Loader::EagerLoad
175
+ extend ::Zeitwerk::Internal
176
+ extend ::Zeitwerk::RealModName
177
+
178
+ # source://zeitwerk//lib/zeitwerk/loader.rb#100
179
+ def initialize; end
180
+
181
+ # source://zeitwerk//lib/zeitwerk/loader.rb#42
182
+ def __autoloaded_dirs; end
183
+
184
+ # source://zeitwerk//lib/zeitwerk/loader.rb#32
185
+ def __autoloads; end
186
+
187
+ # source://zeitwerk//lib/zeitwerk/loader.rb#78
188
+ def __namespace_dirs; end
189
+
190
+ # source://zeitwerk//lib/zeitwerk/loader.rb#344
191
+ def __shadowed_file?(file); end
192
+
193
+ # source://zeitwerk//lib/zeitwerk/loader.rb#89
194
+ def __shadowed_files; end
195
+
196
+ # source://zeitwerk//lib/zeitwerk/loader.rb#60
197
+ def __to_unload; end
198
+
199
+ # source://zeitwerk//lib/zeitwerk/loader.rb#238
200
+ def all_expected_cpaths; end
201
+
202
+ # source://zeitwerk//lib/zeitwerk/loader.rb#268
203
+ def cpath_expected_at(path); end
204
+
205
+ # source://zeitwerk//lib/zeitwerk/loader.rb#224
206
+ def reload; end
207
+
208
+ # source://zeitwerk//lib/zeitwerk/loader.rb#120
209
+ def setup; end
210
+
211
+ # source://zeitwerk//lib/zeitwerk/loader.rb#146
212
+ def unload; end
213
+
214
+ # source://zeitwerk//lib/zeitwerk/loader.rb#319
215
+ def unloadable_cpath?(cpath); end
216
+
217
+ # source://zeitwerk//lib/zeitwerk/loader.rb#327
218
+ def unloadable_cpaths; end
219
+
220
+ # source://zeitwerk//lib/zeitwerk/loader.rb#335
221
+ def unregister; end
222
+
223
+ private
224
+
225
+ # source://zeitwerk//lib/zeitwerk/loader.rb#491
226
+ def autoload_file(cref, file); end
227
+
228
+ # source://zeitwerk//lib/zeitwerk/loader.rb#546
229
+ def autoload_path_set_by_me_for?(cref); end
230
+
231
+ # source://zeitwerk//lib/zeitwerk/loader.rb#462
232
+ def autoload_subdir(cref, subdir); end
233
+
234
+ # source://zeitwerk//lib/zeitwerk/loader.rb#42
235
+ def autoloaded_dirs; end
236
+
237
+ # source://zeitwerk//lib/zeitwerk/loader.rb#32
238
+ def autoloads; end
239
+
240
+ # source://zeitwerk//lib/zeitwerk/loader.rb#525
241
+ def define_autoload(cref, abspath); end
242
+
243
+ # source://zeitwerk//lib/zeitwerk/loader.rb#444
244
+ def define_autoloads_for_dir(dir, parent); end
245
+
246
+ # source://zeitwerk//lib/zeitwerk/loader.rb#97
247
+ def dirs_autoload_monitor; end
248
+
249
+ # source://zeitwerk//lib/zeitwerk/loader.rb#93
250
+ def mutex; end
251
+
252
+ # source://zeitwerk//lib/zeitwerk/loader.rb#78
253
+ def namespace_dirs; end
254
+
255
+ # source://zeitwerk//lib/zeitwerk/loader.rb#512
256
+ def promote_namespace_from_implicit_to_explicit(dir:, file:, cref:); end
257
+
258
+ # source://zeitwerk//lib/zeitwerk/loader.rb#560
259
+ def raise_if_conflicting_directory(dir); end
260
+
261
+ # source://zeitwerk//lib/zeitwerk/loader.rb#555
262
+ def register_explicit_namespace(cref); end
263
+
264
+ # source://zeitwerk//lib/zeitwerk/loader.rb#584
265
+ def run_on_unload_callbacks(cpath, value, abspath); end
266
+
267
+ # source://zeitwerk//lib/zeitwerk/loader.rb#344
268
+ def shadowed_file?(file); end
269
+
270
+ # source://zeitwerk//lib/zeitwerk/loader.rb#89
271
+ def shadowed_files; end
272
+
273
+ # source://zeitwerk//lib/zeitwerk/loader.rb#60
274
+ def to_unload; end
275
+
276
+ # source://zeitwerk//lib/zeitwerk/loader.rb#591
277
+ def unload_autoload(cref); end
278
+
279
+ # source://zeitwerk//lib/zeitwerk/loader.rb#597
280
+ def unload_cref(cref); end
281
+
282
+ class << self
283
+ # source://zeitwerk//lib/zeitwerk/loader.rb#438
284
+ def all_dirs; end
285
+
286
+ # source://zeitwerk//lib/zeitwerk/loader.rb#354
287
+ def default_logger; end
288
+
289
+ # source://zeitwerk//lib/zeitwerk/loader.rb#354
290
+ def default_logger=(_arg0); end
291
+
292
+ # source://zeitwerk//lib/zeitwerk/loader.rb#410
293
+ def eager_load_all; end
294
+
295
+ # source://zeitwerk//lib/zeitwerk/loader.rb#424
296
+ def eager_load_namespace(mod); end
297
+
298
+ # source://zeitwerk//lib/zeitwerk/loader.rb#372
299
+ def for_gem(warn_on_extra_files: T.unsafe(nil)); end
300
+
301
+ # source://zeitwerk//lib/zeitwerk/loader.rb#393
302
+ def for_gem_extension(namespace); end
303
+ end
304
+ end
305
+
306
+ # source://zeitwerk//lib/zeitwerk/loader/callbacks.rb#3
307
+ module Zeitwerk::Loader::Callbacks
308
+ include ::Zeitwerk::RealModName
309
+ extend ::Zeitwerk::Internal
310
+
311
+ # source://zeitwerk//lib/zeitwerk/loader/callbacks.rb#41
312
+ def __on_dir_autoloaded(dir); end
313
+
314
+ # source://zeitwerk//lib/zeitwerk/loader/callbacks.rb#11
315
+ def __on_file_autoloaded(file); end
316
+
317
+ # source://zeitwerk//lib/zeitwerk/loader/callbacks.rb#81
318
+ def on_namespace_loaded(namespace); end
319
+
320
+ private
321
+
322
+ # source://zeitwerk//lib/zeitwerk/loader/callbacks.rb#41
323
+ def on_dir_autoloaded(dir); end
324
+
325
+ # source://zeitwerk//lib/zeitwerk/loader/callbacks.rb#11
326
+ def on_file_autoloaded(file); end
327
+
328
+ # source://zeitwerk//lib/zeitwerk/loader/callbacks.rb#92
329
+ def run_on_load_callbacks(cpath, value, abspath); end
330
+ end
331
+
332
+ # source://zeitwerk//lib/zeitwerk/loader/config.rb#6
333
+ module Zeitwerk::Loader::Config
334
+ include ::Zeitwerk::RealModName
335
+ extend ::Zeitwerk::Internal
336
+
337
+ # source://zeitwerk//lib/zeitwerk/loader/config.rb#86
338
+ def initialize; end
339
+
340
+ # source://zeitwerk//lib/zeitwerk/loader/config.rb#296
341
+ def __ignores?(abspath); end
342
+
343
+ def __roots; end
344
+
345
+ # source://zeitwerk//lib/zeitwerk/loader/config.rb#216
346
+ def collapse(*glob_patterns); end
347
+
348
+ # source://zeitwerk//lib/zeitwerk/loader/config.rb#156
349
+ def dirs(namespaces: T.unsafe(nil), ignored: T.unsafe(nil)); end
350
+
351
+ # source://zeitwerk//lib/zeitwerk/loader/config.rb#198
352
+ def do_not_eager_load(*paths); end
353
+
354
+ # source://zeitwerk//lib/zeitwerk/loader/config.rb#177
355
+ def enable_reloading; end
356
+
357
+ # source://zeitwerk//lib/zeitwerk/loader/config.rb#205
358
+ def ignore(*glob_patterns); end
359
+
360
+ # source://zeitwerk//lib/zeitwerk/loader/config.rb#11
361
+ def inflector; end
362
+
363
+ # source://zeitwerk//lib/zeitwerk/loader/config.rb#11
364
+ def inflector=(_arg0); end
365
+
366
+ # source://zeitwerk//lib/zeitwerk/loader/config.rb#288
367
+ def log!; end
368
+
369
+ # source://zeitwerk//lib/zeitwerk/loader/config.rb#14
370
+ def logger; end
371
+
372
+ # source://zeitwerk//lib/zeitwerk/loader/config.rb#14
373
+ def logger=(_arg0); end
374
+
375
+ # source://zeitwerk//lib/zeitwerk/loader/config.rb#252
376
+ def on_load(cpath = T.unsafe(nil), &block); end
377
+
378
+ # source://zeitwerk//lib/zeitwerk/loader/config.rb#228
379
+ def on_setup(&block); end
380
+
381
+ # source://zeitwerk//lib/zeitwerk/loader/config.rb#277
382
+ def on_unload(cpath = T.unsafe(nil), &block); end
383
+
384
+ # source://zeitwerk//lib/zeitwerk/loader/config.rb#111
385
+ def push_dir(path, namespace: T.unsafe(nil)); end
386
+
387
+ # source://zeitwerk//lib/zeitwerk/loader/config.rb#190
388
+ def reloading_enabled?; end
389
+
390
+ # source://zeitwerk//lib/zeitwerk/loader/config.rb#135
391
+ def tag; end
392
+
393
+ # source://zeitwerk//lib/zeitwerk/loader/config.rb#142
394
+ def tag=(tag); end
395
+
396
+ private
397
+
398
+ # source://zeitwerk//lib/zeitwerk/loader/config.rb#314
399
+ def actual_roots; end
400
+
401
+ # source://zeitwerk//lib/zeitwerk/loader/config.rb#339
402
+ def collapse?(dir); end
403
+
404
+ # source://zeitwerk//lib/zeitwerk/loader/config.rb#57
405
+ def collapse_dirs; end
406
+
407
+ # source://zeitwerk//lib/zeitwerk/loader/config.rb#50
408
+ def collapse_glob_patterns; end
409
+
410
+ # source://zeitwerk//lib/zeitwerk/loader/config.rb#63
411
+ def eager_load_exclusions; end
412
+
413
+ # source://zeitwerk//lib/zeitwerk/loader/config.rb#326
414
+ def excluded_from_eager_load?(abspath); end
415
+
416
+ # source://zeitwerk//lib/zeitwerk/loader/config.rb#349
417
+ def expand_glob_patterns(glob_patterns); end
418
+
419
+ # source://zeitwerk//lib/zeitwerk/loader/config.rb#344
420
+ def expand_paths(paths); end
421
+
422
+ # source://zeitwerk//lib/zeitwerk/loader/config.rb#36
423
+ def ignored_glob_patterns; end
424
+
425
+ # source://zeitwerk//lib/zeitwerk/loader/config.rb#309
426
+ def ignored_path?(abspath); end
427
+
428
+ # source://zeitwerk//lib/zeitwerk/loader/config.rb#44
429
+ def ignored_paths; end
430
+
431
+ # source://zeitwerk//lib/zeitwerk/loader/config.rb#296
432
+ def ignores?(abspath); end
433
+
434
+ # source://zeitwerk//lib/zeitwerk/loader/config.rb#76
435
+ def on_load_callbacks; end
436
+
437
+ # source://zeitwerk//lib/zeitwerk/loader/config.rb#69
438
+ def on_setup_callbacks; end
439
+
440
+ # source://zeitwerk//lib/zeitwerk/loader/config.rb#83
441
+ def on_unload_callbacks; end
442
+
443
+ # source://zeitwerk//lib/zeitwerk/loader/config.rb#361
444
+ def recompute_collapse_dirs; end
445
+
446
+ # source://zeitwerk//lib/zeitwerk/loader/config.rb#356
447
+ def recompute_ignored_paths; end
448
+
449
+ # source://zeitwerk//lib/zeitwerk/loader/config.rb#321
450
+ def root_dir?(dir); end
451
+
452
+ # source://zeitwerk//lib/zeitwerk/loader/config.rb#29
453
+ def roots; end
454
+ end
455
+
456
+ # source://zeitwerk//lib/zeitwerk/loader/eager_load.rb#1
457
+ module Zeitwerk::Loader::EagerLoad
458
+ # source://zeitwerk//lib/zeitwerk/loader/eager_load.rb#9
459
+ def eager_load(force: T.unsafe(nil)); end
460
+
461
+ # source://zeitwerk//lib/zeitwerk/loader/eager_load.rb#32
462
+ def eager_load_dir(path); end
463
+
464
+ # source://zeitwerk//lib/zeitwerk/loader/eager_load.rb#74
465
+ def eager_load_namespace(mod); end
466
+
467
+ # source://zeitwerk//lib/zeitwerk/loader/eager_load.rb#116
468
+ def load_file(path); end
469
+
470
+ private
471
+
472
+ # source://zeitwerk//lib/zeitwerk/loader/eager_load.rb#160
473
+ def actual_eager_load_dir(dir, namespace, force: T.unsafe(nil)); end
474
+
475
+ # source://zeitwerk//lib/zeitwerk/loader/eager_load.rb#193
476
+ def eager_load_child_namespace(child, child_name, root_dir, root_namespace); end
477
+ end
478
+
479
+ # source://zeitwerk//lib/zeitwerk/loader/helpers.rb#3
480
+ module Zeitwerk::Loader::Helpers
481
+ private
482
+
483
+ # source://zeitwerk//lib/zeitwerk/loader/helpers.rb#108
484
+ def cname_for(basename, abspath); end
485
+
486
+ # source://zeitwerk//lib/zeitwerk/loader/helpers.rb#83
487
+ def dir?(path); end
488
+
489
+ # source://zeitwerk//lib/zeitwerk/loader/helpers.rb#56
490
+ def has_at_least_one_ruby_file?(dir); end
491
+
492
+ # source://zeitwerk//lib/zeitwerk/loader/helpers.rb#88
493
+ def hidden?(basename); end
494
+
495
+ # source://zeitwerk//lib/zeitwerk/loader/helpers.rb#7
496
+ def log(message); end
497
+
498
+ # source://zeitwerk//lib/zeitwerk/loader/helpers.rb#15
499
+ def ls(dir); end
500
+
501
+ # source://zeitwerk//lib/zeitwerk/loader/helpers.rb#78
502
+ def ruby?(path); end
503
+
504
+ # source://zeitwerk//lib/zeitwerk/loader/helpers.rb#93
505
+ def walk_up(abspath); end
506
+ end
507
+
508
+ # source://zeitwerk//lib/zeitwerk/loader/helpers.rb#103
509
+ module Zeitwerk::Loader::Helpers::CNAME_VALIDATOR; end
510
+
511
+ # source://zeitwerk//lib/zeitwerk/loader.rb#21
512
+ Zeitwerk::Loader::MUTEX = T.let(T.unsafe(nil), Thread::Mutex)
513
+
514
+ # source://zeitwerk//lib/zeitwerk/error.rb#13
515
+ class Zeitwerk::NameError < ::NameError; end
516
+
517
+ # source://zeitwerk//lib/zeitwerk/null_inflector.rb#1
518
+ class Zeitwerk::NullInflector
519
+ # source://zeitwerk//lib/zeitwerk/null_inflector.rb#2
520
+ def camelize(basename, _abspath); end
521
+ end
522
+
523
+ # source://zeitwerk//lib/zeitwerk/real_mod_name.rb#3
524
+ module Zeitwerk::RealModName
525
+ # source://zeitwerk//lib/zeitwerk/real_mod_name.rb#13
526
+ def real_mod_name(mod); end
527
+ end
528
+
529
+ # source://zeitwerk//lib/zeitwerk/real_mod_name.rb#4
530
+ Zeitwerk::RealModName::UNBOUND_METHOD_MODULE_NAME = T.let(T.unsafe(nil), UnboundMethod)
531
+
532
+ # source://zeitwerk//lib/zeitwerk/registry.rb#4
533
+ module Zeitwerk::Registry
534
+ class << self
535
+ # source://zeitwerk//lib/zeitwerk/registry.rb#26
536
+ def autoloads; end
537
+
538
+ # source://zeitwerk//lib/zeitwerk/registry.rb#17
539
+ def gem_loaders_by_root_file; end
540
+
541
+ # source://zeitwerk//lib/zeitwerk/registry.rb#113
542
+ def inception?(cpath, registered_by_loader = T.unsafe(nil)); end
543
+
544
+ # source://zeitwerk//lib/zeitwerk/registry.rb#65
545
+ def inceptions; end
546
+
547
+ # source://zeitwerk//lib/zeitwerk/registry.rb#124
548
+ def loader_for(path); end
549
+
550
+ # source://zeitwerk//lib/zeitwerk/registry.rb#89
551
+ def loader_for_gem(root_file, namespace:, warn_on_extra_files:); end
552
+
553
+ # source://zeitwerk//lib/zeitwerk/registry.rb#11
554
+ def loaders; end
555
+
556
+ # source://zeitwerk//lib/zeitwerk/registry.rb#130
557
+ def on_unload(loader); end
558
+
559
+ # source://zeitwerk//lib/zeitwerk/registry.rb#95
560
+ def register_autoload(loader, abspath); end
561
+
562
+ # source://zeitwerk//lib/zeitwerk/registry.rb#107
563
+ def register_inception(cpath, abspath, loader); end
564
+
565
+ # source://zeitwerk//lib/zeitwerk/registry.rb#71
566
+ def register_loader(loader); end
567
+
568
+ # source://zeitwerk//lib/zeitwerk/registry.rb#101
569
+ def unregister_autoload(abspath); end
570
+
571
+ # source://zeitwerk//lib/zeitwerk/registry.rb#77
572
+ def unregister_loader(loader); end
573
+ end
574
+ end
575
+
576
+ # source://zeitwerk//lib/zeitwerk/error.rb#7
577
+ class Zeitwerk::ReloadingDisabledError < ::Zeitwerk::Error
578
+ # source://zeitwerk//lib/zeitwerk/error.rb#8
579
+ def initialize; end
580
+ end
581
+
582
+ # source://zeitwerk//lib/zeitwerk/error.rb#16
583
+ class Zeitwerk::SetupRequired < ::Zeitwerk::Error
584
+ # source://zeitwerk//lib/zeitwerk/error.rb#17
585
+ def initialize; end
586
+ end
587
+
588
+ # source://zeitwerk//lib/zeitwerk/version.rb#4
589
+ Zeitwerk::VERSION = T.let(T.unsafe(nil), String)
@@ -0,0 +1,45 @@
1
+ gem:
2
+ doc: false
3
+ exclude:
4
+ - activerecord
5
+ - appraisal
6
+ - betterlint
7
+ - combustion
8
+ - moneta
9
+ - mutant-license
10
+ - mutant-rspec
11
+ - pg
12
+ - pry
13
+ - rspec
14
+ - rspec_junit_formatter
15
+ - rubocop-rspec
16
+ - sorbet
17
+ - timecop
18
+ dsl:
19
+ app_root: "./spec/internal"
20
+ environment: test
21
+ exclude:
22
+ - Tapioca::Dsl::Compilers::ActionControllerHelpers
23
+ - Tapioca::Dsl::Compilers::ActionText
24
+ - Tapioca::Dsl::Compilers::ActiveModelAttributes
25
+ - Tapioca::Dsl::Compilers::ActiveModelSecurePassword
26
+ - Tapioca::Dsl::Compilers::ActiveModelValidationsConfirmation
27
+ - Tapioca::Dsl::Compilers::ActiveRecordAssociations
28
+ - Tapioca::Dsl::Compilers::ActiveRecordColumns
29
+ - Tapioca::Dsl::Compilers::ActiveRecordDelegatedTypes
30
+ - Tapioca::Dsl::Compilers::ActiveRecordEnum
31
+ - Tapioca::Dsl::Compilers::ActiveRecordFixtures
32
+ - Tapioca::Dsl::Compilers::ActiveRecordRelations
33
+ - Tapioca::Dsl::Compilers::ActiveRecordScope
34
+ - Tapioca::Dsl::Compilers::ActiveRecordSecureToken
35
+ - Tapioca::Dsl::Compilers::ActiveRecordStore
36
+ - Tapioca::Dsl::Compilers::ActiveSupportConcern
37
+ - Tapioca::Dsl::Compilers::ActiveSupportCurrentAttributes
38
+ - Tapioca::Dsl::Compilers::ActiveSupportTimeExt
39
+ - Tapioca::Dsl::Compilers::MixedInClassAttributes
40
+ - Tapioca::Dsl::Compilers::UrlHelpers
41
+ # Add your `dsl` command parameters here:
42
+ #
43
+ # exclude:
44
+ # - SomeGeneratorName
45
+ # workers: 5
@@ -0,0 +1,8 @@
1
+ # typed: true
2
+ # frozen_string_literal: true
3
+
4
+ require "active_model"
5
+ require "alchemrest"
6
+ require "factory_bot"
7
+
8
+ require_relative "../../examples/bank_api"
@@ -0,0 +1 @@
1
+ **/*.rbi linguist-generated=true
@@ -0,0 +1,23 @@
1
+ # typed: true
2
+
3
+ # DO NOT EDIT MANUALLY
4
+ # This is an autogenerated file for dynamic methods in `ActiveSupport::Callbacks`.
5
+ # Please instead update this file by running `bin/tapioca dsl ActiveSupport::Callbacks`.
6
+
7
+
8
+ module ActiveSupport::Callbacks
9
+ include GeneratedInstanceMethods
10
+
11
+ mixes_in_class_methods GeneratedClassMethods
12
+
13
+ module GeneratedClassMethods
14
+ def __callbacks; end
15
+ def __callbacks=(value); end
16
+ def __callbacks?; end
17
+ end
18
+
19
+ module GeneratedInstanceMethods
20
+ def __callbacks; end
21
+ def __callbacks?; end
22
+ end
23
+ end