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,9 @@
1
+ # typed: true
2
+
3
+ # DO NOT EDIT MANUALLY
4
+ # This is an autogenerated file for types exported from the `connection_pool` gem.
5
+ # Please instead update this file by running `bin/tapioca gem connection_pool`.
6
+
7
+
8
+ # THIS IS AN EMPTY RBI FILE.
9
+ # see https://github.com/Shopify/tapioca#manually-requiring-parts-of-a-gem
@@ -0,0 +1,110 @@
1
+ # typed: true
2
+
3
+ # DO NOT EDIT MANUALLY
4
+ # This is an autogenerated file for types exported from the `crack` gem.
5
+ # Please instead update this file by running `bin/tapioca gem crack`.
6
+
7
+
8
+ # source://crack//lib/crack/xml.rb#196
9
+ module Crack; end
10
+
11
+ # source://crack//lib/crack/xml.rb#197
12
+ class Crack::REXMLParser
13
+ class << self
14
+ # source://crack//lib/crack/xml.rb#198
15
+ def parse(xml); end
16
+ end
17
+ end
18
+
19
+ # source://crack//lib/crack/xml.rb#225
20
+ class Crack::XML
21
+ class << self
22
+ # source://crack//lib/crack/xml.rb#234
23
+ def parse(xml); end
24
+
25
+ # source://crack//lib/crack/xml.rb#226
26
+ def parser; end
27
+
28
+ # source://crack//lib/crack/xml.rb#230
29
+ def parser=(parser); end
30
+ end
31
+ end
32
+
33
+ # source://crack//lib/crack/xml.rb#23
34
+ class REXMLUtilityNode
35
+ # source://crack//lib/crack/xml.rb#56
36
+ def initialize(name, normalized_attributes = T.unsafe(nil)); end
37
+
38
+ # source://crack//lib/crack/xml.rb#73
39
+ def add_node(node); end
40
+
41
+ # source://crack//lib/crack/xml.rb#24
42
+ def attributes; end
43
+
44
+ # source://crack//lib/crack/xml.rb#24
45
+ def attributes=(_arg0); end
46
+
47
+ # source://crack//lib/crack/xml.rb#24
48
+ def children; end
49
+
50
+ # source://crack//lib/crack/xml.rb#24
51
+ def children=(_arg0); end
52
+
53
+ # source://crack//lib/crack/xml.rb#172
54
+ def inner_html; end
55
+
56
+ # source://crack//lib/crack/xml.rb#24
57
+ def name; end
58
+
59
+ # source://crack//lib/crack/xml.rb#24
60
+ def name=(_arg0); end
61
+
62
+ # source://crack//lib/crack/xml.rb#78
63
+ def to_hash; end
64
+
65
+ # source://crack//lib/crack/xml.rb#179
66
+ def to_html; end
67
+
68
+ # source://crack//lib/crack/xml.rb#185
69
+ def to_s; end
70
+
71
+ # source://crack//lib/crack/xml.rb#24
72
+ def type; end
73
+
74
+ # source://crack//lib/crack/xml.rb#24
75
+ def type=(_arg0); end
76
+
77
+ # source://crack//lib/crack/xml.rb#157
78
+ def typecast_value(value); end
79
+
80
+ # source://crack//lib/crack/xml.rb#164
81
+ def undasherize_keys(params); end
82
+
83
+ private
84
+
85
+ # source://crack//lib/crack/xml.rb#191
86
+ def unnormalize_xml_entities(value); end
87
+
88
+ class << self
89
+ # source://crack//lib/crack/xml.rb#34
90
+ def available_typecasts; end
91
+
92
+ # source://crack//lib/crack/xml.rb#38
93
+ def available_typecasts=(obj); end
94
+
95
+ # source://crack//lib/crack/xml.rb#26
96
+ def typecasts; end
97
+
98
+ # source://crack//lib/crack/xml.rb#30
99
+ def typecasts=(obj); end
100
+ end
101
+ end
102
+
103
+ # source://crack//lib/crack/xml.rb#14
104
+ class REXMLUtiliyNodeString < ::String
105
+ # source://crack//lib/crack/xml.rb#15
106
+ def attributes; end
107
+
108
+ # source://crack//lib/crack/xml.rb#15
109
+ def attributes=(_arg0); end
110
+ end
@@ -0,0 +1,294 @@
1
+ # typed: true
2
+
3
+ # DO NOT EDIT MANUALLY
4
+ # This is an autogenerated file for types exported from the `crass` gem.
5
+ # Please instead update this file by running `bin/tapioca gem crass`.
6
+
7
+
8
+ # source://crass//lib/crass/token-scanner.rb#3
9
+ module Crass
10
+ class << self
11
+ # source://crass//lib/crass.rb#10
12
+ def parse(input, options = T.unsafe(nil)); end
13
+
14
+ # source://crass//lib/crass.rb#18
15
+ def parse_properties(input, options = T.unsafe(nil)); end
16
+ end
17
+ end
18
+
19
+ # source://crass//lib/crass/parser.rb#10
20
+ class Crass::Parser
21
+ # source://crass//lib/crass/parser.rb#126
22
+ def initialize(input, options = T.unsafe(nil)); end
23
+
24
+ # source://crass//lib/crass/parser.rb#137
25
+ def consume_at_rule(input = T.unsafe(nil)); end
26
+
27
+ # source://crass//lib/crass/parser.rb#184
28
+ def consume_component_value(input = T.unsafe(nil)); end
29
+
30
+ # source://crass//lib/crass/parser.rb#209
31
+ def consume_declaration(input = T.unsafe(nil)); end
32
+
33
+ # source://crass//lib/crass/parser.rb#276
34
+ def consume_declarations(input = T.unsafe(nil), options = T.unsafe(nil)); end
35
+
36
+ # source://crass//lib/crass/parser.rb#326
37
+ def consume_function(input = T.unsafe(nil)); end
38
+
39
+ # source://crass//lib/crass/parser.rb#357
40
+ def consume_qualified_rule(input = T.unsafe(nil)); end
41
+
42
+ # source://crass//lib/crass/parser.rb#398
43
+ def consume_rules(flags = T.unsafe(nil)); end
44
+
45
+ # source://crass//lib/crass/parser.rb#434
46
+ def consume_simple_block(input = T.unsafe(nil)); end
47
+
48
+ # source://crass//lib/crass/parser.rb#458
49
+ def create_node(type, properties = T.unsafe(nil)); end
50
+
51
+ # source://crass//lib/crass/parser.rb#466
52
+ def create_selector(input); end
53
+
54
+ # source://crass//lib/crass/parser.rb#474
55
+ def create_style_rule(rule); end
56
+
57
+ # source://crass//lib/crass/parser.rb#483
58
+ def parse_component_value(input = T.unsafe(nil)); end
59
+
60
+ # source://crass//lib/crass/parser.rb#510
61
+ def parse_component_values(input = T.unsafe(nil)); end
62
+
63
+ # source://crass//lib/crass/parser.rb#524
64
+ def parse_declaration(input = T.unsafe(nil)); end
65
+
66
+ # source://crass//lib/crass/parser.rb#552
67
+ def parse_declarations(input = T.unsafe(nil), options = T.unsafe(nil)); end
68
+
69
+ # source://crass//lib/crass/parser.rb#560
70
+ def parse_properties(input = T.unsafe(nil)); end
71
+
72
+ # source://crass//lib/crass/parser.rb#586
73
+ def parse_rule(input = T.unsafe(nil)); end
74
+
75
+ # source://crass//lib/crass/parser.rb#615
76
+ def parse_value(nodes); end
77
+
78
+ # source://crass//lib/crass/parser.rb#120
79
+ def tokens; end
80
+
81
+ class << self
82
+ # source://crass//lib/crass/parser.rb#25
83
+ def parse_properties(input, options = T.unsafe(nil)); end
84
+
85
+ # source://crass//lib/crass/parser.rb#36
86
+ def parse_rules(input, options = T.unsafe(nil)); end
87
+
88
+ # source://crass//lib/crass/parser.rb#54
89
+ def parse_stylesheet(input, options = T.unsafe(nil)); end
90
+
91
+ # source://crass//lib/crass/parser.rb#74
92
+ def stringify(nodes, options = T.unsafe(nil)); end
93
+ end
94
+ end
95
+
96
+ # source://crass//lib/crass/parser.rb#11
97
+ Crass::Parser::BLOCK_END_TOKENS = T.let(T.unsafe(nil), Hash)
98
+
99
+ # source://crass//lib/crass/scanner.rb#8
100
+ class Crass::Scanner
101
+ # source://crass//lib/crass/scanner.rb#25
102
+ def initialize(input); end
103
+
104
+ # source://crass//lib/crass/scanner.rb#34
105
+ def consume; end
106
+
107
+ # source://crass//lib/crass/scanner.rb#46
108
+ def consume_rest; end
109
+
110
+ # source://crass//lib/crass/scanner.rb#11
111
+ def current; end
112
+
113
+ # source://crass//lib/crass/scanner.rb#57
114
+ def eos?; end
115
+
116
+ # source://crass//lib/crass/scanner.rb#63
117
+ def mark; end
118
+
119
+ # source://crass//lib/crass/scanner.rb#69
120
+ def marked; end
121
+
122
+ # source://crass//lib/crass/scanner.rb#15
123
+ def marker; end
124
+
125
+ # source://crass//lib/crass/scanner.rb#15
126
+ def marker=(_arg0); end
127
+
128
+ # source://crass//lib/crass/scanner.rb#80
129
+ def peek(length = T.unsafe(nil)); end
130
+
131
+ # source://crass//lib/crass/scanner.rb#19
132
+ def pos; end
133
+
134
+ # source://crass//lib/crass/scanner.rb#19
135
+ def pos=(_arg0); end
136
+
137
+ # source://crass//lib/crass/scanner.rb#87
138
+ def reconsume; end
139
+
140
+ # source://crass//lib/crass/scanner.rb#93
141
+ def reset; end
142
+
143
+ # source://crass//lib/crass/scanner.rb#103
144
+ def scan(pattern); end
145
+
146
+ # source://crass//lib/crass/scanner.rb#115
147
+ def scan_until(pattern); end
148
+
149
+ # source://crass//lib/crass/scanner.rb#22
150
+ def string; end
151
+ end
152
+
153
+ # source://crass//lib/crass/token-scanner.rb#6
154
+ class Crass::TokenScanner
155
+ # source://crass//lib/crass/token-scanner.rb#9
156
+ def initialize(tokens); end
157
+
158
+ # source://crass//lib/crass/token-scanner.rb#16
159
+ def collect; end
160
+
161
+ # source://crass//lib/crass/token-scanner.rb#24
162
+ def consume; end
163
+
164
+ # source://crass//lib/crass/token-scanner.rb#7
165
+ def current; end
166
+
167
+ # source://crass//lib/crass/token-scanner.rb#32
168
+ def peek; end
169
+
170
+ # source://crass//lib/crass/token-scanner.rb#7
171
+ def pos; end
172
+
173
+ # source://crass//lib/crass/token-scanner.rb#39
174
+ def reconsume; end
175
+
176
+ # source://crass//lib/crass/token-scanner.rb#44
177
+ def reset; end
178
+
179
+ # source://crass//lib/crass/token-scanner.rb#7
180
+ def tokens; end
181
+ end
182
+
183
+ # source://crass//lib/crass/tokenizer.rb#9
184
+ class Crass::Tokenizer
185
+ # source://crass//lib/crass/tokenizer.rb#62
186
+ def initialize(input, options = T.unsafe(nil)); end
187
+
188
+ # source://crass//lib/crass/tokenizer.rb#70
189
+ def consume; end
190
+
191
+ # source://crass//lib/crass/tokenizer.rb#275
192
+ def consume_bad_url; end
193
+
194
+ # source://crass//lib/crass/tokenizer.rb#301
195
+ def consume_comments; end
196
+
197
+ # source://crass//lib/crass/tokenizer.rb#326
198
+ def consume_escaped; end
199
+
200
+ # source://crass//lib/crass/tokenizer.rb#350
201
+ def consume_ident; end
202
+
203
+ # source://crass//lib/crass/tokenizer.rb#375
204
+ def consume_name; end
205
+
206
+ # source://crass//lib/crass/tokenizer.rb#407
207
+ def consume_number; end
208
+
209
+ # source://crass//lib/crass/tokenizer.rb#430
210
+ def consume_numeric; end
211
+
212
+ # source://crass//lib/crass/tokenizer.rb#469
213
+ def consume_string(ending = T.unsafe(nil)); end
214
+
215
+ # source://crass//lib/crass/tokenizer.rb#510
216
+ def consume_unicode_range; end
217
+
218
+ # source://crass//lib/crass/tokenizer.rb#542
219
+ def consume_url; end
220
+
221
+ # source://crass//lib/crass/tokenizer.rb#590
222
+ def convert_string_to_number(str); end
223
+
224
+ # source://crass//lib/crass/tokenizer.rb#616
225
+ def create_token(type, properties = T.unsafe(nil)); end
226
+
227
+ # source://crass//lib/crass/tokenizer.rb#627
228
+ def preprocess(input); end
229
+
230
+ # source://crass//lib/crass/tokenizer.rb#642
231
+ def start_identifier?(text = T.unsafe(nil)); end
232
+
233
+ # source://crass//lib/crass/tokenizer.rb#666
234
+ def start_number?(text = T.unsafe(nil)); end
235
+
236
+ # source://crass//lib/crass/tokenizer.rb#685
237
+ def tokenize; end
238
+
239
+ # source://crass//lib/crass/tokenizer.rb#702
240
+ def valid_escape?(text = T.unsafe(nil)); end
241
+
242
+ class << self
243
+ # source://crass//lib/crass/tokenizer.rb#45
244
+ def tokenize(input, options = T.unsafe(nil)); end
245
+ end
246
+ end
247
+
248
+ # source://crass//lib/crass/tokenizer.rb#10
249
+ Crass::Tokenizer::RE_COMMENT_CLOSE = T.let(T.unsafe(nil), Regexp)
250
+
251
+ # source://crass//lib/crass/tokenizer.rb#11
252
+ Crass::Tokenizer::RE_DIGIT = T.let(T.unsafe(nil), Regexp)
253
+
254
+ # source://crass//lib/crass/tokenizer.rb#12
255
+ Crass::Tokenizer::RE_ESCAPE = T.let(T.unsafe(nil), Regexp)
256
+
257
+ # source://crass//lib/crass/tokenizer.rb#13
258
+ Crass::Tokenizer::RE_HEX = T.let(T.unsafe(nil), Regexp)
259
+
260
+ # source://crass//lib/crass/tokenizer.rb#14
261
+ Crass::Tokenizer::RE_NAME = T.let(T.unsafe(nil), Regexp)
262
+
263
+ # source://crass//lib/crass/tokenizer.rb#15
264
+ Crass::Tokenizer::RE_NAME_START = T.let(T.unsafe(nil), Regexp)
265
+
266
+ # source://crass//lib/crass/tokenizer.rb#16
267
+ Crass::Tokenizer::RE_NON_PRINTABLE = T.let(T.unsafe(nil), Regexp)
268
+
269
+ # source://crass//lib/crass/tokenizer.rb#17
270
+ Crass::Tokenizer::RE_NUMBER_DECIMAL = T.let(T.unsafe(nil), Regexp)
271
+
272
+ # source://crass//lib/crass/tokenizer.rb#18
273
+ Crass::Tokenizer::RE_NUMBER_EXPONENT = T.let(T.unsafe(nil), Regexp)
274
+
275
+ # source://crass//lib/crass/tokenizer.rb#19
276
+ Crass::Tokenizer::RE_NUMBER_SIGN = T.let(T.unsafe(nil), Regexp)
277
+
278
+ # source://crass//lib/crass/tokenizer.rb#21
279
+ Crass::Tokenizer::RE_NUMBER_STR = T.let(T.unsafe(nil), Regexp)
280
+
281
+ # source://crass//lib/crass/tokenizer.rb#33
282
+ Crass::Tokenizer::RE_QUOTED_URL_START = T.let(T.unsafe(nil), Regexp)
283
+
284
+ # source://crass//lib/crass/tokenizer.rb#35
285
+ Crass::Tokenizer::RE_UNICODE_RANGE_END = T.let(T.unsafe(nil), Regexp)
286
+
287
+ # source://crass//lib/crass/tokenizer.rb#34
288
+ Crass::Tokenizer::RE_UNICODE_RANGE_START = T.let(T.unsafe(nil), Regexp)
289
+
290
+ # source://crass//lib/crass/tokenizer.rb#36
291
+ Crass::Tokenizer::RE_WHITESPACE = T.let(T.unsafe(nil), Regexp)
292
+
293
+ # source://crass//lib/crass/tokenizer.rb#37
294
+ Crass::Tokenizer::RE_WHITESPACE_ANCHORED = T.let(T.unsafe(nil), Regexp)
@@ -0,0 +1,58 @@
1
+ # typed: true
2
+
3
+ # DO NOT EDIT MANUALLY
4
+ # This is an autogenerated file for types exported from the `date` gem.
5
+ # Please instead update this file by running `bin/tapioca gem date`.
6
+
7
+
8
+ # source://date//lib/date.rb#6
9
+ class Date
10
+ include ::Comparable
11
+
12
+ # source://date//lib/date.rb#13
13
+ def infinite?; end
14
+ end
15
+
16
+ # source://date//lib/date.rb#17
17
+ class Date::Infinity < ::Numeric
18
+ # source://date//lib/date.rb#19
19
+ def initialize(d = T.unsafe(nil)); end
20
+
21
+ # source://date//lib/date.rb#33
22
+ def +@; end
23
+
24
+ # source://date//lib/date.rb#32
25
+ def -@; end
26
+
27
+ # source://date//lib/date.rb#35
28
+ def <=>(other); end
29
+
30
+ # source://date//lib/date.rb#30
31
+ def abs; end
32
+
33
+ # source://date//lib/date.rb#51
34
+ def coerce(other); end
35
+
36
+ # source://date//lib/date.rb#26
37
+ def finite?; end
38
+
39
+ # source://date//lib/date.rb#27
40
+ def infinite?; end
41
+
42
+ # source://date//lib/date.rb#28
43
+ def nan?; end
44
+
45
+ # source://date//lib/date.rb#59
46
+ def to_f; end
47
+
48
+ # source://date//lib/date.rb#25
49
+ def zero?; end
50
+
51
+ protected
52
+
53
+ # source://date//lib/date.rb#21
54
+ def d; end
55
+ end
56
+
57
+ # source://date//lib/date.rb#7
58
+ Date::VERSION = T.let(T.unsafe(nil), String)