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,815 @@
1
+ # typed: true
2
+
3
+ # DO NOT EDIT MANUALLY
4
+ # This is an autogenerated file for types exported from the `money` gem.
5
+ # Please instead update this file by running `bin/tapioca gem money`.
6
+
7
+
8
+ # source://money//lib/money/currency/loader.rb#1
9
+ class Money
10
+ include ::Comparable
11
+ include ::Money::Arithmetic
12
+ extend ::Money::Constructors
13
+
14
+ # source://money//lib/money/money.rb#341
15
+ def initialize(obj, currency = T.unsafe(nil), options = T.unsafe(nil)); end
16
+
17
+ # source://money//lib/money/money.rb#595
18
+ def allocate(parts); end
19
+
20
+ # source://money//lib/money/money.rb#386
21
+ def amount; end
22
+
23
+ # source://money//lib/money/money.rb#561
24
+ def as_ca_dollar; end
25
+
26
+ # source://money//lib/money/money.rb#573
27
+ def as_euro; end
28
+
29
+ # source://money//lib/money/money.rb#549
30
+ def as_us_dollar; end
31
+
32
+ # source://money//lib/money/money.rb#88
33
+ def bank; end
34
+
35
+ # source://money//lib/money/money.rb#33
36
+ def cents; end
37
+
38
+ # source://money//lib/money/money.rb#88
39
+ def currency; end
40
+
41
+ # source://money//lib/money/money.rb#396
42
+ def currency_as_string; end
43
+
44
+ # source://money//lib/money/money.rb#409
45
+ def currency_as_string=(val); end
46
+
47
+ # source://money//lib/money/money.rb#644
48
+ def decimal_mark; end
49
+
50
+ # source://money//lib/money/money.rb#372
51
+ def dollars; end
52
+
53
+ # source://money//lib/money/money.rb#649
54
+ def dup_with(options = T.unsafe(nil)); end
55
+
56
+ # source://money//lib/money/money.rb#532
57
+ def exchange_to(other_currency, &rounding_method); end
58
+
59
+ # source://money//lib/money/money.rb#627
60
+ def format(*rules); end
61
+
62
+ # source://money//lib/money/money.rb#53
63
+ def fractional; end
64
+
65
+ # source://money//lib/money/money.rb#422
66
+ def hash; end
67
+
68
+ # source://money//lib/money/money.rb#439
69
+ def inspect; end
70
+
71
+ # source://money//lib/money/money.rb#616
72
+ def round(rounding_mode = T.unsafe(nil), rounding_precision = T.unsafe(nil)); end
73
+
74
+ # source://money//lib/money/money.rb#70
75
+ def round_to_nearest_cash_value; end
76
+
77
+ # source://money//lib/money/money.rb#595
78
+ def split(parts); end
79
+
80
+ # source://money//lib/money/money.rb#432
81
+ def symbol; end
82
+
83
+ # source://money//lib/money/money.rb#635
84
+ def thousands_separator; end
85
+
86
+ # source://money//lib/money/money.rb#462
87
+ def to_d; end
88
+
89
+ # source://money//lib/money/money.rb#485
90
+ def to_f; end
91
+
92
+ # source://money//lib/money/money.rb#472
93
+ def to_i; end
94
+
95
+ # source://money//lib/money/money.rb#507
96
+ def to_money(given_currency = T.unsafe(nil)); end
97
+
98
+ # source://money//lib/money/money.rb#449
99
+ def to_s; end
100
+
101
+ # source://money//lib/money/money.rb#495
102
+ def with_currency(new_currency); end
103
+
104
+ private
105
+
106
+ # source://money//lib/money/money.rb#659
107
+ def as_d(num); end
108
+
109
+ # source://money//lib/money/money.rb#675
110
+ def locale_backend; end
111
+
112
+ # source://money//lib/money/money.rb#667
113
+ def return_value(value); end
114
+
115
+ class << self
116
+ # source://money//lib/money/money.rb#282
117
+ def add_rate(from_currency, to_currency, rate); end
118
+
119
+ # source://money//lib/money/money.rb#132
120
+ def conversion_precision; end
121
+
122
+ # source://money//lib/money/money.rb#132
123
+ def conversion_precision=(_arg0); end
124
+
125
+ # source://money//lib/money/money.rb#171
126
+ def default_bank; end
127
+
128
+ # source://money//lib/money/money.rb#134
129
+ def default_bank=(_arg0); end
130
+
131
+ # source://money//lib/money/money.rb#152
132
+ def default_currency; end
133
+
134
+ # source://money//lib/money/money.rb#166
135
+ def default_currency=(currency); end
136
+
137
+ # source://money//lib/money/money.rb#132
138
+ def default_formatting_rules; end
139
+
140
+ # source://money//lib/money/money.rb#132
141
+ def default_formatting_rules=(_arg0); end
142
+
143
+ # source://money//lib/money/money.rb#132
144
+ def default_infinite_precision; end
145
+
146
+ # source://money//lib/money/money.rb#132
147
+ def default_infinite_precision=(_arg0); end
148
+
149
+ # source://money//lib/money/money.rb#288
150
+ def disallow_currency_conversion!; end
151
+
152
+ # source://money//lib/money/money.rb#307
153
+ def from_amount(amount, currency = T.unsafe(nil), options = T.unsafe(nil)); end
154
+
155
+ def from_cents(*_arg0); end
156
+
157
+ # source://money//lib/money/money.rb#307
158
+ def from_dollars(amount, currency = T.unsafe(nil), options = T.unsafe(nil)); end
159
+
160
+ # source://money//lib/money/money.rb#136
161
+ def infinite_precision; end
162
+
163
+ # source://money//lib/money/money.rb#141
164
+ def infinite_precision=(value); end
165
+
166
+ # source://money//lib/money/money.rb#224
167
+ def inherited(base); end
168
+
169
+ # source://money//lib/money/money.rb#133
170
+ def locale_backend; end
171
+
172
+ # source://money//lib/money/money.rb#179
173
+ def locale_backend=(value); end
174
+
175
+ # source://money//lib/money/money.rb#235
176
+ def rounding_mode(mode = T.unsafe(nil)); end
177
+
178
+ # source://money//lib/money/money.rb#184
179
+ def rounding_mode=(new_rounding_mode); end
180
+
181
+ # source://money//lib/money/money.rb#199
182
+ def setup_defaults; end
183
+
184
+ # source://money//lib/money/money.rb#133
185
+ def use_i18n; end
186
+
187
+ # source://money//lib/money/money.rb#189
188
+ def use_i18n=(value); end
189
+
190
+ # source://money//lib/money/money.rb#265
191
+ def with_rounding_mode(mode); end
192
+ end
193
+ end
194
+
195
+ # source://money//lib/money/money/allocation.rb#4
196
+ class Money::Allocation
197
+ class << self
198
+ # source://money//lib/money/money/allocation.rb#58
199
+ def convert_to_big_decimal(number); end
200
+
201
+ # source://money//lib/money/money/allocation.rb#16
202
+ def generate(amount, parts, whole_amounts = T.unsafe(nil)); end
203
+ end
204
+ end
205
+
206
+ # source://money//lib/money/money/arithmetic.rb#2
207
+ module Money::Arithmetic
208
+ # source://money//lib/money/money/arithmetic.rb#264
209
+ def %(val); end
210
+
211
+ # source://money//lib/money/money/arithmetic.rb#167
212
+ def *(value); end
213
+
214
+ # source://money//lib/money/money/arithmetic.rb#135
215
+ def +(other); end
216
+
217
+ # source://money//lib/money/money/arithmetic.rb#135
218
+ def -(other); end
219
+
220
+ # source://money//lib/money/money/arithmetic.rb#18
221
+ def -@; end
222
+
223
+ # source://money//lib/money/money/arithmetic.rb#191
224
+ def /(value); end
225
+
226
+ # source://money//lib/money/money/arithmetic.rb#55
227
+ def <=>(other); end
228
+
229
+ # source://money//lib/money/money/arithmetic.rb#73
230
+ def ==(other); end
231
+
232
+ # source://money//lib/money/money/arithmetic.rb#294
233
+ def abs; end
234
+
235
+ # source://money//lib/money/money/arithmetic.rb#326
236
+ def coerce(other); end
237
+
238
+ # source://money//lib/money/money/arithmetic.rb#209
239
+ def div(value); end
240
+
241
+ # source://money//lib/money/money/arithmetic.rb#223
242
+ def divmod(val); end
243
+
244
+ # source://money//lib/money/money/arithmetic.rb#37
245
+ def eql?(other_money); end
246
+
247
+ # source://money//lib/money/money/arithmetic.rb#253
248
+ def modulo(val); end
249
+
250
+ # source://money//lib/money/money/arithmetic.rb#102
251
+ def negative?; end
252
+
253
+ # source://money//lib/money/money/arithmetic.rb#317
254
+ def nonzero?; end
255
+
256
+ # source://money//lib/money/money/arithmetic.rb#89
257
+ def positive?; end
258
+
259
+ # source://money//lib/money/money/arithmetic.rb#276
260
+ def remainder(val); end
261
+
262
+ # source://money//lib/money/money/arithmetic.rb#305
263
+ def zero?; end
264
+
265
+ private
266
+
267
+ # source://money//lib/money/money/arithmetic.rb#231
268
+ def divmod_money(val); end
269
+
270
+ # source://money//lib/money/money/arithmetic.rb#238
271
+ def divmod_other(val); end
272
+ end
273
+
274
+ # source://money//lib/money/money/arithmetic.rb#5
275
+ class Money::Arithmetic::CoercedNumeric < ::Struct
276
+ def value; end
277
+ def value=(_); end
278
+
279
+ # source://money//lib/money/money/arithmetic.rb#7
280
+ def zero?; end
281
+
282
+ class << self
283
+ def [](*_arg0); end
284
+ def inspect; end
285
+ def keyword_init?; end
286
+ def members; end
287
+ def new(*_arg0); end
288
+ end
289
+ end
290
+
291
+ # source://money//lib/money/bank/base.rb#4
292
+ module Money::Bank; end
293
+
294
+ # source://money//lib/money/bank/base.rb#40
295
+ class Money::Bank::Base
296
+ # source://money//lib/money/bank/base.rb#70
297
+ def initialize(&block); end
298
+
299
+ # source://money//lib/money/bank/base.rb#103
300
+ def exchange_with(from, to_currency, &block); end
301
+
302
+ # source://money//lib/money/bank/base.rb#52
303
+ def rounding_method; end
304
+
305
+ # source://money//lib/money/bank/base.rb#123
306
+ def same_currency?(currency1, currency2); end
307
+
308
+ # source://money//lib/money/bank/base.rb#82
309
+ def setup; end
310
+
311
+ class << self
312
+ # source://money//lib/money/bank/base.rb#45
313
+ def instance; end
314
+ end
315
+ end
316
+
317
+ # source://money//lib/money/bank/single_currency.rb#6
318
+ class Money::Bank::DifferentCurrencyError < ::Money::Bank::Error; end
319
+
320
+ # source://money//lib/money/bank/base.rb#8
321
+ class Money::Bank::Error < ::StandardError; end
322
+
323
+ # source://money//lib/money/bank/single_currency.rb#15
324
+ class Money::Bank::SingleCurrency < ::Money::Bank::Base
325
+ # source://money//lib/money/bank/single_currency.rb#19
326
+ def exchange_with(from, to_currency, &block); end
327
+ end
328
+
329
+ # source://money//lib/money/bank/base.rb#13
330
+ class Money::Bank::UnknownRate < ::Money::Bank::Error; end
331
+
332
+ # source://money//lib/money/bank/variable_exchange.rb#9
333
+ class Money::Bank::UnknownRateFormat < ::StandardError; end
334
+
335
+ # source://money//lib/money/bank/variable_exchange.rb#43
336
+ class Money::Bank::VariableExchange < ::Money::Bank::Base
337
+ # source://money//lib/money/bank/variable_exchange.rb#59
338
+ def initialize(st = T.unsafe(nil), &block); end
339
+
340
+ # source://money//lib/money/bank/variable_exchange.rb#158
341
+ def add_rate(from, to, rate); end
342
+
343
+ # source://money//lib/money/bank/variable_exchange.rb#127
344
+ def calculate_fractional(from, to_currency); end
345
+
346
+ # source://money//lib/money/bank/variable_exchange.rb#134
347
+ def exchange(fractional, rate, &block); end
348
+
349
+ # source://money//lib/money/bank/variable_exchange.rb#109
350
+ def exchange_with(from, to_currency, &block); end
351
+
352
+ # source://money//lib/money/bank/variable_exchange.rb#221
353
+ def export_rates(format, file = T.unsafe(nil), opts = T.unsafe(nil)); end
354
+
355
+ # source://money//lib/money/bank/variable_exchange.rb#198
356
+ def get_rate(from, to, opts = T.unsafe(nil)); end
357
+
358
+ # source://money//lib/money/bank/variable_exchange.rb#261
359
+ def import_rates(format, s, opts = T.unsafe(nil)); end
360
+
361
+ # source://money//lib/money/bank/variable_exchange.rb#68
362
+ def marshal_dump; end
363
+
364
+ # source://money//lib/money/bank/variable_exchange.rb#72
365
+ def marshal_load(arr); end
366
+
367
+ # source://money//lib/money/bank/variable_exchange.rb#45
368
+ def mutex; end
369
+
370
+ # source://money//lib/money/bank/variable_exchange.rb#236
371
+ def rates; end
372
+
373
+ # source://money//lib/money/bank/variable_exchange.rb#177
374
+ def set_rate(from, to, rate, opts = T.unsafe(nil)); end
375
+
376
+ # source://money//lib/money/bank/variable_exchange.rb#64
377
+ def store; end
378
+ end
379
+
380
+ # source://money//lib/money/bank/variable_exchange.rb#50
381
+ Money::Bank::VariableExchange::FORMAT_SERIALIZERS = T.let(T.unsafe(nil), Hash)
382
+
383
+ # source://money//lib/money/bank/variable_exchange.rb#48
384
+ Money::Bank::VariableExchange::RATE_FORMATS = T.let(T.unsafe(nil), Array)
385
+
386
+ # source://money//lib/money/bank/variable_exchange.rb#49
387
+ Money::Bank::VariableExchange::SERIALIZER_SEPARATOR = T.let(T.unsafe(nil), String)
388
+
389
+ # source://money//lib/money/money/constructors.rb#2
390
+ module Money::Constructors
391
+ # source://money//lib/money/money/constructors.rb#29
392
+ def ca_dollar(cents); end
393
+
394
+ # source://money//lib/money/money/constructors.rb#29
395
+ def cad(cents); end
396
+
397
+ # source://money//lib/money/money/constructors.rb#12
398
+ def empty(currency = T.unsafe(nil)); end
399
+
400
+ # source://money//lib/money/money/constructors.rb#62
401
+ def eur(cents); end
402
+
403
+ # source://money//lib/money/money/constructors.rb#62
404
+ def euro(cents); end
405
+
406
+ # source://money//lib/money/money/constructors.rb#78
407
+ def gbp(pence); end
408
+
409
+ # source://money//lib/money/money/constructors.rb#78
410
+ def pound_sterling(pence); end
411
+
412
+ # source://money//lib/money/money/constructors.rb#46
413
+ def us_dollar(cents); end
414
+
415
+ # source://money//lib/money/money/constructors.rb#46
416
+ def usd(cents); end
417
+
418
+ # source://money//lib/money/money/constructors.rb#12
419
+ def zero(currency = T.unsafe(nil)); end
420
+ end
421
+
422
+ # source://money//lib/money/currency/loader.rb#2
423
+ class Money::Currency
424
+ include ::Comparable
425
+ extend ::Enumerable
426
+ extend ::Money::Currency::Heuristics
427
+
428
+ # source://money//lib/money/currency.rb#275
429
+ def initialize(id); end
430
+
431
+ # source://money//lib/money/currency.rb#293
432
+ def <=>(other_currency); end
433
+
434
+ # source://money//lib/money/currency.rb#316
435
+ def ==(other_currency); end
436
+
437
+ # source://money//lib/money/currency.rb#400
438
+ def code; end
439
+
440
+ # source://money//lib/money/currency.rb#258
441
+ def decimal_mark; end
442
+
443
+ # source://money//lib/money/currency.rb#425
444
+ def decimal_places; end
445
+
446
+ # source://money//lib/money/currency.rb#258
447
+ def delimiter; end
448
+
449
+ # source://money//lib/money/currency.rb#258
450
+ def disambiguate_symbol; end
451
+
452
+ def eql?(_arg0); end
453
+
454
+ # source://money//lib/money/currency.rb#425
455
+ def exponent; end
456
+
457
+ # source://money//lib/money/currency.rb#258
458
+ def format; end
459
+
460
+ # source://money//lib/money/currency.rb#337
461
+ def hash; end
462
+
463
+ # source://money//lib/money/currency.rb#258
464
+ def html_entity; end
465
+
466
+ # source://money//lib/money/currency.rb#258
467
+ def id; end
468
+
469
+ # source://money//lib/money/currency.rb#347
470
+ def inspect; end
471
+
472
+ # source://money//lib/money/currency.rb#415
473
+ def iso?; end
474
+
475
+ # source://money//lib/money/currency.rb#258
476
+ def iso_code; end
477
+
478
+ # source://money//lib/money/currency.rb#258
479
+ def iso_numeric; end
480
+
481
+ # source://money//lib/money/currency.rb#258
482
+ def name; end
483
+
484
+ # source://money//lib/money/currency.rb#258
485
+ def priority; end
486
+
487
+ # source://money//lib/money/currency.rb#258
488
+ def separator; end
489
+
490
+ # source://money//lib/money/currency.rb#258
491
+ def smallest_denomination; end
492
+
493
+ # source://money//lib/money/currency.rb#258
494
+ def subunit; end
495
+
496
+ # source://money//lib/money/currency.rb#258
497
+ def subunit_to_unit; end
498
+
499
+ # source://money//lib/money/currency.rb#258
500
+ def symbol; end
501
+
502
+ # source://money//lib/money/currency.rb#258
503
+ def symbol_first; end
504
+
505
+ # source://money//lib/money/currency.rb#404
506
+ def symbol_first?; end
507
+
508
+ # source://money//lib/money/currency.rb#258
509
+ def thousands_separator; end
510
+
511
+ # source://money//lib/money/currency.rb#393
512
+ def to_currency; end
513
+
514
+ # source://money//lib/money/currency.rb#362
515
+ def to_s; end
516
+
517
+ # source://money//lib/money/currency.rb#374
518
+ def to_str; end
519
+
520
+ # source://money//lib/money/currency.rb#386
521
+ def to_sym; end
522
+
523
+ private
524
+
525
+ # source://money//lib/money/currency.rb#320
526
+ def compare_ids(other_currency); end
527
+
528
+ # source://money//lib/money/currency.rb#432
529
+ def initialize_data!; end
530
+
531
+ class << self
532
+ # source://money//lib/money/currency.rb#46
533
+ def _instances; end
534
+
535
+ # source://money//lib/money/currency.rb#133
536
+ def all; end
537
+
538
+ # source://money//lib/money/currency.rb#205
539
+ def each; end
540
+
541
+ # source://money//lib/money/currency.rb#61
542
+ def find(id); end
543
+
544
+ # source://money//lib/money/currency.rb#80
545
+ def find_by_iso_numeric(num); end
546
+
547
+ # source://money//lib/money/currency.rb#181
548
+ def inherit(parent_iso_code, curr); end
549
+
550
+ # source://money//lib/money/currency.rb#37
551
+ def new(id); end
552
+
553
+ # source://money//lib/money/currency.rb#170
554
+ def register(curr); end
555
+
556
+ # source://money//lib/money/currency.rb#209
557
+ def reset!; end
558
+
559
+ # source://money//lib/money/currency.rb#149
560
+ def stringified_keys; end
561
+
562
+ # source://money//lib/money/currency.rb#123
563
+ def table; end
564
+
565
+ # source://money//lib/money/currency.rb#194
566
+ def unregister(curr); end
567
+
568
+ # source://money//lib/money/currency.rb#102
569
+ def wrap(object); end
570
+
571
+ private
572
+
573
+ # source://money//lib/money/currency.rb#216
574
+ def stringify_keys; end
575
+ end
576
+ end
577
+
578
+ # source://money//lib/money/currency/heuristics.rb#5
579
+ module Money::Currency::Heuristics
580
+ # source://money//lib/money/currency/heuristics.rb#6
581
+ def analyze(str); end
582
+ end
583
+
584
+ # source://money//lib/money/currency/loader.rb#3
585
+ module Money::Currency::Loader
586
+ class << self
587
+ # source://money//lib/money/currency/loader.rb#10
588
+ def load_currencies; end
589
+
590
+ private
591
+
592
+ # source://money//lib/money/currency/loader.rb#18
593
+ def parse_currency_file(filename); end
594
+ end
595
+ end
596
+
597
+ # source://money//lib/money/currency/loader.rb#4
598
+ Money::Currency::Loader::DATA_PATH = T.let(T.unsafe(nil), String)
599
+
600
+ # source://money//lib/money/currency.rb#24
601
+ class Money::Currency::MissingAttributeError < ::StandardError
602
+ # source://money//lib/money/currency.rb#25
603
+ def initialize(method, currency, attribute); end
604
+ end
605
+
606
+ # source://money//lib/money/currency.rb#34
607
+ class Money::Currency::UnknownCurrency < ::ArgumentError; end
608
+
609
+ # source://money//lib/money/money/formatter.rb#5
610
+ class Money::Formatter
611
+ # source://money//lib/money/money/formatter.rb#233
612
+ def initialize(money, *rules); end
613
+
614
+ # source://money//lib/money/money/formatter.rb#254
615
+ def decimal_mark; end
616
+
617
+ # source://money//lib/money/money/formatter.rb#246
618
+ def delimiter; end
619
+
620
+ # source://money//lib/money/money/formatter.rb#254
621
+ def separator; end
622
+
623
+ # source://money//lib/money/money/formatter.rb#246
624
+ def thousands_separator; end
625
+
626
+ # source://money//lib/money/money/formatter.rb#239
627
+ def to_s; end
628
+
629
+ private
630
+
631
+ # source://money//lib/money/money/formatter.rb#317
632
+ def append_currency_symbol(formatted_number); end
633
+
634
+ # source://money//lib/money/money/formatter.rb#288
635
+ def append_sign(formatted_number); end
636
+
637
+ # source://money//lib/money/money/formatter.rb#263
638
+ def currency; end
639
+
640
+ # source://money//lib/money/money/formatter.rb#351
641
+ def extract_whole_and_decimal_parts; end
642
+
643
+ # source://money//lib/money/money/formatter.rb#364
644
+ def format_decimal_part(value); end
645
+
646
+ # source://money//lib/money/money/formatter.rb#265
647
+ def format_number; end
648
+
649
+ # source://money//lib/money/money/formatter.rb#344
650
+ def format_whole_part(value); end
651
+
652
+ # source://money//lib/money/money/formatter.rb#340
653
+ def free_text; end
654
+
655
+ # source://money//lib/money/money/formatter.rb#336
656
+ def html_wrap(string, class_name); end
657
+
658
+ # source://money//lib/money/money/formatter.rb#378
659
+ def lookup(key); end
660
+
661
+ # source://money//lib/money/money/formatter.rb#384
662
+ def lookup_default(key); end
663
+
664
+ # source://money//lib/money/money/formatter.rb#263
665
+ def money; end
666
+
667
+ # source://money//lib/money/money/formatter.rb#263
668
+ def rules; end
669
+
670
+ # source://money//lib/money/money/formatter.rb#332
671
+ def show_free_text?; end
672
+
673
+ # source://money//lib/money/money/formatter.rb#388
674
+ def symbol_value_from(rules); end
675
+ end
676
+
677
+ # source://money//lib/money/money/formatter.rb#6
678
+ Money::Formatter::DEFAULTS = T.let(T.unsafe(nil), Hash)
679
+
680
+ # source://money//lib/money/money/formatting_rules.rb#4
681
+ class Money::FormattingRules
682
+ # source://money//lib/money/money/formatting_rules.rb#5
683
+ def initialize(currency, *raw_rules); end
684
+
685
+ # source://money//lib/money/money/formatting_rules.rb#20
686
+ def [](key); end
687
+
688
+ # source://money//lib/money/money/formatting_rules.rb#24
689
+ def has_key?(key); end
690
+
691
+ private
692
+
693
+ # source://money//lib/money/money/formatting_rules.rb#30
694
+ def currency; end
695
+
696
+ # source://money//lib/money/money/formatting_rules.rb#61
697
+ def default_formatting_rules; end
698
+
699
+ # source://money//lib/money/money/formatting_rules.rb#94
700
+ def delimiter_pattern_rule(rules); end
701
+
702
+ # source://money//lib/money/money/formatting_rules.rb#82
703
+ def determine_format_from_formatting_rules(rules); end
704
+
705
+ # source://money//lib/money/money/formatting_rules.rb#74
706
+ def localize_formatting_rules(rules); end
707
+
708
+ # source://money//lib/money/money/formatting_rules.rb#37
709
+ def normalize_formatting_rules(rules); end
710
+
711
+ # source://money//lib/money/money/formatting_rules.rb#103
712
+ def symbol_position_from(rules); end
713
+
714
+ # source://money//lib/money/money/formatting_rules.rb#65
715
+ def translate_formatting_rules(rules); end
716
+
717
+ # source://money//lib/money/money/formatting_rules.rb#117
718
+ def warn_about_deprecated_rules(rules); end
719
+ end
720
+
721
+ # source://money//lib/money/locale_backend/errors.rb#2
722
+ module Money::LocaleBackend
723
+ class << self
724
+ # source://money//lib/money/money/locale_backend.rb#16
725
+ def find(name); end
726
+ end
727
+ end
728
+
729
+ # source://money//lib/money/money/locale_backend.rb#10
730
+ Money::LocaleBackend::BACKENDS = T.let(T.unsafe(nil), Hash)
731
+
732
+ # source://money//lib/money/locale_backend/base.rb#5
733
+ class Money::LocaleBackend::Base; end
734
+
735
+ # source://money//lib/money/locale_backend/currency.rb#5
736
+ class Money::LocaleBackend::Currency < ::Money::LocaleBackend::Base
737
+ # source://money//lib/money/locale_backend/currency.rb#6
738
+ def lookup(key, currency); end
739
+ end
740
+
741
+ # source://money//lib/money/locale_backend/i18n.rb#5
742
+ class Money::LocaleBackend::I18n < ::Money::LocaleBackend::Base
743
+ # source://money//lib/money/locale_backend/i18n.rb#12
744
+ def initialize; end
745
+
746
+ # source://money//lib/money/locale_backend/i18n.rb#16
747
+ def lookup(key, _); end
748
+ end
749
+
750
+ # source://money//lib/money/locale_backend/i18n.rb#6
751
+ Money::LocaleBackend::I18n::KEY_MAP = T.let(T.unsafe(nil), Hash)
752
+
753
+ # source://money//lib/money/locale_backend/legacy.rb#6
754
+ class Money::LocaleBackend::Legacy < ::Money::LocaleBackend::Base
755
+ # source://money//lib/money/locale_backend/legacy.rb#7
756
+ def initialize; end
757
+
758
+ # source://money//lib/money/locale_backend/legacy.rb#11
759
+ def lookup(key, currency); end
760
+
761
+ private
762
+
763
+ # source://money//lib/money/locale_backend/legacy.rb#23
764
+ def i18n_backend; end
765
+ end
766
+
767
+ # source://money//lib/money/locale_backend/errors.rb#3
768
+ class Money::LocaleBackend::NotSupported < ::StandardError; end
769
+
770
+ # source://money//lib/money/locale_backend/errors.rb#4
771
+ class Money::LocaleBackend::Unknown < ::ArgumentError; end
772
+
773
+ # source://money//lib/money/rates_store/memory.rb#4
774
+ module Money::RatesStore; end
775
+
776
+ # source://money//lib/money/rates_store/memory.rb#15
777
+ class Money::RatesStore::Memory
778
+ # source://money//lib/money/rates_store/memory.rb#23
779
+ def initialize(opts = T.unsafe(nil), rates = T.unsafe(nil)); end
780
+
781
+ # source://money//lib/money/rates_store/memory.rb#41
782
+ def add_rate(currency_iso_from, currency_iso_to, rate); end
783
+
784
+ # source://money//lib/money/rates_store/memory.rb#91
785
+ def each_rate(&block); end
786
+
787
+ # source://money//lib/money/rates_store/memory.rb#60
788
+ def get_rate(currency_iso_from, currency_iso_to); end
789
+
790
+ # source://money//lib/money/rates_store/memory.rb#66
791
+ def marshal_dump; end
792
+
793
+ # source://money//lib/money/rates_store/memory.rb#73
794
+ def transaction(&block); end
795
+
796
+ private
797
+
798
+ # source://money//lib/money/rates_store/memory.rb#104
799
+ def guard; end
800
+
801
+ # source://money//lib/money/rates_store/memory.rb#104
802
+ def options; end
803
+
804
+ # source://money//lib/money/rates_store/memory.rb#115
805
+ def rate_key_for(currency_iso_from, currency_iso_to); end
806
+
807
+ # source://money//lib/money/rates_store/memory.rb#104
808
+ def rates; end
809
+ end
810
+
811
+ # source://money//lib/money/rates_store/memory.rb#16
812
+ Money::RatesStore::Memory::INDEX_KEY_SEPARATOR = T.let(T.unsafe(nil), String)
813
+
814
+ # source://money//lib/money/money.rb#25
815
+ class Money::UndefinedSmallestDenomination < ::StandardError; end