vrpayment-ruby-sdk 5.1.0 → 6.0.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 (1429) hide show
  1. checksums.yaml +4 -4
  2. data/Gemfile +20 -5
  3. data/Gemfile.lock +31 -38
  4. data/LICENSE +1 -1
  5. data/README.md +3025 -140
  6. data/Rakefile +24 -5
  7. data/lib/vrpayment-ruby-sdk/api_client.rb +236 -196
  8. data/lib/vrpayment-ruby-sdk/api_error.rb +40 -17
  9. data/lib/vrpayment-ruby-sdk/configuration.rb +240 -41
  10. data/lib/vrpayment-ruby-sdk/models/abstract_account_update.rb +85 -62
  11. data/lib/vrpayment-ruby-sdk/models/abstract_application_user_update.rb +112 -58
  12. data/lib/vrpayment-ruby-sdk/models/abstract_customer_active.rb +156 -99
  13. data/lib/vrpayment-ruby-sdk/models/abstract_customer_address_active.rb +98 -49
  14. data/lib/vrpayment-ruby-sdk/models/abstract_customer_comment_active.rb +79 -46
  15. data/lib/vrpayment-ruby-sdk/models/abstract_human_user_update.rb +167 -101
  16. data/lib/vrpayment-ruby-sdk/models/abstract_payment_connector_configuration_update.rb +304 -0
  17. data/lib/vrpayment-ruby-sdk/models/abstract_payment_link_update.rb +202 -108
  18. data/lib/vrpayment-ruby-sdk/models/abstract_payment_method_configuration_update.rb +313 -0
  19. data/lib/vrpayment-ruby-sdk/models/abstract_payment_processor_configuration_active.rb +269 -0
  20. data/lib/vrpayment-ruby-sdk/models/abstract_payment_terminal_update.rb +238 -0
  21. data/lib/vrpayment-ruby-sdk/models/abstract_refund_comment_active.rb +79 -46
  22. data/lib/vrpayment-ruby-sdk/models/abstract_role_update.rb +253 -0
  23. data/lib/vrpayment-ruby-sdk/models/abstract_single_sign_on_user_update.rb +318 -0
  24. data/lib/vrpayment-ruby-sdk/models/abstract_space_update.rb +153 -100
  25. data/lib/vrpayment-ruby-sdk/models/abstract_subscriber_update.rb +167 -116
  26. data/lib/vrpayment-ruby-sdk/models/abstract_subscription_affiliate_update.rb +118 -64
  27. data/lib/vrpayment-ruby-sdk/models/abstract_subscription_metric_update.rb +89 -60
  28. data/lib/vrpayment-ruby-sdk/models/abstract_subscription_product_active.rb +136 -82
  29. data/lib/vrpayment-ruby-sdk/models/abstract_token_update.rb +125 -76
  30. data/lib/vrpayment-ruby-sdk/models/abstract_transaction_comment_active.rb +79 -46
  31. data/lib/vrpayment-ruby-sdk/models/abstract_transaction_invoice_comment_active.rb +79 -46
  32. data/lib/vrpayment-ruby-sdk/models/abstract_transaction_pending.rb +298 -203
  33. data/lib/vrpayment-ruby-sdk/models/abstract_webhook_listener_update.rb +125 -61
  34. data/lib/vrpayment-ruby-sdk/models/abstract_webhook_url_update.rb +111 -53
  35. data/lib/vrpayment-ruby-sdk/models/account.rb +186 -146
  36. data/lib/vrpayment-ruby-sdk/models/account_create.rb +107 -76
  37. data/lib/vrpayment-ruby-sdk/models/account_list_response.rb +241 -0
  38. data/lib/vrpayment-ruby-sdk/models/account_search_response.rb +251 -0
  39. data/lib/vrpayment-ruby-sdk/models/account_state.rb +40 -27
  40. data/lib/vrpayment-ruby-sdk/models/account_type.rb +37 -24
  41. data/lib/vrpayment-ruby-sdk/models/account_update.rb +95 -79
  42. data/lib/vrpayment-ruby-sdk/models/address.rb +365 -257
  43. data/lib/vrpayment-ruby-sdk/models/address_create.rb +366 -257
  44. data/lib/vrpayment-ruby-sdk/models/application_key_state.rb +49 -0
  45. data/lib/vrpayment-ruby-sdk/models/application_user.rb +142 -83
  46. data/lib/vrpayment-ruby-sdk/models/application_user_create.rb +123 -61
  47. data/lib/vrpayment-ruby-sdk/models/application_user_create_with_mac_key.rb +142 -83
  48. data/lib/vrpayment-ruby-sdk/models/application_user_list_response.rb +241 -0
  49. data/lib/vrpayment-ruby-sdk/models/application_user_search_response.rb +251 -0
  50. data/lib/vrpayment-ruby-sdk/models/application_user_update.rb +122 -75
  51. data/lib/vrpayment-ruby-sdk/models/authenticated_card_data.rb +119 -65
  52. data/lib/vrpayment-ruby-sdk/models/authenticated_card_data_create.rb +208 -102
  53. data/lib/vrpayment-ruby-sdk/models/authenticated_card_request.rb +228 -0
  54. data/lib/vrpayment-ruby-sdk/models/bank_account.rb +145 -88
  55. data/lib/vrpayment-ruby-sdk/models/bank_account_environment.rb +36 -23
  56. data/lib/vrpayment-ruby-sdk/models/bank_account_list_response.rb +241 -0
  57. data/lib/vrpayment-ruby-sdk/models/bank_account_search_response.rb +251 -0
  58. data/lib/vrpayment-ruby-sdk/models/bank_account_state.rb +38 -25
  59. data/lib/vrpayment-ruby-sdk/models/bank_account_type.rb +101 -73
  60. data/lib/vrpayment-ruby-sdk/models/bank_transaction.rb +218 -155
  61. data/lib/vrpayment-ruby-sdk/models/bank_transaction_flow_direction.rb +36 -23
  62. data/lib/vrpayment-ruby-sdk/models/bank_transaction_list_response.rb +241 -0
  63. data/lib/vrpayment-ruby-sdk/models/bank_transaction_search_response.rb +251 -0
  64. data/lib/vrpayment-ruby-sdk/models/bank_transaction_source.rb +91 -63
  65. data/lib/vrpayment-ruby-sdk/models/bank_transaction_state.rb +36 -23
  66. data/lib/vrpayment-ruby-sdk/models/bank_transaction_type.rb +91 -63
  67. data/lib/vrpayment-ruby-sdk/models/billing_cycle_model.rb +147 -79
  68. data/lib/vrpayment-ruby-sdk/models/billing_cycle_type.rb +38 -25
  69. data/lib/vrpayment-ruby-sdk/models/billing_day_customization.rb +36 -23
  70. data/lib/vrpayment-ruby-sdk/models/card_authentication_response.rb +39 -26
  71. data/lib/vrpayment-ruby-sdk/models/card_authentication_version.rb +36 -23
  72. data/lib/vrpayment-ruby-sdk/models/card_cryptogram.rb +75 -47
  73. data/lib/vrpayment-ruby-sdk/models/card_cryptogram_create.rb +77 -47
  74. data/lib/vrpayment-ruby-sdk/models/cardholder_authentication.rb +111 -63
  75. data/lib/vrpayment-ruby-sdk/models/cardholder_authentication_create.rb +115 -63
  76. data/lib/vrpayment-ruby-sdk/models/charge.rb +175 -129
  77. data/lib/vrpayment-ruby-sdk/models/charge_attempt.rb +277 -224
  78. data/lib/vrpayment-ruby-sdk/models/charge_attempt_environment.rb +36 -23
  79. data/lib/vrpayment-ruby-sdk/models/charge_attempt_list_response.rb +241 -0
  80. data/lib/vrpayment-ruby-sdk/models/charge_attempt_search_response.rb +251 -0
  81. data/lib/vrpayment-ruby-sdk/models/charge_attempt_state.rb +37 -24
  82. data/lib/vrpayment-ruby-sdk/models/charge_bank_transaction.rb +129 -104
  83. data/lib/vrpayment-ruby-sdk/models/charge_bank_transaction_list_response.rb +241 -0
  84. data/lib/vrpayment-ruby-sdk/models/charge_bank_transaction_search_response.rb +251 -0
  85. data/lib/vrpayment-ruby-sdk/models/charge_flow.rb +131 -82
  86. data/lib/vrpayment-ruby-sdk/models/charge_flow_level.rb +159 -115
  87. data/lib/vrpayment-ruby-sdk/models/charge_flow_level_configuration.rb +146 -94
  88. data/lib/vrpayment-ruby-sdk/models/charge_flow_level_configuration_type.rb +92 -64
  89. data/lib/vrpayment-ruby-sdk/models/charge_flow_level_list_response.rb +241 -0
  90. data/lib/vrpayment-ruby-sdk/models/charge_flow_level_payment_link.rb +88 -61
  91. data/lib/vrpayment-ruby-sdk/models/charge_flow_level_payment_link_list_response.rb +241 -0
  92. data/lib/vrpayment-ruby-sdk/models/charge_flow_level_payment_link_search_response.rb +251 -0
  93. data/lib/vrpayment-ruby-sdk/models/charge_flow_level_search_response.rb +251 -0
  94. data/lib/vrpayment-ruby-sdk/models/charge_flow_level_state.rb +37 -24
  95. data/lib/vrpayment-ruby-sdk/models/charge_flow_list_response.rb +241 -0
  96. data/lib/vrpayment-ruby-sdk/models/charge_flow_search_response.rb +251 -0
  97. data/lib/vrpayment-ruby-sdk/models/charge_state.rb +37 -24
  98. data/lib/vrpayment-ruby-sdk/models/charge_type.rb +38 -25
  99. data/lib/vrpayment-ruby-sdk/models/client_platform_information_list_response.rb +241 -0
  100. data/lib/vrpayment-ruby-sdk/models/client_platform_information_search_response.rb +251 -0
  101. data/lib/vrpayment-ruby-sdk/models/completion_line_item.rb +82 -50
  102. data/lib/vrpayment-ruby-sdk/models/completion_line_item_create.rb +83 -49
  103. data/lib/vrpayment-ruby-sdk/models/completion_list_response.rb +241 -0
  104. data/lib/vrpayment-ruby-sdk/models/completion_search_response.rb +251 -0
  105. data/lib/vrpayment-ruby-sdk/models/condition.rb +125 -72
  106. data/lib/vrpayment-ruby-sdk/models/condition_type.rb +91 -63
  107. data/lib/vrpayment-ruby-sdk/models/condition_type_list_response.rb +241 -0
  108. data/lib/vrpayment-ruby-sdk/models/condition_type_search_response.rb +251 -0
  109. data/lib/vrpayment-ruby-sdk/models/connector_invocation.rb +141 -92
  110. data/lib/vrpayment-ruby-sdk/models/connector_invocation_stage.rb +38 -25
  111. data/lib/vrpayment-ruby-sdk/models/country_list_response.rb +241 -0
  112. data/lib/vrpayment-ruby-sdk/models/country_search_response.rb +251 -0
  113. data/lib/vrpayment-ruby-sdk/models/creation_entity_state.rb +39 -26
  114. data/lib/vrpayment-ruby-sdk/models/currency_bank_account.rb +117 -69
  115. data/lib/vrpayment-ruby-sdk/models/currency_bank_account_list_response.rb +241 -0
  116. data/lib/vrpayment-ruby-sdk/models/currency_bank_account_search_response.rb +251 -0
  117. data/lib/vrpayment-ruby-sdk/models/currency_list_response.rb +241 -0
  118. data/lib/vrpayment-ruby-sdk/models/currency_search_response.rb +251 -0
  119. data/lib/vrpayment-ruby-sdk/models/customer.rb +174 -118
  120. data/lib/vrpayment-ruby-sdk/models/customer_active.rb +160 -110
  121. data/lib/vrpayment-ruby-sdk/models/customer_address.rb +132 -85
  122. data/lib/vrpayment-ruby-sdk/models/customer_address_active.rb +109 -67
  123. data/lib/vrpayment-ruby-sdk/models/customer_address_create.rb +108 -51
  124. data/lib/vrpayment-ruby-sdk/models/customer_address_list_response.rb +241 -0
  125. data/lib/vrpayment-ruby-sdk/models/customer_address_search_response.rb +251 -0
  126. data/lib/vrpayment-ruby-sdk/models/customer_address_type.rb +37 -24
  127. data/lib/vrpayment-ruby-sdk/models/customer_comment.rb +138 -107
  128. data/lib/vrpayment-ruby-sdk/models/customer_comment_active.rb +90 -64
  129. data/lib/vrpayment-ruby-sdk/models/customer_comment_create.rb +89 -48
  130. data/lib/vrpayment-ruby-sdk/models/customer_comment_list_response.rb +241 -0
  131. data/lib/vrpayment-ruby-sdk/models/customer_comment_search_response.rb +251 -0
  132. data/lib/vrpayment-ruby-sdk/models/customer_create.rb +163 -100
  133. data/lib/vrpayment-ruby-sdk/models/customer_email_address_list_response.rb +241 -0
  134. data/lib/vrpayment-ruby-sdk/models/customer_list_response.rb +241 -0
  135. data/lib/vrpayment-ruby-sdk/models/customer_postal_address.rb +365 -257
  136. data/lib/vrpayment-ruby-sdk/models/customer_postal_address_create.rb +366 -257
  137. data/lib/vrpayment-ruby-sdk/models/customer_search_response.rb +251 -0
  138. data/lib/vrpayment-ruby-sdk/models/customers_presence.rb +37 -24
  139. data/lib/vrpayment-ruby-sdk/models/data_collection_type.rb +36 -23
  140. data/lib/vrpayment-ruby-sdk/models/delivery_indication.rb +157 -111
  141. data/lib/vrpayment-ruby-sdk/models/delivery_indication_decision_reason.rb +91 -63
  142. data/lib/vrpayment-ruby-sdk/models/delivery_indication_list_response.rb +241 -0
  143. data/lib/vrpayment-ruby-sdk/models/delivery_indication_search_response.rb +251 -0
  144. data/lib/vrpayment-ruby-sdk/models/delivery_indication_state.rb +38 -25
  145. data/lib/vrpayment-ruby-sdk/models/displayable_day_of_week.rb +41 -28
  146. data/lib/vrpayment-ruby-sdk/models/displayable_month.rb +46 -33
  147. data/lib/vrpayment-ruby-sdk/models/document_template.rb +146 -93
  148. data/lib/vrpayment-ruby-sdk/models/document_template_list_response.rb +241 -0
  149. data/lib/vrpayment-ruby-sdk/models/document_template_search_response.rb +251 -0
  150. data/lib/vrpayment-ruby-sdk/models/document_template_type.rb +97 -71
  151. data/lib/vrpayment-ruby-sdk/models/document_template_type_group.rb +75 -47
  152. data/lib/vrpayment-ruby-sdk/models/document_template_type_list_response.rb +241 -0
  153. data/lib/vrpayment-ruby-sdk/models/document_template_type_search_response.rb +251 -0
  154. data/lib/vrpayment-ruby-sdk/models/dunning_case.rb +164 -121
  155. data/lib/vrpayment-ruby-sdk/models/dunning_case_list_response.rb +241 -0
  156. data/lib/vrpayment-ruby-sdk/models/dunning_case_search_response.rb +251 -0
  157. data/lib/vrpayment-ruby-sdk/models/dunning_case_state.rb +40 -27
  158. data/lib/vrpayment-ruby-sdk/models/dunning_condition.rb +119 -65
  159. data/lib/vrpayment-ruby-sdk/models/dunning_condition_type.rb +91 -63
  160. data/lib/vrpayment-ruby-sdk/models/dunning_flow.rb +132 -84
  161. data/lib/vrpayment-ruby-sdk/models/dunning_flow_level.rb +175 -125
  162. data/lib/vrpayment-ruby-sdk/models/dunning_flow_level_list_response.rb +241 -0
  163. data/lib/vrpayment-ruby-sdk/models/dunning_flow_level_processor.rb +99 -72
  164. data/lib/vrpayment-ruby-sdk/models/dunning_flow_level_search_response.rb +251 -0
  165. data/lib/vrpayment-ruby-sdk/models/dunning_flow_list_response.rb +241 -0
  166. data/lib/vrpayment-ruby-sdk/models/dunning_flow_search_response.rb +251 -0
  167. data/lib/vrpayment-ruby-sdk/models/dunning_flow_type.rb +98 -71
  168. data/lib/vrpayment-ruby-sdk/models/environment.rb +36 -23
  169. data/lib/vrpayment-ruby-sdk/models/express_checkout_create_response.rb +227 -0
  170. data/lib/vrpayment-ruby-sdk/models/express_checkout_session.rb +302 -0
  171. data/lib/vrpayment-ruby-sdk/models/express_checkout_session_create.rb +231 -0
  172. data/lib/vrpayment-ruby-sdk/models/express_checkout_session_state.rb +51 -0
  173. data/lib/vrpayment-ruby-sdk/models/express_checkout_shipping_option.rb +279 -0
  174. data/lib/vrpayment-ruby-sdk/models/express_checkout_wallet_type.rb +243 -0
  175. data/lib/vrpayment-ruby-sdk/models/external_transfer_bank_transaction.rb +112 -85
  176. data/lib/vrpayment-ruby-sdk/models/external_transfer_bank_transaction_list_response.rb +241 -0
  177. data/lib/vrpayment-ruby-sdk/models/external_transfer_bank_transaction_search_response.rb +251 -0
  178. data/lib/vrpayment-ruby-sdk/models/failure_category.rb +39 -26
  179. data/lib/vrpayment-ruby-sdk/models/failure_reason.rb +113 -64
  180. data/lib/vrpayment-ruby-sdk/models/feature.rb +132 -105
  181. data/lib/vrpayment-ruby-sdk/models/feature_category.rb +100 -72
  182. data/lib/vrpayment-ruby-sdk/models/gender.rb +36 -23
  183. data/lib/vrpayment-ruby-sdk/models/human_user.rb +171 -128
  184. data/lib/vrpayment-ruby-sdk/models/human_user_create.rb +178 -106
  185. data/lib/vrpayment-ruby-sdk/models/human_user_list_response.rb +241 -0
  186. data/lib/vrpayment-ruby-sdk/models/human_user_search_response.rb +251 -0
  187. data/lib/vrpayment-ruby-sdk/models/human_user_update.rb +179 -120
  188. data/lib/vrpayment-ruby-sdk/models/internal_transfer_bank_transaction.rb +93 -67
  189. data/lib/vrpayment-ruby-sdk/models/internal_transfer_bank_transaction_list_response.rb +241 -0
  190. data/lib/vrpayment-ruby-sdk/models/internal_transfer_bank_transaction_search_response.rb +251 -0
  191. data/lib/vrpayment-ruby-sdk/models/invoice_comment_list_response.rb +241 -0
  192. data/lib/vrpayment-ruby-sdk/models/invoice_comment_search_response.rb +251 -0
  193. data/lib/vrpayment-ruby-sdk/models/invoice_list_response.rb +241 -0
  194. data/lib/vrpayment-ruby-sdk/models/invoice_search_response.rb +251 -0
  195. data/lib/vrpayment-ruby-sdk/models/label.rb +90 -62
  196. data/lib/vrpayment-ruby-sdk/models/label_descriptor.rb +148 -90
  197. data/lib/vrpayment-ruby-sdk/models/label_descriptor_category.rb +36 -23
  198. data/lib/vrpayment-ruby-sdk/models/label_descriptor_group.rb +100 -72
  199. data/lib/vrpayment-ruby-sdk/models/label_descriptor_group_list_response.rb +241 -0
  200. data/lib/vrpayment-ruby-sdk/models/label_descriptor_group_search_response.rb +251 -0
  201. data/lib/vrpayment-ruby-sdk/models/label_descriptor_list_response.rb +241 -0
  202. data/lib/vrpayment-ruby-sdk/models/label_descriptor_search_response.rb +251 -0
  203. data/lib/vrpayment-ruby-sdk/models/label_descriptor_type.rb +91 -63
  204. data/lib/vrpayment-ruby-sdk/models/language_list_response.rb +241 -0
  205. data/lib/vrpayment-ruby-sdk/models/language_search_response.rb +251 -0
  206. data/lib/vrpayment-ruby-sdk/models/legal_organization_form.rb +120 -72
  207. data/lib/vrpayment-ruby-sdk/models/legal_organization_form_list_response.rb +241 -0
  208. data/lib/vrpayment-ruby-sdk/models/legal_organization_form_search_response.rb +251 -0
  209. data/lib/vrpayment-ruby-sdk/models/line_item.rb +252 -181
  210. data/lib/vrpayment-ruby-sdk/models/line_item_attribute.rb +85 -49
  211. data/lib/vrpayment-ruby-sdk/models/line_item_attribute_create.rb +79 -47
  212. data/lib/vrpayment-ruby-sdk/models/line_item_create.rb +180 -107
  213. data/lib/vrpayment-ruby-sdk/models/line_item_reduction.rb +94 -62
  214. data/lib/vrpayment-ruby-sdk/models/line_item_reduction_create.rb +105 -71
  215. data/lib/vrpayment-ruby-sdk/models/line_item_type.rb +39 -26
  216. data/lib/vrpayment-ruby-sdk/models/line_item_version_list_response.rb +241 -0
  217. data/lib/vrpayment-ruby-sdk/models/line_item_version_search_response.rb +251 -0
  218. data/lib/vrpayment-ruby-sdk/models/localized_string.rb +87 -59
  219. data/lib/vrpayment-ruby-sdk/models/manual_task.rb +141 -91
  220. data/lib/vrpayment-ruby-sdk/models/manual_task_action.rb +118 -69
  221. data/lib/vrpayment-ruby-sdk/models/manual_task_action_style.rb +37 -24
  222. data/lib/vrpayment-ruby-sdk/models/manual_task_list_response.rb +241 -0
  223. data/lib/vrpayment-ruby-sdk/models/manual_task_search_response.rb +251 -0
  224. data/lib/vrpayment-ruby-sdk/models/manual_task_state.rb +37 -24
  225. data/lib/vrpayment-ruby-sdk/models/manual_task_type.rb +110 -71
  226. data/lib/vrpayment-ruby-sdk/models/metric_list_response.rb +241 -0
  227. data/lib/vrpayment-ruby-sdk/models/metric_search_response.rb +251 -0
  228. data/lib/vrpayment-ruby-sdk/models/metric_usage.rb +93 -64
  229. data/lib/vrpayment-ruby-sdk/models/metric_usage_list_response.rb +241 -0
  230. data/lib/vrpayment-ruby-sdk/models/metric_usage_report_list_response.rb +241 -0
  231. data/lib/vrpayment-ruby-sdk/models/metric_usage_report_search_response.rb +251 -0
  232. data/lib/vrpayment-ruby-sdk/models/one_click_payment_mode.rb +37 -24
  233. data/lib/vrpayment-ruby-sdk/models/pan_type.rb +42 -28
  234. data/lib/vrpayment-ruby-sdk/models/payment_adjustment.rb +116 -70
  235. data/lib/vrpayment-ruby-sdk/models/payment_adjustment_type.rb +91 -63
  236. data/lib/vrpayment-ruby-sdk/models/payment_app_charge_attempt_target_state.rb +36 -23
  237. data/lib/vrpayment-ruby-sdk/models/payment_app_charge_attempt_update.rb +321 -0
  238. data/lib/vrpayment-ruby-sdk/models/payment_app_completion_configuration.rb +96 -68
  239. data/lib/vrpayment-ruby-sdk/models/payment_app_completion_configuration_create.rb +96 -68
  240. data/lib/vrpayment-ruby-sdk/models/payment_app_completion_target_state.rb +36 -23
  241. data/lib/vrpayment-ruby-sdk/models/payment_app_completion_update.rb +292 -0
  242. data/lib/vrpayment-ruby-sdk/models/payment_app_connector.rb +179 -126
  243. data/lib/vrpayment-ruby-sdk/models/payment_app_connector_details.rb +209 -0
  244. data/lib/vrpayment-ruby-sdk/models/payment_app_connector_details_create.rb +259 -0
  245. data/lib/vrpayment-ruby-sdk/models/payment_app_connector_state.rb +36 -23
  246. data/lib/vrpayment-ruby-sdk/models/payment_app_processor.rb +210 -151
  247. data/lib/vrpayment-ruby-sdk/models/payment_app_processor_details.rb +209 -0
  248. data/lib/vrpayment-ruby-sdk/models/payment_app_processor_details_create.rb +259 -0
  249. data/lib/vrpayment-ruby-sdk/models/payment_app_processor_state.rb +36 -23
  250. data/lib/vrpayment-ruby-sdk/models/payment_app_refund_configuration.rb +90 -62
  251. data/lib/vrpayment-ruby-sdk/models/payment_app_refund_configuration_create.rb +90 -62
  252. data/lib/vrpayment-ruby-sdk/models/payment_app_refund_target_state.rb +36 -23
  253. data/lib/vrpayment-ruby-sdk/models/payment_app_refund_update.rb +292 -0
  254. data/lib/vrpayment-ruby-sdk/models/payment_app_void_target_state.rb +36 -23
  255. data/lib/vrpayment-ruby-sdk/models/payment_app_void_update.rb +292 -0
  256. data/lib/vrpayment-ruby-sdk/models/payment_connector.rb +200 -125
  257. data/lib/vrpayment-ruby-sdk/models/payment_connector_configuration.rb +208 -138
  258. data/lib/vrpayment-ruby-sdk/models/payment_connector_configuration_create.rb +400 -0
  259. data/lib/vrpayment-ruby-sdk/models/payment_connector_configuration_list_response.rb +241 -0
  260. data/lib/vrpayment-ruby-sdk/models/payment_connector_configuration_search_response.rb +251 -0
  261. data/lib/vrpayment-ruby-sdk/models/payment_connector_configuration_update.rb +328 -0
  262. data/lib/vrpayment-ruby-sdk/models/payment_connector_feature.rb +76 -48
  263. data/lib/vrpayment-ruby-sdk/models/payment_connector_list_response.rb +241 -0
  264. data/lib/vrpayment-ruby-sdk/models/payment_connector_search_response.rb +251 -0
  265. data/lib/vrpayment-ruby-sdk/models/payment_contract.rb +179 -142
  266. data/lib/vrpayment-ruby-sdk/models/payment_contract_state.rb +39 -26
  267. data/lib/vrpayment-ruby-sdk/models/payment_contract_type.rb +91 -63
  268. data/lib/vrpayment-ruby-sdk/models/payment_information_hash.rb +76 -48
  269. data/lib/vrpayment-ruby-sdk/models/payment_information_hash_type.rb +88 -60
  270. data/lib/vrpayment-ruby-sdk/models/payment_link.rb +249 -158
  271. data/lib/vrpayment-ruby-sdk/models/payment_link_active.rb +213 -127
  272. data/lib/vrpayment-ruby-sdk/models/payment_link_address_handling_mode.rb +37 -24
  273. data/lib/vrpayment-ruby-sdk/models/payment_link_create.rb +232 -130
  274. data/lib/vrpayment-ruby-sdk/models/payment_link_list_response.rb +241 -0
  275. data/lib/vrpayment-ruby-sdk/models/payment_link_protection_mode.rb +36 -23
  276. data/lib/vrpayment-ruby-sdk/models/payment_link_search_response.rb +251 -0
  277. data/lib/vrpayment-ruby-sdk/models/payment_link_update.rb +206 -126
  278. data/lib/vrpayment-ruby-sdk/models/payment_method.rb +137 -89
  279. data/lib/vrpayment-ruby-sdk/models/payment_method_brand.rb +105 -77
  280. data/lib/vrpayment-ruby-sdk/models/payment_method_brand_list_response.rb +241 -0
  281. data/lib/vrpayment-ruby-sdk/models/payment_method_brand_search_response.rb +251 -0
  282. data/lib/vrpayment-ruby-sdk/models/payment_method_configuration.rb +214 -145
  283. data/lib/vrpayment-ruby-sdk/models/payment_method_configuration_active.rb +346 -0
  284. data/lib/vrpayment-ruby-sdk/models/payment_method_configuration_create.rb +369 -0
  285. data/lib/vrpayment-ruby-sdk/models/payment_method_configuration_list_response.rb +241 -0
  286. data/lib/vrpayment-ruby-sdk/models/payment_method_configuration_search_response.rb +251 -0
  287. data/lib/vrpayment-ruby-sdk/models/payment_method_configuration_update.rb +330 -0
  288. data/lib/vrpayment-ruby-sdk/models/payment_method_list_response.rb +241 -0
  289. data/lib/vrpayment-ruby-sdk/models/payment_method_search_response.rb +251 -0
  290. data/lib/vrpayment-ruby-sdk/models/payment_primary_risk_taker.rb +37 -24
  291. data/lib/vrpayment-ruby-sdk/models/payment_processor.rb +105 -76
  292. data/lib/vrpayment-ruby-sdk/models/payment_processor_configuration.rb +136 -84
  293. data/lib/vrpayment-ruby-sdk/models/payment_processor_configuration_active.rb +293 -0
  294. data/lib/vrpayment-ruby-sdk/models/payment_processor_configuration_create.rb +293 -0
  295. data/lib/vrpayment-ruby-sdk/models/payment_processor_configuration_list_response.rb +241 -0
  296. data/lib/vrpayment-ruby-sdk/models/payment_processor_configuration_search_response.rb +251 -0
  297. data/lib/vrpayment-ruby-sdk/models/payment_processor_list_response.rb +241 -0
  298. data/lib/vrpayment-ruby-sdk/models/payment_processor_search_response.rb +251 -0
  299. data/lib/vrpayment-ruby-sdk/models/payment_terminal.rb +173 -123
  300. data/lib/vrpayment-ruby-sdk/models/payment_terminal_address.rb +196 -148
  301. data/lib/vrpayment-ruby-sdk/models/payment_terminal_configuration.rb +119 -67
  302. data/lib/vrpayment-ruby-sdk/models/payment_terminal_configuration_state.rb +38 -25
  303. data/lib/vrpayment-ruby-sdk/models/payment_terminal_configuration_version.rb +173 -125
  304. data/lib/vrpayment-ruby-sdk/models/payment_terminal_configuration_version_state.rb +39 -26
  305. data/lib/vrpayment-ruby-sdk/models/payment_terminal_create.rb +309 -0
  306. data/lib/vrpayment-ruby-sdk/models/payment_terminal_location.rb +126 -73
  307. data/lib/vrpayment-ruby-sdk/models/payment_terminal_location_state.rb +38 -25
  308. data/lib/vrpayment-ruby-sdk/models/payment_terminal_location_version.rb +151 -105
  309. data/lib/vrpayment-ruby-sdk/models/payment_terminal_location_version_state.rb +39 -26
  310. data/lib/vrpayment-ruby-sdk/models/payment_terminal_preparing.rb +272 -0
  311. data/lib/vrpayment-ruby-sdk/models/payment_terminal_receipt_type.rb +91 -63
  312. data/lib/vrpayment-ruby-sdk/models/payment_terminal_state.rb +40 -27
  313. data/lib/vrpayment-ruby-sdk/models/payment_terminal_transaction_summary_reference.rb +88 -60
  314. data/lib/vrpayment-ruby-sdk/models/payment_terminal_type.rb +91 -63
  315. data/lib/vrpayment-ruby-sdk/models/payment_terminal_update.rb +255 -0
  316. data/lib/vrpayment-ruby-sdk/models/permission.rb +135 -109
  317. data/lib/vrpayment-ruby-sdk/models/permission_list_response.rb +241 -0
  318. data/lib/vrpayment-ruby-sdk/models/permission_search_response.rb +251 -0
  319. data/lib/vrpayment-ruby-sdk/models/persistable_currency_amount.rb +75 -49
  320. data/lib/vrpayment-ruby-sdk/models/persistable_currency_amount_update.rb +75 -49
  321. data/lib/vrpayment-ruby-sdk/models/product_component_group_list_response.rb +241 -0
  322. data/lib/vrpayment-ruby-sdk/models/product_component_group_search_response.rb +251 -0
  323. data/lib/vrpayment-ruby-sdk/models/product_component_list_response.rb +241 -0
  324. data/lib/vrpayment-ruby-sdk/models/product_component_search_response.rb +251 -0
  325. data/lib/vrpayment-ruby-sdk/models/product_fee_type.rb +37 -24
  326. data/lib/vrpayment-ruby-sdk/models/product_list_response.rb +241 -0
  327. data/lib/vrpayment-ruby-sdk/models/product_metered_fee.rb +134 -88
  328. data/lib/vrpayment-ruby-sdk/models/product_metered_fee_list_response.rb +241 -0
  329. data/lib/vrpayment-ruby-sdk/models/product_metered_fee_search_response.rb +251 -0
  330. data/lib/vrpayment-ruby-sdk/models/product_metered_fee_tier_list_response.rb +241 -0
  331. data/lib/vrpayment-ruby-sdk/models/product_metered_fee_tier_search_response.rb +251 -0
  332. data/lib/vrpayment-ruby-sdk/models/product_metered_fee_update.rb +125 -89
  333. data/lib/vrpayment-ruby-sdk/models/product_metered_tier_fee.rb +106 -69
  334. data/lib/vrpayment-ruby-sdk/models/product_metered_tier_fee_update.rb +108 -83
  335. data/lib/vrpayment-ruby-sdk/models/product_metered_tier_pricing.rb +36 -23
  336. data/lib/vrpayment-ruby-sdk/models/product_period_fee.rb +162 -104
  337. data/lib/vrpayment-ruby-sdk/models/product_period_fee_list_response.rb +241 -0
  338. data/lib/vrpayment-ruby-sdk/models/product_period_fee_search_response.rb +251 -0
  339. data/lib/vrpayment-ruby-sdk/models/product_period_fee_update.rb +130 -105
  340. data/lib/vrpayment-ruby-sdk/models/product_retirement_list_response.rb +241 -0
  341. data/lib/vrpayment-ruby-sdk/models/product_retirement_search_response.rb +251 -0
  342. data/lib/vrpayment-ruby-sdk/models/product_search_response.rb +251 -0
  343. data/lib/vrpayment-ruby-sdk/models/product_setup_fee.rb +204 -99
  344. data/lib/vrpayment-ruby-sdk/models/product_setup_fee_list_response.rb +241 -0
  345. data/lib/vrpayment-ruby-sdk/models/product_setup_fee_search_response.rb +251 -0
  346. data/lib/vrpayment-ruby-sdk/models/product_setup_fee_update.rb +143 -98
  347. data/lib/vrpayment-ruby-sdk/models/product_version_list_response.rb +241 -0
  348. data/lib/vrpayment-ruby-sdk/models/product_version_retirement_list_response.rb +241 -0
  349. data/lib/vrpayment-ruby-sdk/models/product_version_retirement_search_response.rb +251 -0
  350. data/lib/vrpayment-ruby-sdk/models/product_version_search_response.rb +251 -0
  351. data/lib/vrpayment-ruby-sdk/models/recurring_indicator.rb +38 -25
  352. data/lib/vrpayment-ruby-sdk/models/refund.rb +358 -256
  353. data/lib/vrpayment-ruby-sdk/models/refund_bank_transaction.rb +129 -103
  354. data/lib/vrpayment-ruby-sdk/models/refund_bank_transaction_list_response.rb +241 -0
  355. data/lib/vrpayment-ruby-sdk/models/refund_bank_transaction_search_response.rb +251 -0
  356. data/lib/vrpayment-ruby-sdk/models/refund_comment.rb +138 -107
  357. data/lib/vrpayment-ruby-sdk/models/refund_comment_active.rb +90 -64
  358. data/lib/vrpayment-ruby-sdk/models/refund_comment_create.rb +89 -48
  359. data/lib/vrpayment-ruby-sdk/models/refund_comment_list_response.rb +241 -0
  360. data/lib/vrpayment-ruby-sdk/models/refund_comment_search_response.rb +251 -0
  361. data/lib/vrpayment-ruby-sdk/models/refund_create.rb +167 -85
  362. data/lib/vrpayment-ruby-sdk/models/refund_list_response.rb +241 -0
  363. data/lib/vrpayment-ruby-sdk/models/refund_recovery_bank_transaction.rb +133 -107
  364. data/lib/vrpayment-ruby-sdk/models/refund_recovery_bank_transaction_list_response.rb +241 -0
  365. data/lib/vrpayment-ruby-sdk/models/refund_recovery_bank_transaction_search_response.rb +251 -0
  366. data/lib/vrpayment-ruby-sdk/models/refund_search_response.rb +251 -0
  367. data/lib/vrpayment-ruby-sdk/models/refund_state.rb +40 -27
  368. data/lib/vrpayment-ruby-sdk/models/refund_type.rb +38 -25
  369. data/lib/vrpayment-ruby-sdk/models/rendered_document.rb +87 -73
  370. data/lib/vrpayment-ruby-sdk/models/rendered_terminal_receipt.rb +97 -84
  371. data/lib/vrpayment-ruby-sdk/models/rendered_terminal_receipt_list_response.rb +241 -0
  372. data/lib/vrpayment-ruby-sdk/models/rest_address_format.rb +113 -65
  373. data/lib/vrpayment-ruby-sdk/models/rest_address_format_field.rb +44 -31
  374. data/lib/vrpayment-ruby-sdk/models/rest_api_bulk_operation_result.rb +249 -0
  375. data/lib/vrpayment-ruby-sdk/models/rest_api_error_response.rb +261 -0
  376. data/lib/vrpayment-ruby-sdk/models/rest_application_user_mac_key.rb +260 -0
  377. data/lib/vrpayment-ruby-sdk/models/rest_application_user_mac_key_created.rb +277 -0
  378. data/lib/vrpayment-ruby-sdk/models/rest_country.rb +112 -75
  379. data/lib/vrpayment-ruby-sdk/models/rest_country_state.rb +90 -62
  380. data/lib/vrpayment-ruby-sdk/models/rest_currency.rb +92 -64
  381. data/lib/vrpayment-ruby-sdk/models/rest_customer_email_address.rb +229 -0
  382. data/lib/vrpayment-ruby-sdk/models/rest_language.rb +109 -81
  383. data/lib/vrpayment-ruby-sdk/models/role.rb +149 -91
  384. data/lib/vrpayment-ruby-sdk/models/role_create.rb +277 -0
  385. data/lib/vrpayment-ruby-sdk/models/role_list_response.rb +241 -0
  386. data/lib/vrpayment-ruby-sdk/models/role_search_response.rb +251 -0
  387. data/lib/vrpayment-ruby-sdk/models/role_state.rb +38 -25
  388. data/lib/vrpayment-ruby-sdk/models/role_update.rb +277 -0
  389. data/lib/vrpayment-ruby-sdk/models/sales_channel.rb +99 -71
  390. data/lib/vrpayment-ruby-sdk/models/sales_channel_list_response.rb +241 -0
  391. data/lib/vrpayment-ruby-sdk/models/sales_channel_search_response.rb +251 -0
  392. data/lib/vrpayment-ruby-sdk/models/scope.rb +296 -136
  393. data/lib/vrpayment-ruby-sdk/models/scope_single_sign_on_provider.rb +318 -0
  394. data/lib/vrpayment-ruby-sdk/models/single_sign_on_user.rb +317 -0
  395. data/lib/vrpayment-ruby-sdk/models/single_sign_on_user_create.rb +352 -0
  396. data/lib/vrpayment-ruby-sdk/models/single_sign_on_user_list_response.rb +241 -0
  397. data/lib/vrpayment-ruby-sdk/models/single_sign_on_user_search_response.rb +251 -0
  398. data/lib/vrpayment-ruby-sdk/models/single_sign_on_user_update.rb +342 -0
  399. data/lib/vrpayment-ruby-sdk/models/sorting_order.rb +48 -0
  400. data/lib/vrpayment-ruby-sdk/models/space.rb +221 -171
  401. data/lib/vrpayment-ruby-sdk/models/space_address.rb +244 -180
  402. data/lib/vrpayment-ruby-sdk/models/space_address_create.rb +244 -180
  403. data/lib/vrpayment-ruby-sdk/models/space_create.rb +170 -109
  404. data/lib/vrpayment-ruby-sdk/models/space_list_response.rb +241 -0
  405. data/lib/vrpayment-ruby-sdk/models/space_search_response.rb +251 -0
  406. data/lib/vrpayment-ruby-sdk/models/space_update.rb +159 -113
  407. data/lib/vrpayment-ruby-sdk/models/space_view.rb +131 -79
  408. data/lib/vrpayment-ruby-sdk/models/static_value.rb +100 -72
  409. data/lib/vrpayment-ruby-sdk/models/static_value_list_response.rb +241 -0
  410. data/lib/vrpayment-ruby-sdk/models/static_value_search_response.rb +251 -0
  411. data/lib/vrpayment-ruby-sdk/models/subscriber.rb +216 -144
  412. data/lib/vrpayment-ruby-sdk/models/subscriber_active.rb +206 -140
  413. data/lib/vrpayment-ruby-sdk/models/subscriber_create.rb +208 -127
  414. data/lib/vrpayment-ruby-sdk/models/subscriber_list_response.rb +241 -0
  415. data/lib/vrpayment-ruby-sdk/models/subscriber_search_response.rb +251 -0
  416. data/lib/vrpayment-ruby-sdk/models/subscriber_update.rb +176 -138
  417. data/lib/vrpayment-ruby-sdk/models/subscription.rb +232 -167
  418. data/lib/vrpayment-ruby-sdk/models/subscription_affiliate.rb +171 -114
  419. data/lib/vrpayment-ruby-sdk/models/subscription_affiliate_create.rb +148 -84
  420. data/lib/vrpayment-ruby-sdk/models/subscription_affiliate_deleted.rb +178 -114
  421. data/lib/vrpayment-ruby-sdk/models/subscription_affiliate_deleting.rb +178 -114
  422. data/lib/vrpayment-ruby-sdk/models/subscription_affiliate_inactive.rb +144 -97
  423. data/lib/vrpayment-ruby-sdk/models/subscription_affiliate_list_response.rb +241 -0
  424. data/lib/vrpayment-ruby-sdk/models/subscription_affiliate_search_response.rb +251 -0
  425. data/lib/vrpayment-ruby-sdk/models/subscription_affiliate_update.rb +137 -97
  426. data/lib/vrpayment-ruby-sdk/models/subscription_charge.rb +274 -194
  427. data/lib/vrpayment-ruby-sdk/models/subscription_charge_create.rb +197 -117
  428. data/lib/vrpayment-ruby-sdk/models/subscription_charge_list_response.rb +241 -0
  429. data/lib/vrpayment-ruby-sdk/models/subscription_charge_processing_type.rb +36 -23
  430. data/lib/vrpayment-ruby-sdk/models/subscription_charge_search_response.rb +251 -0
  431. data/lib/vrpayment-ruby-sdk/models/subscription_charge_state.rb +39 -26
  432. data/lib/vrpayment-ruby-sdk/models/subscription_charge_type.rb +36 -23
  433. data/lib/vrpayment-ruby-sdk/models/subscription_component_configuration.rb +95 -67
  434. data/lib/vrpayment-ruby-sdk/models/subscription_component_reference_configuration.rb +87 -58
  435. data/lib/vrpayment-ruby-sdk/models/subscription_create_request.rb +97 -87
  436. data/lib/vrpayment-ruby-sdk/models/subscription_initialize_subscriber_present_request.rb +229 -0
  437. data/lib/vrpayment-ruby-sdk/models/subscription_ledger_entry.rb +262 -187
  438. data/lib/vrpayment-ruby-sdk/models/subscription_ledger_entry_create.rb +149 -102
  439. data/lib/vrpayment-ruby-sdk/models/subscription_ledger_entry_list_response.rb +241 -0
  440. data/lib/vrpayment-ruby-sdk/models/subscription_ledger_entry_search_response.rb +251 -0
  441. data/lib/vrpayment-ruby-sdk/models/subscription_ledger_entry_state.rb +37 -24
  442. data/lib/vrpayment-ruby-sdk/models/subscription_list_response.rb +241 -0
  443. data/lib/vrpayment-ruby-sdk/models/subscription_metric.rb +125 -76
  444. data/lib/vrpayment-ruby-sdk/models/subscription_metric_active.rb +100 -77
  445. data/lib/vrpayment-ruby-sdk/models/subscription_metric_create.rb +98 -58
  446. data/lib/vrpayment-ruby-sdk/models/subscription_metric_type.rb +99 -71
  447. data/lib/vrpayment-ruby-sdk/models/subscription_metric_update.rb +93 -77
  448. data/lib/vrpayment-ruby-sdk/models/subscription_metric_usage_report.rb +123 -90
  449. data/lib/vrpayment-ruby-sdk/models/subscription_metric_usage_report_create.rb +107 -66
  450. data/lib/vrpayment-ruby-sdk/models/subscription_pending.rb +131 -89
  451. data/lib/vrpayment-ruby-sdk/models/subscription_period_bill.rb +152 -104
  452. data/lib/vrpayment-ruby-sdk/models/subscription_period_bill_list_response.rb +241 -0
  453. data/lib/vrpayment-ruby-sdk/models/subscription_period_bill_search_response.rb +251 -0
  454. data/lib/vrpayment-ruby-sdk/models/subscription_period_bill_state.rb +36 -23
  455. data/lib/vrpayment-ruby-sdk/models/subscription_product.rb +195 -125
  456. data/lib/vrpayment-ruby-sdk/models/subscription_product_active.rb +140 -92
  457. data/lib/vrpayment-ruby-sdk/models/subscription_product_component.rb +152 -127
  458. data/lib/vrpayment-ruby-sdk/models/subscription_product_component_group.rb +103 -76
  459. data/lib/vrpayment-ruby-sdk/models/subscription_product_component_group_update.rb +100 -85
  460. data/lib/vrpayment-ruby-sdk/models/subscription_product_component_reference.rb +143 -73
  461. data/lib/vrpayment-ruby-sdk/models/subscription_product_component_reference_state.rb +38 -25
  462. data/lib/vrpayment-ruby-sdk/models/subscription_product_component_update.rb +150 -135
  463. data/lib/vrpayment-ruby-sdk/models/subscription_product_create.rb +155 -80
  464. data/lib/vrpayment-ruby-sdk/models/subscription_product_retirement.rb +112 -86
  465. data/lib/vrpayment-ruby-sdk/models/subscription_product_retirement_request.rb +229 -0
  466. data/lib/vrpayment-ruby-sdk/models/subscription_product_state.rb +39 -26
  467. data/lib/vrpayment-ruby-sdk/models/subscription_product_version.rb +239 -179
  468. data/lib/vrpayment-ruby-sdk/models/subscription_product_version_pending.rb +164 -119
  469. data/lib/vrpayment-ruby-sdk/models/subscription_product_version_retirement.rb +112 -86
  470. data/lib/vrpayment-ruby-sdk/models/subscription_product_version_retirement_request.rb +229 -0
  471. data/lib/vrpayment-ruby-sdk/models/subscription_product_version_state.rb +39 -26
  472. data/lib/vrpayment-ruby-sdk/models/subscription_search_response.rb +251 -0
  473. data/lib/vrpayment-ruby-sdk/models/subscription_state.rb +42 -29
  474. data/lib/vrpayment-ruby-sdk/models/subscription_suspension.rb +177 -127
  475. data/lib/vrpayment-ruby-sdk/models/subscription_suspension_action.rb +36 -23
  476. data/lib/vrpayment-ruby-sdk/models/subscription_suspension_reason.rb +37 -24
  477. data/lib/vrpayment-ruby-sdk/models/subscription_suspension_state.rb +36 -23
  478. data/lib/vrpayment-ruby-sdk/models/subscription_update.rb +106 -87
  479. data/lib/vrpayment-ruby-sdk/models/subscription_update_request.rb +79 -47
  480. data/lib/vrpayment-ruby-sdk/models/subscription_version.rb +219 -163
  481. data/lib/vrpayment-ruby-sdk/models/subscription_version_list_response.rb +241 -0
  482. data/lib/vrpayment-ruby-sdk/models/subscription_version_search_response.rb +251 -0
  483. data/lib/vrpayment-ruby-sdk/models/subscription_version_state.rb +40 -27
  484. data/lib/vrpayment-ruby-sdk/models/suspension_creation_request.rb +279 -0
  485. data/lib/vrpayment-ruby-sdk/models/suspension_list_response.rb +241 -0
  486. data/lib/vrpayment-ruby-sdk/models/suspension_search_response.rb +251 -0
  487. data/lib/vrpayment-ruby-sdk/models/tax.rb +102 -51
  488. data/lib/vrpayment-ruby-sdk/models/tax_calculation.rb +36 -23
  489. data/lib/vrpayment-ruby-sdk/models/tax_class.rb +118 -65
  490. data/lib/vrpayment-ruby-sdk/models/tax_create.rb +100 -49
  491. data/lib/vrpayment-ruby-sdk/models/tenant_database.rb +90 -58
  492. data/lib/vrpayment-ruby-sdk/models/terminal_list_response.rb +241 -0
  493. data/lib/vrpayment-ruby-sdk/models/terminal_receipt_format.rb +36 -23
  494. data/lib/vrpayment-ruby-sdk/models/terminal_search_response.rb +251 -0
  495. data/lib/vrpayment-ruby-sdk/models/token.rb +186 -117
  496. data/lib/vrpayment-ruby-sdk/models/token_create.rb +159 -81
  497. data/lib/vrpayment-ruby-sdk/models/token_list_response.rb +241 -0
  498. data/lib/vrpayment-ruby-sdk/models/token_search_response.rb +251 -0
  499. data/lib/vrpayment-ruby-sdk/models/token_update.rb +133 -91
  500. data/lib/vrpayment-ruby-sdk/models/token_version.rb +285 -187
  501. data/lib/vrpayment-ruby-sdk/models/token_version_list_response.rb +241 -0
  502. data/lib/vrpayment-ruby-sdk/models/token_version_retry_strategy.rb +49 -0
  503. data/lib/vrpayment-ruby-sdk/models/token_version_search_response.rb +251 -0
  504. data/lib/vrpayment-ruby-sdk/models/token_version_state.rb +37 -24
  505. data/lib/vrpayment-ruby-sdk/models/token_version_type.rb +99 -72
  506. data/lib/vrpayment-ruby-sdk/models/tokenization_mode.rb +38 -25
  507. data/lib/vrpayment-ruby-sdk/models/tokenized_card_data.rb +113 -65
  508. data/lib/vrpayment-ruby-sdk/models/tokenized_card_data_create.rb +201 -94
  509. data/lib/vrpayment-ruby-sdk/models/tokenized_card_request.rb +228 -0
  510. data/lib/vrpayment-ruby-sdk/models/transaction.rb +659 -561
  511. data/lib/vrpayment-ruby-sdk/models/transaction_client_platform_information.rb +289 -0
  512. data/lib/vrpayment-ruby-sdk/models/transaction_comment.rb +138 -107
  513. data/lib/vrpayment-ruby-sdk/models/transaction_comment_active.rb +90 -64
  514. data/lib/vrpayment-ruby-sdk/models/transaction_comment_create.rb +89 -48
  515. data/lib/vrpayment-ruby-sdk/models/transaction_comment_list_response.rb +241 -0
  516. data/lib/vrpayment-ruby-sdk/models/transaction_comment_search_response.rb +251 -0
  517. data/lib/vrpayment-ruby-sdk/models/transaction_completion.rb +360 -256
  518. data/lib/vrpayment-ruby-sdk/models/transaction_completion_behavior.rb +37 -24
  519. data/lib/vrpayment-ruby-sdk/models/transaction_completion_details.rb +363 -0
  520. data/lib/vrpayment-ruby-sdk/models/transaction_completion_mode.rb +37 -24
  521. data/lib/vrpayment-ruby-sdk/models/transaction_completion_state.rb +39 -26
  522. data/lib/vrpayment-ruby-sdk/models/transaction_create.rb +366 -250
  523. data/lib/vrpayment-ruby-sdk/models/transaction_environment_selection_strategy.rb +37 -24
  524. data/lib/vrpayment-ruby-sdk/models/transaction_group.rb +144 -79
  525. data/lib/vrpayment-ruby-sdk/models/transaction_group_state.rb +37 -24
  526. data/lib/vrpayment-ruby-sdk/models/transaction_invoice.rb +256 -178
  527. data/lib/vrpayment-ruby-sdk/models/transaction_invoice_comment.rb +134 -103
  528. data/lib/vrpayment-ruby-sdk/models/transaction_invoice_comment_active.rb +90 -64
  529. data/lib/vrpayment-ruby-sdk/models/transaction_invoice_comment_create.rb +90 -49
  530. data/lib/vrpayment-ruby-sdk/models/transaction_invoice_replacement.rb +145 -86
  531. data/lib/vrpayment-ruby-sdk/models/transaction_invoice_state.rb +41 -28
  532. data/lib/vrpayment-ruby-sdk/models/transaction_line_item_version.rb +219 -162
  533. data/lib/vrpayment-ruby-sdk/models/transaction_line_item_version_create.rb +98 -64
  534. data/lib/vrpayment-ruby-sdk/models/transaction_line_item_version_state.rb +39 -26
  535. data/lib/vrpayment-ruby-sdk/models/transaction_list_response.rb +241 -0
  536. data/lib/vrpayment-ruby-sdk/models/transaction_pending.rb +305 -217
  537. data/lib/vrpayment-ruby-sdk/models/transaction_search_response.rb +251 -0
  538. data/lib/vrpayment-ruby-sdk/models/transaction_state.rb +44 -31
  539. data/lib/vrpayment-ruby-sdk/models/transaction_user_interface_type.rb +40 -26
  540. data/lib/vrpayment-ruby-sdk/models/transaction_void.rb +207 -151
  541. data/lib/vrpayment-ruby-sdk/models/transaction_void_list_response.rb +241 -0
  542. data/lib/vrpayment-ruby-sdk/models/transaction_void_mode.rb +36 -23
  543. data/lib/vrpayment-ruby-sdk/models/transaction_void_search_response.rb +251 -0
  544. data/lib/vrpayment-ruby-sdk/models/transaction_void_state.rb +38 -25
  545. data/lib/vrpayment-ruby-sdk/models/two_factor_authentication_type.rb +101 -73
  546. data/lib/vrpayment-ruby-sdk/models/user.rb +116 -68
  547. data/lib/vrpayment-ruby-sdk/models/user_account_role.rb +104 -76
  548. data/lib/vrpayment-ruby-sdk/models/user_account_role_list_response.rb +241 -0
  549. data/lib/vrpayment-ruby-sdk/models/user_space_role.rb +97 -69
  550. data/lib/vrpayment-ruby-sdk/models/user_space_role_list_response.rb +241 -0
  551. data/lib/vrpayment-ruby-sdk/models/user_type.rb +39 -26
  552. data/lib/vrpayment-ruby-sdk/models/wallet_type.rb +116 -61
  553. data/lib/vrpayment-ruby-sdk/models/web_app_confirmation_response.rb +90 -62
  554. data/lib/vrpayment-ruby-sdk/models/webhook_identity.rb +118 -64
  555. data/lib/vrpayment-ruby-sdk/models/webhook_listener.rb +174 -113
  556. data/lib/vrpayment-ruby-sdk/models/webhook_listener_create.rb +144 -70
  557. data/lib/vrpayment-ruby-sdk/models/webhook_listener_entity.rb +87 -59
  558. data/lib/vrpayment-ruby-sdk/models/webhook_listener_list_response.rb +241 -0
  559. data/lib/vrpayment-ruby-sdk/models/webhook_listener_search_response.rb +251 -0
  560. data/lib/vrpayment-ruby-sdk/models/webhook_listener_update.rb +132 -75
  561. data/lib/vrpayment-ruby-sdk/models/webhook_url.rb +145 -88
  562. data/lib/vrpayment-ruby-sdk/models/webhook_url_create.rb +118 -54
  563. data/lib/vrpayment-ruby-sdk/models/webhook_url_list_response.rb +241 -0
  564. data/lib/vrpayment-ruby-sdk/models/webhook_url_search_response.rb +251 -0
  565. data/lib/vrpayment-ruby-sdk/models/webhook_url_update.rb +122 -71
  566. data/lib/vrpayment-ruby-sdk/service/accounts_service.rb +600 -0
  567. data/lib/vrpayment-ruby-sdk/service/application_users_roles_service.rb +476 -0
  568. data/lib/vrpayment-ruby-sdk/service/application_users_service.rb +668 -0
  569. data/lib/vrpayment-ruby-sdk/service/bank_accounts_service.rb +287 -0
  570. data/lib/vrpayment-ruby-sdk/service/bank_transactions_service.rb +287 -0
  571. data/lib/vrpayment-ruby-sdk/service/charge_attempts_service.rb +287 -0
  572. data/lib/vrpayment-ruby-sdk/service/charge_bank_transactions_service.rb +287 -0
  573. data/lib/vrpayment-ruby-sdk/service/charge_flow_levels_service.rb +356 -0
  574. data/lib/vrpayment-ruby-sdk/service/charge_flows_level_payment_links_service.rb +287 -0
  575. data/lib/vrpayment-ruby-sdk/service/charge_flows_service.rb +287 -0
  576. data/lib/vrpayment-ruby-sdk/service/condition_types_service.rb +266 -0
  577. data/lib/vrpayment-ruby-sdk/service/consumed_resources_service.rb +111 -0
  578. data/lib/vrpayment-ruby-sdk/service/countries_service.rb +418 -0
  579. data/lib/vrpayment-ruby-sdk/service/currencies_service.rb +235 -0
  580. data/lib/vrpayment-ruby-sdk/service/currency_bank_accounts_service.rb +287 -0
  581. data/lib/vrpayment-ruby-sdk/service/customer_addresses_service.rb +627 -0
  582. data/lib/vrpayment-ruby-sdk/service/customer_comments_service.rb +702 -0
  583. data/lib/vrpayment-ruby-sdk/service/customers_service.rb +890 -0
  584. data/lib/vrpayment-ruby-sdk/service/delivery_indications_service.rb +431 -0
  585. data/lib/vrpayment-ruby-sdk/service/document_template_types_service.rb +266 -0
  586. data/lib/vrpayment-ruby-sdk/service/document_templates_service.rb +287 -0
  587. data/lib/vrpayment-ruby-sdk/service/dunning_cases_service.rb +428 -0
  588. data/lib/vrpayment-ruby-sdk/service/dunning_flow_levels_service.rb +287 -0
  589. data/lib/vrpayment-ruby-sdk/service/dunning_flows_service.rb +287 -0
  590. data/lib/vrpayment-ruby-sdk/service/express_checkout_service.rb +105 -0
  591. data/lib/vrpayment-ruby-sdk/service/external_transfer_bank_transactions_service.rb +287 -0
  592. data/lib/vrpayment-ruby-sdk/service/human_users_roles_service.rb +476 -0
  593. data/lib/vrpayment-ruby-sdk/service/human_users_service.rb +557 -0
  594. data/lib/vrpayment-ruby-sdk/service/internal_transfer_bank_transactions_service.rb +287 -0
  595. data/lib/vrpayment-ruby-sdk/service/label_descriptors_service.rb +501 -0
  596. data/lib/vrpayment-ruby-sdk/service/languages_service.rb +235 -0
  597. data/lib/vrpayment-ruby-sdk/service/legal_organization_forms_service.rb +266 -0
  598. data/lib/vrpayment-ruby-sdk/service/manual_tasks_service.rb +431 -0
  599. data/lib/vrpayment-ruby-sdk/service/payment_connector_configurations_service.rb +518 -0
  600. data/lib/vrpayment-ruby-sdk/service/payment_connectors_service.rb +266 -0
  601. data/lib/vrpayment-ruby-sdk/service/payment_links_service.rb +518 -0
  602. data/lib/vrpayment-ruby-sdk/service/payment_method_brands_service.rb +266 -0
  603. data/lib/vrpayment-ruby-sdk/service/payment_method_configurations_service.rb +518 -0
  604. data/lib/vrpayment-ruby-sdk/service/payment_methods_service.rb +266 -0
  605. data/lib/vrpayment-ruby-sdk/service/payment_processor_configurations_service.rb +518 -0
  606. data/lib/vrpayment-ruby-sdk/service/payment_processors_service.rb +266 -0
  607. data/lib/vrpayment-ruby-sdk/service/payment_sales_channels_service.rb +266 -0
  608. data/lib/vrpayment-ruby-sdk/service/payment_terminals_service.rb +1048 -0
  609. data/lib/vrpayment-ruby-sdk/service/payment_web_apps_service.rb +911 -0
  610. data/lib/vrpayment-ruby-sdk/service/permissions_service.rb +266 -0
  611. data/lib/vrpayment-ruby-sdk/service/refund_bank_transactions_service.rb +287 -0
  612. data/lib/vrpayment-ruby-sdk/service/refund_comments_service.rb +702 -0
  613. data/lib/vrpayment-ruby-sdk/service/refund_recovery_bank_transactions_service.rb +287 -0
  614. data/lib/vrpayment-ruby-sdk/service/refunds_service.rb +577 -0
  615. data/lib/vrpayment-ruby-sdk/service/roles_service.rb +476 -0
  616. data/lib/vrpayment-ruby-sdk/service/single_sign_on_users_roles_service.rb +476 -0
  617. data/lib/vrpayment-ruby-sdk/service/single_sign_on_users_service.rb +476 -0
  618. data/lib/vrpayment-ruby-sdk/service/spaces_service.rb +476 -0
  619. data/lib/vrpayment-ruby-sdk/service/static_values_service.rb +266 -0
  620. data/lib/vrpayment-ruby-sdk/service/subscribers_service.rb +516 -0
  621. data/lib/vrpayment-ruby-sdk/service/subscription_affiliates_service.rb +516 -0
  622. data/lib/vrpayment-ruby-sdk/service/subscription_charges_service.rb +436 -0
  623. data/lib/vrpayment-ruby-sdk/service/subscription_ledger_entries_service.rb +364 -0
  624. data/lib/vrpayment-ruby-sdk/service/subscription_metric_usage_reports_service.rb +364 -0
  625. data/lib/vrpayment-ruby-sdk/service/subscription_metrics_service.rb +516 -0
  626. data/lib/vrpayment-ruby-sdk/service/subscription_period_bills_service.rb +373 -0
  627. data/lib/vrpayment-ruby-sdk/service/subscription_product_component_groups_service.rb +516 -0
  628. data/lib/vrpayment-ruby-sdk/service/subscription_product_components_service.rb +516 -0
  629. data/lib/vrpayment-ruby-sdk/service/subscription_product_metered_fee_tiers_service.rb +552 -0
  630. data/lib/vrpayment-ruby-sdk/service/subscription_product_metered_fees_service.rb +516 -0
  631. data/lib/vrpayment-ruby-sdk/service/subscription_product_period_fees_service.rb +516 -0
  632. data/lib/vrpayment-ruby-sdk/service/subscription_product_retirements_service.rb +287 -0
  633. data/lib/vrpayment-ruby-sdk/service/subscription_product_setup_fees_service.rb +516 -0
  634. data/lib/vrpayment-ruby-sdk/service/subscription_product_version_retirements_service.rb +287 -0
  635. data/lib/vrpayment-ruby-sdk/service/subscription_product_versions_service.rb +602 -0
  636. data/lib/vrpayment-ruby-sdk/service/subscription_products_service.rb +530 -0
  637. data/lib/vrpayment-ruby-sdk/service/subscription_suspensions_service.rb +287 -0
  638. data/lib/vrpayment-ruby-sdk/service/subscription_versions_service.rb +287 -0
  639. data/lib/vrpayment-ruby-sdk/service/subscriptions_service.rb +1088 -0
  640. data/lib/vrpayment-ruby-sdk/service/token_versions_service.rb +287 -0
  641. data/lib/vrpayment-ruby-sdk/service/tokens_service.rb +662 -0
  642. data/lib/vrpayment-ruby-sdk/service/transaction_client_platforms_service.rb +287 -0
  643. data/lib/vrpayment-ruby-sdk/service/transaction_comments_service.rb +702 -0
  644. data/lib/vrpayment-ruby-sdk/service/transaction_completions_service.rb +287 -0
  645. data/lib/vrpayment-ruby-sdk/service/transaction_invoice_comments_service.rb +702 -0
  646. data/lib/vrpayment-ruby-sdk/service/transaction_invoices_service.rb +652 -0
  647. data/lib/vrpayment-ruby-sdk/service/transaction_line_item_versions_service.rb +364 -0
  648. data/lib/vrpayment-ruby-sdk/service/transaction_voids_service.rb +287 -0
  649. data/lib/vrpayment-ruby-sdk/service/transactions_service.rb +2838 -0
  650. data/lib/vrpayment-ruby-sdk/service/web_apps_service.rb +228 -0
  651. data/lib/vrpayment-ruby-sdk/service/webhook_encryption_keys_service.rb +133 -0
  652. data/lib/vrpayment-ruby-sdk/service/webhook_listeners_service.rb +738 -0
  653. data/lib/vrpayment-ruby-sdk/service/webhook_urls_service.rb +738 -0
  654. data/lib/vrpayment-ruby-sdk/utils/encryption_util.rb +80 -0
  655. data/lib/vrpayment-ruby-sdk/version.rb +21 -18
  656. data/lib/vrpayment-ruby-sdk/vrpayment_sdk_exception.rb +59 -0
  657. data/lib/vrpayment-ruby-sdk.rb +372 -201
  658. data/test/constants.rb +49 -80
  659. data/test/encryption_util_test.rb +47 -27
  660. data/test/test_querying.rb +242 -0
  661. data/test/test_refunds_service.rb +119 -0
  662. data/test/test_transaction_completions_service.rb +72 -0
  663. data/test/test_transactions_service.rb +1163 -0
  664. data/test/test_webhook_listeners_service.rb +132 -0
  665. data/test/utils.rb +62 -0
  666. data/vrpayment-ruby-sdk.gemspec +38 -28
  667. metadata +394 -799
  668. data/lib/vrpayment-ruby-sdk/api/account_service_api.rb +0 -398
  669. data/lib/vrpayment-ruby-sdk/api/application_user_service_api.rb +0 -398
  670. data/lib/vrpayment-ruby-sdk/api/bank_account_service_api.rb +0 -228
  671. data/lib/vrpayment-ruby-sdk/api/bank_transaction_service_api.rb +0 -228
  672. data/lib/vrpayment-ruby-sdk/api/card_processing_service_api.rb +0 -182
  673. data/lib/vrpayment-ruby-sdk/api/charge_attempt_service_api.rb +0 -228
  674. data/lib/vrpayment-ruby-sdk/api/charge_bank_transaction_service_api.rb +0 -228
  675. data/lib/vrpayment-ruby-sdk/api/charge_flow_level_payment_link_service_api.rb +0 -228
  676. data/lib/vrpayment-ruby-sdk/api/charge_flow_level_service_api.rb +0 -296
  677. data/lib/vrpayment-ruby-sdk/api/charge_flow_service_api.rb +0 -509
  678. data/lib/vrpayment-ruby-sdk/api/condition_type_service_api.rb +0 -149
  679. data/lib/vrpayment-ruby-sdk/api/country_service_api.rb +0 -86
  680. data/lib/vrpayment-ruby-sdk/api/country_state_service_api.rb +0 -149
  681. data/lib/vrpayment-ruby-sdk/api/currency_bank_account_service_api.rb +0 -228
  682. data/lib/vrpayment-ruby-sdk/api/currency_service_api.rb +0 -86
  683. data/lib/vrpayment-ruby-sdk/api/customer_address_service_api.rb +0 -495
  684. data/lib/vrpayment-ruby-sdk/api/customer_comment_service_api.rb +0 -562
  685. data/lib/vrpayment-ruby-sdk/api/customer_service_api.rb +0 -428
  686. data/lib/vrpayment-ruby-sdk/api/delivery_indication_service_api.rb +0 -362
  687. data/lib/vrpayment-ruby-sdk/api/document_template_service_api.rb +0 -228
  688. data/lib/vrpayment-ruby-sdk/api/document_template_type_service_api.rb +0 -149
  689. data/lib/vrpayment-ruby-sdk/api/dunning_case_level_service_api.rb +0 -228
  690. data/lib/vrpayment-ruby-sdk/api/dunning_case_service_api.rb +0 -366
  691. data/lib/vrpayment-ruby-sdk/api/dunning_flow_level_service_api.rb +0 -228
  692. data/lib/vrpayment-ruby-sdk/api/dunning_flow_service_api.rb +0 -228
  693. data/lib/vrpayment-ruby-sdk/api/external_transfer_bank_transaction_service_api.rb +0 -228
  694. data/lib/vrpayment-ruby-sdk/api/human_user_service_api.rb +0 -460
  695. data/lib/vrpayment-ruby-sdk/api/internal_transfer_bank_transaction_service_api.rb +0 -228
  696. data/lib/vrpayment-ruby-sdk/api/invoice_reconciliation_record_invoice_link_service_api.rb +0 -376
  697. data/lib/vrpayment-ruby-sdk/api/invoice_reconciliation_record_service_api.rb +0 -429
  698. data/lib/vrpayment-ruby-sdk/api/invoice_reimbursement_service_api.rb +0 -373
  699. data/lib/vrpayment-ruby-sdk/api/label_description_group_service_api.rb +0 -149
  700. data/lib/vrpayment-ruby-sdk/api/label_description_service_api.rb +0 -149
  701. data/lib/vrpayment-ruby-sdk/api/language_service_api.rb +0 -86
  702. data/lib/vrpayment-ruby-sdk/api/legal_organization_form_service_api.rb +0 -212
  703. data/lib/vrpayment-ruby-sdk/api/manual_task_service_api.rb +0 -228
  704. data/lib/vrpayment-ruby-sdk/api/mertic_usage_service_api.rb +0 -101
  705. data/lib/vrpayment-ruby-sdk/api/payment_connector_configuration_service_api.rb +0 -228
  706. data/lib/vrpayment-ruby-sdk/api/payment_connector_service_api.rb +0 -149
  707. data/lib/vrpayment-ruby-sdk/api/payment_link_service_api.rb +0 -428
  708. data/lib/vrpayment-ruby-sdk/api/payment_method_brand_service_api.rb +0 -149
  709. data/lib/vrpayment-ruby-sdk/api/payment_method_configuration_service_api.rb +0 -228
  710. data/lib/vrpayment-ruby-sdk/api/payment_method_service_api.rb +0 -149
  711. data/lib/vrpayment-ruby-sdk/api/payment_processor_configuration_service_api.rb +0 -228
  712. data/lib/vrpayment-ruby-sdk/api/payment_processor_service_api.rb +0 -149
  713. data/lib/vrpayment-ruby-sdk/api/payment_terminal_service_api.rb +0 -503
  714. data/lib/vrpayment-ruby-sdk/api/payment_terminal_till_service_api.rb +0 -180
  715. data/lib/vrpayment-ruby-sdk/api/payment_terminal_transaction_summary_service_api.rb +0 -295
  716. data/lib/vrpayment-ruby-sdk/api/payment_web_app_service_api.rb +0 -632
  717. data/lib/vrpayment-ruby-sdk/api/permission_service_api.rb +0 -149
  718. data/lib/vrpayment-ruby-sdk/api/refund_bank_transaction_service_api.rb +0 -228
  719. data/lib/vrpayment-ruby-sdk/api/refund_comment_service_api.rb +0 -498
  720. data/lib/vrpayment-ruby-sdk/api/refund_recovery_bank_transaction_service_api.rb +0 -228
  721. data/lib/vrpayment-ruby-sdk/api/refund_service_api.rb +0 -572
  722. data/lib/vrpayment-ruby-sdk/api/space_service_api.rb +0 -398
  723. data/lib/vrpayment-ruby-sdk/api/static_value_service_api.rb +0 -149
  724. data/lib/vrpayment-ruby-sdk/api/subscriber_service_api.rb +0 -428
  725. data/lib/vrpayment-ruby-sdk/api/subscription_affiliate_service_api.rb +0 -428
  726. data/lib/vrpayment-ruby-sdk/api/subscription_charge_service_api.rb +0 -363
  727. data/lib/vrpayment-ruby-sdk/api/subscription_ledger_entry_service_api.rb +0 -295
  728. data/lib/vrpayment-ruby-sdk/api/subscription_metric_service_api.rb +0 -428
  729. data/lib/vrpayment-ruby-sdk/api/subscription_metric_usage_service_api.rb +0 -295
  730. data/lib/vrpayment-ruby-sdk/api/subscription_period_bill_service_api.rb +0 -228
  731. data/lib/vrpayment-ruby-sdk/api/subscription_product_component_group_service_api.rb +0 -428
  732. data/lib/vrpayment-ruby-sdk/api/subscription_product_component_service_api.rb +0 -428
  733. data/lib/vrpayment-ruby-sdk/api/subscription_product_fee_tier_service_api.rb +0 -428
  734. data/lib/vrpayment-ruby-sdk/api/subscription_product_metered_fee_service_api.rb +0 -428
  735. data/lib/vrpayment-ruby-sdk/api/subscription_product_period_fee_service_api.rb +0 -428
  736. data/lib/vrpayment-ruby-sdk/api/subscription_product_retirement_service_api.rb +0 -295
  737. data/lib/vrpayment-ruby-sdk/api/subscription_product_service_api.rb +0 -362
  738. data/lib/vrpayment-ruby-sdk/api/subscription_product_setup_fee_service_api.rb +0 -428
  739. data/lib/vrpayment-ruby-sdk/api/subscription_product_version_retirement_service_api.rb +0 -295
  740. data/lib/vrpayment-ruby-sdk/api/subscription_product_version_service_api.rb +0 -430
  741. data/lib/vrpayment-ruby-sdk/api/subscription_service_api.rb +0 -793
  742. data/lib/vrpayment-ruby-sdk/api/subscription_suspension_service_api.rb +0 -363
  743. data/lib/vrpayment-ruby-sdk/api/subscription_version_service_api.rb +0 -228
  744. data/lib/vrpayment-ruby-sdk/api/token_service_api.rb +0 -768
  745. data/lib/vrpayment-ruby-sdk/api/token_version_service_api.rb +0 -296
  746. data/lib/vrpayment-ruby-sdk/api/transaction_comment_service_api.rb +0 -498
  747. data/lib/vrpayment-ruby-sdk/api/transaction_completion_service_api.rb +0 -498
  748. data/lib/vrpayment-ruby-sdk/api/transaction_iframe_service_api.rb +0 -96
  749. data/lib/vrpayment-ruby-sdk/api/transaction_invoice_comment_service_api.rb +0 -498
  750. data/lib/vrpayment-ruby-sdk/api/transaction_invoice_service_api.rb +0 -645
  751. data/lib/vrpayment-ruby-sdk/api/transaction_lightbox_service_api.rb +0 -96
  752. data/lib/vrpayment-ruby-sdk/api/transaction_line_item_version_service_api.rb +0 -295
  753. data/lib/vrpayment-ruby-sdk/api/transaction_mobile_sdk_service_api.rb +0 -91
  754. data/lib/vrpayment-ruby-sdk/api/transaction_payment_page_service_api.rb +0 -96
  755. data/lib/vrpayment-ruby-sdk/api/transaction_service_api.rb +0 -1238
  756. data/lib/vrpayment-ruby-sdk/api/transaction_terminal_service_api.rb +0 -171
  757. data/lib/vrpayment-ruby-sdk/api/transaction_void_service_api.rb +0 -364
  758. data/lib/vrpayment-ruby-sdk/api/user_account_role_service_api.rb +0 -234
  759. data/lib/vrpayment-ruby-sdk/api/user_space_role_service_api.rb +0 -231
  760. data/lib/vrpayment-ruby-sdk/api/web_app_service_api.rb +0 -215
  761. data/lib/vrpayment-ruby-sdk/api/webhook_encryption_service_api.rb +0 -117
  762. data/lib/vrpayment-ruby-sdk/api/webhook_listener_service_api.rb +0 -428
  763. data/lib/vrpayment-ruby-sdk/api/webhook_url_service_api.rb +0 -428
  764. data/lib/vrpayment-ruby-sdk/encryption_util.rb +0 -40
  765. data/lib/vrpayment-ruby-sdk/models/client_error.rb +0 -231
  766. data/lib/vrpayment-ruby-sdk/models/client_error_type.rb +0 -36
  767. data/lib/vrpayment-ruby-sdk/models/criteria_operator.rb +0 -45
  768. data/lib/vrpayment-ruby-sdk/models/dunning_case_level.rb +0 -351
  769. data/lib/vrpayment-ruby-sdk/models/dunning_case_level_state.rb +0 -38
  770. data/lib/vrpayment-ruby-sdk/models/entity_export_request.rb +0 -208
  771. data/lib/vrpayment-ruby-sdk/models/entity_query.rb +0 -233
  772. data/lib/vrpayment-ruby-sdk/models/entity_query_filter.rb +0 -238
  773. data/lib/vrpayment-ruby-sdk/models/entity_query_filter_type.rb +0 -36
  774. data/lib/vrpayment-ruby-sdk/models/entity_query_order_by.rb +0 -211
  775. data/lib/vrpayment-ruby-sdk/models/entity_query_order_by_type.rb +0 -35
  776. data/lib/vrpayment-ruby-sdk/models/invoice_reconciliation_record.rb +0 -571
  777. data/lib/vrpayment-ruby-sdk/models/invoice_reconciliation_record_invoice_link.rb +0 -241
  778. data/lib/vrpayment-ruby-sdk/models/invoice_reconciliation_record_rejection_status.rb +0 -36
  779. data/lib/vrpayment-ruby-sdk/models/invoice_reconciliation_record_state.rb +0 -38
  780. data/lib/vrpayment-ruby-sdk/models/invoice_reconciliation_record_type.rb +0 -215
  781. data/lib/vrpayment-ruby-sdk/models/invoice_reimbursement.rb +0 -401
  782. data/lib/vrpayment-ruby-sdk/models/invoice_reimbursement_state.rb +0 -38
  783. data/lib/vrpayment-ruby-sdk/models/invoice_reimbursement_with_refund_reference.rb +0 -411
  784. data/lib/vrpayment-ruby-sdk/models/payment_app_charge_attempt_update_request.rb +0 -261
  785. data/lib/vrpayment-ruby-sdk/models/payment_app_completion_update_request.rb +0 -236
  786. data/lib/vrpayment-ruby-sdk/models/payment_app_connector_creation_request.rb +0 -366
  787. data/lib/vrpayment-ruby-sdk/models/payment_app_processor_creation_request.rb +0 -317
  788. data/lib/vrpayment-ruby-sdk/models/payment_app_refund_update_request.rb +0 -236
  789. data/lib/vrpayment-ruby-sdk/models/payment_app_void_update_request.rb +0 -236
  790. data/lib/vrpayment-ruby-sdk/models/payment_initiation_advice_file.rb +0 -281
  791. data/lib/vrpayment-ruby-sdk/models/payment_initiation_advice_file_state.rb +0 -40
  792. data/lib/vrpayment-ruby-sdk/models/payment_terminal_dcc_transaction_sum.rb +0 -261
  793. data/lib/vrpayment-ruby-sdk/models/payment_terminal_transaction_sum.rb +0 -291
  794. data/lib/vrpayment-ruby-sdk/models/payment_terminal_transaction_summary.rb +0 -307
  795. data/lib/vrpayment-ruby-sdk/models/payment_terminal_transaction_summary_fetch_request.rb +0 -221
  796. data/lib/vrpayment-ruby-sdk/models/rendered_terminal_transaction_summary.rb +0 -215
  797. data/lib/vrpayment-ruby-sdk/models/resource_path.rb +0 -275
  798. data/lib/vrpayment-ruby-sdk/models/resource_state.rb +0 -36
  799. data/lib/vrpayment-ruby-sdk/models/server_error.rb +0 -211
  800. data/lib/vrpayment-ruby-sdk/models/subscription_change_request.rb +0 -260
  801. data/lib/vrpayment-ruby-sdk/models/subscription_product_retirement_create.rb +0 -216
  802. data/lib/vrpayment-ruby-sdk/models/subscription_product_version_retirement_create.rb +0 -216
  803. data/lib/vrpayment-ruby-sdk/models/subscription_suspension_create.rb +0 -251
  804. data/lib/vrpayment-ruby-sdk/models/subscription_suspension_running.rb +0 -336
  805. data/lib/vrpayment-ruby-sdk/models/terminal_receipt_fetch_request.rb +0 -221
  806. data/lib/vrpayment-ruby-sdk/models/transaction_completion_request.rb +0 -316
  807. data/lib/vrpayment-ruby-sdk/models/web_app_confirmation_request.rb +0 -206
  808. data/lib/vrpayment-ruby-sdk/models/webhook_encryption_public_key.rb +0 -201
  809. data/test/refund_service_test.rb +0 -133
  810. data/test/transaction_completion_service_test.rb +0 -104
  811. data/test/transaction_iframe_service_test.rb +0 -25
  812. data/test/transaction_lightbox_service_test.rb +0 -25
  813. data/test/transaction_payment_page_service_test.rb +0 -25
  814. data/test/transaction_service_test.rb +0 -230
  815. data/vendor/bundle/ruby/3.3.0/bin/rake +0 -29
  816. data/vendor/bundle/ruby/3.3.0/cache/addressable-2.8.7.gem +0 -0
  817. data/vendor/bundle/ruby/3.3.0/cache/ethon-0.16.0.gem +0 -0
  818. data/vendor/bundle/ruby/3.3.0/cache/ffi-1.17.2-x86_64-linux-gnu.gem +0 -0
  819. data/vendor/bundle/ruby/3.3.0/cache/json-2.13.0.gem +0 -0
  820. data/vendor/bundle/ruby/3.3.0/cache/power_assert-2.0.5.gem +0 -0
  821. data/vendor/bundle/ruby/3.3.0/cache/public_suffix-6.0.2.gem +0 -0
  822. data/vendor/bundle/ruby/3.3.0/cache/rake-13.0.6.gem +0 -0
  823. data/vendor/bundle/ruby/3.3.0/cache/test-unit-3.3.9.gem +0 -0
  824. data/vendor/bundle/ruby/3.3.0/cache/typhoeus-1.4.1.gem +0 -0
  825. data/vendor/bundle/ruby/3.3.0/extensions/x86_64-linux/3.3.0/json-2.13.0/gem.build_complete +0 -0
  826. data/vendor/bundle/ruby/3.3.0/extensions/x86_64-linux/3.3.0/json-2.13.0/gem_make.out +0 -25
  827. data/vendor/bundle/ruby/3.3.0/extensions/x86_64-linux/3.3.0/json-2.13.0/json/ext/generator.so +0 -0
  828. data/vendor/bundle/ruby/3.3.0/extensions/x86_64-linux/3.3.0/json-2.13.0/json/ext/parser.so +0 -0
  829. data/vendor/bundle/ruby/3.3.0/extensions/x86_64-linux/3.3.0/json-2.13.0/mkmf.log +0 -164
  830. data/vendor/bundle/ruby/3.3.0/gems/addressable-2.8.7/CHANGELOG.md +0 -301
  831. data/vendor/bundle/ruby/3.3.0/gems/addressable-2.8.7/Gemfile +0 -31
  832. data/vendor/bundle/ruby/3.3.0/gems/addressable-2.8.7/LICENSE.txt +0 -202
  833. data/vendor/bundle/ruby/3.3.0/gems/addressable-2.8.7/README.md +0 -121
  834. data/vendor/bundle/ruby/3.3.0/gems/addressable-2.8.7/Rakefile +0 -37
  835. data/vendor/bundle/ruby/3.3.0/gems/addressable-2.8.7/addressable.gemspec +0 -28
  836. data/vendor/bundle/ruby/3.3.0/gems/addressable-2.8.7/data/unicode.data +0 -0
  837. data/vendor/bundle/ruby/3.3.0/gems/addressable-2.8.7/lib/addressable/idna/native.rb +0 -66
  838. data/vendor/bundle/ruby/3.3.0/gems/addressable-2.8.7/lib/addressable/idna/pure.rb +0 -505
  839. data/vendor/bundle/ruby/3.3.0/gems/addressable-2.8.7/lib/addressable/idna.rb +0 -26
  840. data/vendor/bundle/ruby/3.3.0/gems/addressable-2.8.7/lib/addressable/template.rb +0 -1029
  841. data/vendor/bundle/ruby/3.3.0/gems/addressable-2.8.7/lib/addressable/uri.rb +0 -2602
  842. data/vendor/bundle/ruby/3.3.0/gems/addressable-2.8.7/lib/addressable/version.rb +0 -31
  843. data/vendor/bundle/ruby/3.3.0/gems/addressable-2.8.7/lib/addressable.rb +0 -4
  844. data/vendor/bundle/ruby/3.3.0/gems/addressable-2.8.7/spec/addressable/idna_spec.rb +0 -302
  845. data/vendor/bundle/ruby/3.3.0/gems/addressable-2.8.7/spec/addressable/net_http_compat_spec.rb +0 -29
  846. data/vendor/bundle/ruby/3.3.0/gems/addressable-2.8.7/spec/addressable/security_spec.rb +0 -58
  847. data/vendor/bundle/ruby/3.3.0/gems/addressable-2.8.7/spec/addressable/template_spec.rb +0 -1264
  848. data/vendor/bundle/ruby/3.3.0/gems/addressable-2.8.7/spec/addressable/uri_spec.rb +0 -6840
  849. data/vendor/bundle/ruby/3.3.0/gems/addressable-2.8.7/spec/spec_helper.rb +0 -33
  850. data/vendor/bundle/ruby/3.3.0/gems/addressable-2.8.7/tasks/clobber.rake +0 -4
  851. data/vendor/bundle/ruby/3.3.0/gems/addressable-2.8.7/tasks/gem.rake +0 -95
  852. data/vendor/bundle/ruby/3.3.0/gems/addressable-2.8.7/tasks/git.rake +0 -47
  853. data/vendor/bundle/ruby/3.3.0/gems/addressable-2.8.7/tasks/metrics.rake +0 -24
  854. data/vendor/bundle/ruby/3.3.0/gems/addressable-2.8.7/tasks/profile.rake +0 -72
  855. data/vendor/bundle/ruby/3.3.0/gems/addressable-2.8.7/tasks/rspec.rake +0 -23
  856. data/vendor/bundle/ruby/3.3.0/gems/addressable-2.8.7/tasks/yard.rake +0 -29
  857. data/vendor/bundle/ruby/3.3.0/gems/ethon-0.16.0/.github/workflows/ruby.yml +0 -41
  858. data/vendor/bundle/ruby/3.3.0/gems/ethon-0.16.0/.gitignore +0 -8
  859. data/vendor/bundle/ruby/3.3.0/gems/ethon-0.16.0/.rspec +0 -3
  860. data/vendor/bundle/ruby/3.3.0/gems/ethon-0.16.0/CHANGELOG.md +0 -375
  861. data/vendor/bundle/ruby/3.3.0/gems/ethon-0.16.0/Gemfile +0 -43
  862. data/vendor/bundle/ruby/3.3.0/gems/ethon-0.16.0/Guardfile +0 -10
  863. data/vendor/bundle/ruby/3.3.0/gems/ethon-0.16.0/LICENSE +0 -20
  864. data/vendor/bundle/ruby/3.3.0/gems/ethon-0.16.0/README.md +0 -118
  865. data/vendor/bundle/ruby/3.3.0/gems/ethon-0.16.0/Rakefile +0 -40
  866. data/vendor/bundle/ruby/3.3.0/gems/ethon-0.16.0/ethon.gemspec +0 -26
  867. data/vendor/bundle/ruby/3.3.0/gems/ethon-0.16.0/lib/ethon/curl.rb +0 -90
  868. data/vendor/bundle/ruby/3.3.0/gems/ethon-0.16.0/lib/ethon/curls/classes.rb +0 -65
  869. data/vendor/bundle/ruby/3.3.0/gems/ethon-0.16.0/lib/ethon/curls/codes.rb +0 -122
  870. data/vendor/bundle/ruby/3.3.0/gems/ethon-0.16.0/lib/ethon/curls/constants.rb +0 -80
  871. data/vendor/bundle/ruby/3.3.0/gems/ethon-0.16.0/lib/ethon/curls/form_options.rb +0 -37
  872. data/vendor/bundle/ruby/3.3.0/gems/ethon-0.16.0/lib/ethon/curls/functions.rb +0 -58
  873. data/vendor/bundle/ruby/3.3.0/gems/ethon-0.16.0/lib/ethon/curls/infos.rb +0 -151
  874. data/vendor/bundle/ruby/3.3.0/gems/ethon-0.16.0/lib/ethon/curls/messages.rb +0 -19
  875. data/vendor/bundle/ruby/3.3.0/gems/ethon-0.16.0/lib/ethon/curls/options.rb +0 -503
  876. data/vendor/bundle/ruby/3.3.0/gems/ethon-0.16.0/lib/ethon/curls/settings.rb +0 -12
  877. data/vendor/bundle/ruby/3.3.0/gems/ethon-0.16.0/lib/ethon/easy/callbacks.rb +0 -149
  878. data/vendor/bundle/ruby/3.3.0/gems/ethon-0.16.0/lib/ethon/easy/debug_info.rb +0 -47
  879. data/vendor/bundle/ruby/3.3.0/gems/ethon-0.16.0/lib/ethon/easy/features.rb +0 -31
  880. data/vendor/bundle/ruby/3.3.0/gems/ethon-0.16.0/lib/ethon/easy/form.rb +0 -107
  881. data/vendor/bundle/ruby/3.3.0/gems/ethon-0.16.0/lib/ethon/easy/header.rb +0 -61
  882. data/vendor/bundle/ruby/3.3.0/gems/ethon-0.16.0/lib/ethon/easy/http/actionable.rb +0 -157
  883. data/vendor/bundle/ruby/3.3.0/gems/ethon-0.16.0/lib/ethon/easy/http/custom.rb +0 -29
  884. data/vendor/bundle/ruby/3.3.0/gems/ethon-0.16.0/lib/ethon/easy/http/delete.rb +0 -25
  885. data/vendor/bundle/ruby/3.3.0/gems/ethon-0.16.0/lib/ethon/easy/http/get.rb +0 -24
  886. data/vendor/bundle/ruby/3.3.0/gems/ethon-0.16.0/lib/ethon/easy/http/head.rb +0 -24
  887. data/vendor/bundle/ruby/3.3.0/gems/ethon-0.16.0/lib/ethon/easy/http/options.rb +0 -24
  888. data/vendor/bundle/ruby/3.3.0/gems/ethon-0.16.0/lib/ethon/easy/http/patch.rb +0 -24
  889. data/vendor/bundle/ruby/3.3.0/gems/ethon-0.16.0/lib/ethon/easy/http/post.rb +0 -26
  890. data/vendor/bundle/ruby/3.3.0/gems/ethon-0.16.0/lib/ethon/easy/http/postable.rb +0 -32
  891. data/vendor/bundle/ruby/3.3.0/gems/ethon-0.16.0/lib/ethon/easy/http/put.rb +0 -27
  892. data/vendor/bundle/ruby/3.3.0/gems/ethon-0.16.0/lib/ethon/easy/http/putable.rb +0 -25
  893. data/vendor/bundle/ruby/3.3.0/gems/ethon-0.16.0/lib/ethon/easy/http.rb +0 -68
  894. data/vendor/bundle/ruby/3.3.0/gems/ethon-0.16.0/lib/ethon/easy/informations.rb +0 -116
  895. data/vendor/bundle/ruby/3.3.0/gems/ethon-0.16.0/lib/ethon/easy/mirror.rb +0 -36
  896. data/vendor/bundle/ruby/3.3.0/gems/ethon-0.16.0/lib/ethon/easy/operations.rb +0 -64
  897. data/vendor/bundle/ruby/3.3.0/gems/ethon-0.16.0/lib/ethon/easy/options.rb +0 -50
  898. data/vendor/bundle/ruby/3.3.0/gems/ethon-0.16.0/lib/ethon/easy/params.rb +0 -29
  899. data/vendor/bundle/ruby/3.3.0/gems/ethon-0.16.0/lib/ethon/easy/queryable.rb +0 -154
  900. data/vendor/bundle/ruby/3.3.0/gems/ethon-0.16.0/lib/ethon/easy/response_callbacks.rb +0 -136
  901. data/vendor/bundle/ruby/3.3.0/gems/ethon-0.16.0/lib/ethon/easy/util.rb +0 -28
  902. data/vendor/bundle/ruby/3.3.0/gems/ethon-0.16.0/lib/ethon/easy.rb +0 -315
  903. data/vendor/bundle/ruby/3.3.0/gems/ethon-0.16.0/lib/ethon/errors/ethon_error.rb +0 -9
  904. data/vendor/bundle/ruby/3.3.0/gems/ethon-0.16.0/lib/ethon/errors/global_init.rb +0 -13
  905. data/vendor/bundle/ruby/3.3.0/gems/ethon-0.16.0/lib/ethon/errors/invalid_option.rb +0 -13
  906. data/vendor/bundle/ruby/3.3.0/gems/ethon-0.16.0/lib/ethon/errors/invalid_value.rb +0 -13
  907. data/vendor/bundle/ruby/3.3.0/gems/ethon-0.16.0/lib/ethon/errors/multi_add.rb +0 -12
  908. data/vendor/bundle/ruby/3.3.0/gems/ethon-0.16.0/lib/ethon/errors/multi_fdset.rb +0 -12
  909. data/vendor/bundle/ruby/3.3.0/gems/ethon-0.16.0/lib/ethon/errors/multi_remove.rb +0 -12
  910. data/vendor/bundle/ruby/3.3.0/gems/ethon-0.16.0/lib/ethon/errors/multi_timeout.rb +0 -13
  911. data/vendor/bundle/ruby/3.3.0/gems/ethon-0.16.0/lib/ethon/errors/select.rb +0 -13
  912. data/vendor/bundle/ruby/3.3.0/gems/ethon-0.16.0/lib/ethon/errors.rb +0 -17
  913. data/vendor/bundle/ruby/3.3.0/gems/ethon-0.16.0/lib/ethon/libc.rb +0 -21
  914. data/vendor/bundle/ruby/3.3.0/gems/ethon-0.16.0/lib/ethon/loggable.rb +0 -59
  915. data/vendor/bundle/ruby/3.3.0/gems/ethon-0.16.0/lib/ethon/multi/operations.rb +0 -228
  916. data/vendor/bundle/ruby/3.3.0/gems/ethon-0.16.0/lib/ethon/multi/options.rb +0 -117
  917. data/vendor/bundle/ruby/3.3.0/gems/ethon-0.16.0/lib/ethon/multi/stack.rb +0 -49
  918. data/vendor/bundle/ruby/3.3.0/gems/ethon-0.16.0/lib/ethon/multi.rb +0 -126
  919. data/vendor/bundle/ruby/3.3.0/gems/ethon-0.16.0/lib/ethon/version.rb +0 -6
  920. data/vendor/bundle/ruby/3.3.0/gems/ethon-0.16.0/lib/ethon.rb +0 -36
  921. data/vendor/bundle/ruby/3.3.0/gems/ethon-0.16.0/profile/benchmarks.rb +0 -104
  922. data/vendor/bundle/ruby/3.3.0/gems/ethon-0.16.0/profile/memory_leaks.rb +0 -114
  923. data/vendor/bundle/ruby/3.3.0/gems/ethon-0.16.0/profile/perf_spec_helper.rb +0 -37
  924. data/vendor/bundle/ruby/3.3.0/gems/ethon-0.16.0/profile/support/memory_test_helpers.rb +0 -76
  925. data/vendor/bundle/ruby/3.3.0/gems/ethon-0.16.0/profile/support/os_memory_leak_tracker.rb +0 -48
  926. data/vendor/bundle/ruby/3.3.0/gems/ethon-0.16.0/profile/support/ruby_object_leak_tracker.rb +0 -49
  927. data/vendor/bundle/ruby/3.3.0/gems/ethon-0.16.0/spec/ethon/curl_spec.rb +0 -38
  928. data/vendor/bundle/ruby/3.3.0/gems/ethon-0.16.0/spec/ethon/easy/callbacks_spec.rb +0 -81
  929. data/vendor/bundle/ruby/3.3.0/gems/ethon-0.16.0/spec/ethon/easy/debug_info_spec.rb +0 -54
  930. data/vendor/bundle/ruby/3.3.0/gems/ethon-0.16.0/spec/ethon/easy/features_spec.rb +0 -24
  931. data/vendor/bundle/ruby/3.3.0/gems/ethon-0.16.0/spec/ethon/easy/form_spec.rb +0 -104
  932. data/vendor/bundle/ruby/3.3.0/gems/ethon-0.16.0/spec/ethon/easy/header_spec.rb +0 -79
  933. data/vendor/bundle/ruby/3.3.0/gems/ethon-0.16.0/spec/ethon/easy/http/custom_spec.rb +0 -177
  934. data/vendor/bundle/ruby/3.3.0/gems/ethon-0.16.0/spec/ethon/easy/http/delete_spec.rb +0 -21
  935. data/vendor/bundle/ruby/3.3.0/gems/ethon-0.16.0/spec/ethon/easy/http/get_spec.rb +0 -126
  936. data/vendor/bundle/ruby/3.3.0/gems/ethon-0.16.0/spec/ethon/easy/http/head_spec.rb +0 -80
  937. data/vendor/bundle/ruby/3.3.0/gems/ethon-0.16.0/spec/ethon/easy/http/options_spec.rb +0 -51
  938. data/vendor/bundle/ruby/3.3.0/gems/ethon-0.16.0/spec/ethon/easy/http/patch_spec.rb +0 -51
  939. data/vendor/bundle/ruby/3.3.0/gems/ethon-0.16.0/spec/ethon/easy/http/post_spec.rb +0 -317
  940. data/vendor/bundle/ruby/3.3.0/gems/ethon-0.16.0/spec/ethon/easy/http/put_spec.rb +0 -168
  941. data/vendor/bundle/ruby/3.3.0/gems/ethon-0.16.0/spec/ethon/easy/http_spec.rb +0 -64
  942. data/vendor/bundle/ruby/3.3.0/gems/ethon-0.16.0/spec/ethon/easy/informations_spec.rb +0 -126
  943. data/vendor/bundle/ruby/3.3.0/gems/ethon-0.16.0/spec/ethon/easy/mirror_spec.rb +0 -47
  944. data/vendor/bundle/ruby/3.3.0/gems/ethon-0.16.0/spec/ethon/easy/operations_spec.rb +0 -271
  945. data/vendor/bundle/ruby/3.3.0/gems/ethon-0.16.0/spec/ethon/easy/options_spec.rb +0 -193
  946. data/vendor/bundle/ruby/3.3.0/gems/ethon-0.16.0/spec/ethon/easy/queryable_spec.rb +0 -235
  947. data/vendor/bundle/ruby/3.3.0/gems/ethon-0.16.0/spec/ethon/easy/response_callbacks_spec.rb +0 -152
  948. data/vendor/bundle/ruby/3.3.0/gems/ethon-0.16.0/spec/ethon/easy/util_spec.rb +0 -28
  949. data/vendor/bundle/ruby/3.3.0/gems/ethon-0.16.0/spec/ethon/easy_spec.rb +0 -203
  950. data/vendor/bundle/ruby/3.3.0/gems/ethon-0.16.0/spec/ethon/libc_spec.rb +0 -14
  951. data/vendor/bundle/ruby/3.3.0/gems/ethon-0.16.0/spec/ethon/loggable_spec.rb +0 -22
  952. data/vendor/bundle/ruby/3.3.0/gems/ethon-0.16.0/spec/ethon/multi/operations_spec.rb +0 -298
  953. data/vendor/bundle/ruby/3.3.0/gems/ethon-0.16.0/spec/ethon/multi/options_spec.rb +0 -182
  954. data/vendor/bundle/ruby/3.3.0/gems/ethon-0.16.0/spec/ethon/multi/stack_spec.rb +0 -80
  955. data/vendor/bundle/ruby/3.3.0/gems/ethon-0.16.0/spec/ethon/multi_spec.rb +0 -152
  956. data/vendor/bundle/ruby/3.3.0/gems/ethon-0.16.0/spec/spec_helper.rb +0 -28
  957. data/vendor/bundle/ruby/3.3.0/gems/ethon-0.16.0/spec/support/localhost_server.rb +0 -95
  958. data/vendor/bundle/ruby/3.3.0/gems/ethon-0.16.0/spec/support/server.rb +0 -115
  959. data/vendor/bundle/ruby/3.3.0/gems/ffi-1.17.2-x86_64-linux-gnu/CHANGELOG.md +0 -473
  960. data/vendor/bundle/ruby/3.3.0/gems/ffi-1.17.2-x86_64-linux-gnu/COPYING +0 -49
  961. data/vendor/bundle/ruby/3.3.0/gems/ffi-1.17.2-x86_64-linux-gnu/Gemfile +0 -23
  962. data/vendor/bundle/ruby/3.3.0/gems/ffi-1.17.2-x86_64-linux-gnu/LICENSE +0 -24
  963. data/vendor/bundle/ruby/3.3.0/gems/ffi-1.17.2-x86_64-linux-gnu/LICENSE.SPECS +0 -22
  964. data/vendor/bundle/ruby/3.3.0/gems/ffi-1.17.2-x86_64-linux-gnu/README.md +0 -137
  965. data/vendor/bundle/ruby/3.3.0/gems/ffi-1.17.2-x86_64-linux-gnu/Rakefile +0 -206
  966. data/vendor/bundle/ruby/3.3.0/gems/ffi-1.17.2-x86_64-linux-gnu/ffi.gemspec +0 -42
  967. data/vendor/bundle/ruby/3.3.0/gems/ffi-1.17.2-x86_64-linux-gnu/lib/2.5/ffi_c.so +0 -0
  968. data/vendor/bundle/ruby/3.3.0/gems/ffi-1.17.2-x86_64-linux-gnu/lib/2.6/ffi_c.so +0 -0
  969. data/vendor/bundle/ruby/3.3.0/gems/ffi-1.17.2-x86_64-linux-gnu/lib/2.7/ffi_c.so +0 -0
  970. data/vendor/bundle/ruby/3.3.0/gems/ffi-1.17.2-x86_64-linux-gnu/lib/3.0/ffi_c.so +0 -0
  971. data/vendor/bundle/ruby/3.3.0/gems/ffi-1.17.2-x86_64-linux-gnu/lib/3.1/ffi_c.so +0 -0
  972. data/vendor/bundle/ruby/3.3.0/gems/ffi-1.17.2-x86_64-linux-gnu/lib/3.2/ffi_c.so +0 -0
  973. data/vendor/bundle/ruby/3.3.0/gems/ffi-1.17.2-x86_64-linux-gnu/lib/3.3/ffi_c.so +0 -0
  974. data/vendor/bundle/ruby/3.3.0/gems/ffi-1.17.2-x86_64-linux-gnu/lib/3.4/ffi_c.so +0 -0
  975. data/vendor/bundle/ruby/3.3.0/gems/ffi-1.17.2-x86_64-linux-gnu/lib/ffi/abstract_memory.rb +0 -44
  976. data/vendor/bundle/ruby/3.3.0/gems/ffi-1.17.2-x86_64-linux-gnu/lib/ffi/autopointer.rb +0 -180
  977. data/vendor/bundle/ruby/3.3.0/gems/ffi-1.17.2-x86_64-linux-gnu/lib/ffi/buffer.rb +0 -4
  978. data/vendor/bundle/ruby/3.3.0/gems/ffi-1.17.2-x86_64-linux-gnu/lib/ffi/callback.rb +0 -4
  979. data/vendor/bundle/ruby/3.3.0/gems/ffi-1.17.2-x86_64-linux-gnu/lib/ffi/compat.rb +0 -43
  980. data/vendor/bundle/ruby/3.3.0/gems/ffi-1.17.2-x86_64-linux-gnu/lib/ffi/data_converter.rb +0 -67
  981. data/vendor/bundle/ruby/3.3.0/gems/ffi-1.17.2-x86_64-linux-gnu/lib/ffi/dynamic_library.rb +0 -118
  982. data/vendor/bundle/ruby/3.3.0/gems/ffi-1.17.2-x86_64-linux-gnu/lib/ffi/enum.rb +0 -302
  983. data/vendor/bundle/ruby/3.3.0/gems/ffi-1.17.2-x86_64-linux-gnu/lib/ffi/errno.rb +0 -43
  984. data/vendor/bundle/ruby/3.3.0/gems/ffi-1.17.2-x86_64-linux-gnu/lib/ffi/ffi.rb +0 -109
  985. data/vendor/bundle/ruby/3.3.0/gems/ffi-1.17.2-x86_64-linux-gnu/lib/ffi/function.rb +0 -71
  986. data/vendor/bundle/ruby/3.3.0/gems/ffi-1.17.2-x86_64-linux-gnu/lib/ffi/io.rb +0 -62
  987. data/vendor/bundle/ruby/3.3.0/gems/ffi-1.17.2-x86_64-linux-gnu/lib/ffi/library.rb +0 -576
  988. data/vendor/bundle/ruby/3.3.0/gems/ffi-1.17.2-x86_64-linux-gnu/lib/ffi/library_path.rb +0 -109
  989. data/vendor/bundle/ruby/3.3.0/gems/ffi-1.17.2-x86_64-linux-gnu/lib/ffi/managedstruct.rb +0 -84
  990. data/vendor/bundle/ruby/3.3.0/gems/ffi-1.17.2-x86_64-linux-gnu/lib/ffi/memorypointer.rb +0 -1
  991. data/vendor/bundle/ruby/3.3.0/gems/ffi-1.17.2-x86_64-linux-gnu/lib/ffi/platform/aarch64-darwin/types.conf +0 -130
  992. data/vendor/bundle/ruby/3.3.0/gems/ffi-1.17.2-x86_64-linux-gnu/lib/ffi/platform/aarch64-freebsd/types.conf +0 -128
  993. data/vendor/bundle/ruby/3.3.0/gems/ffi-1.17.2-x86_64-linux-gnu/lib/ffi/platform/aarch64-freebsd12/types.conf +0 -181
  994. data/vendor/bundle/ruby/3.3.0/gems/ffi-1.17.2-x86_64-linux-gnu/lib/ffi/platform/aarch64-linux/types.conf +0 -175
  995. data/vendor/bundle/ruby/3.3.0/gems/ffi-1.17.2-x86_64-linux-gnu/lib/ffi/platform/aarch64-openbsd/types.conf +0 -134
  996. data/vendor/bundle/ruby/3.3.0/gems/ffi-1.17.2-x86_64-linux-gnu/lib/ffi/platform/aarch64-windows/types.conf +0 -52
  997. data/vendor/bundle/ruby/3.3.0/gems/ffi-1.17.2-x86_64-linux-gnu/lib/ffi/platform/arm-freebsd/types.conf +0 -152
  998. data/vendor/bundle/ruby/3.3.0/gems/ffi-1.17.2-x86_64-linux-gnu/lib/ffi/platform/arm-freebsd12/types.conf +0 -152
  999. data/vendor/bundle/ruby/3.3.0/gems/ffi-1.17.2-x86_64-linux-gnu/lib/ffi/platform/arm-linux/types.conf +0 -132
  1000. data/vendor/bundle/ruby/3.3.0/gems/ffi-1.17.2-x86_64-linux-gnu/lib/ffi/platform/hppa1.1-linux/types.conf +0 -178
  1001. data/vendor/bundle/ruby/3.3.0/gems/ffi-1.17.2-x86_64-linux-gnu/lib/ffi/platform/hppa2.0-linux/types.conf +0 -178
  1002. data/vendor/bundle/ruby/3.3.0/gems/ffi-1.17.2-x86_64-linux-gnu/lib/ffi/platform/i386-cygwin/types.conf +0 -3
  1003. data/vendor/bundle/ruby/3.3.0/gems/ffi-1.17.2-x86_64-linux-gnu/lib/ffi/platform/i386-darwin/types.conf +0 -100
  1004. data/vendor/bundle/ruby/3.3.0/gems/ffi-1.17.2-x86_64-linux-gnu/lib/ffi/platform/i386-freebsd/types.conf +0 -152
  1005. data/vendor/bundle/ruby/3.3.0/gems/ffi-1.17.2-x86_64-linux-gnu/lib/ffi/platform/i386-freebsd12/types.conf +0 -152
  1006. data/vendor/bundle/ruby/3.3.0/gems/ffi-1.17.2-x86_64-linux-gnu/lib/ffi/platform/i386-gnu/types.conf +0 -107
  1007. data/vendor/bundle/ruby/3.3.0/gems/ffi-1.17.2-x86_64-linux-gnu/lib/ffi/platform/i386-linux/types.conf +0 -103
  1008. data/vendor/bundle/ruby/3.3.0/gems/ffi-1.17.2-x86_64-linux-gnu/lib/ffi/platform/i386-netbsd/types.conf +0 -126
  1009. data/vendor/bundle/ruby/3.3.0/gems/ffi-1.17.2-x86_64-linux-gnu/lib/ffi/platform/i386-openbsd/types.conf +0 -128
  1010. data/vendor/bundle/ruby/3.3.0/gems/ffi-1.17.2-x86_64-linux-gnu/lib/ffi/platform/i386-solaris/types.conf +0 -122
  1011. data/vendor/bundle/ruby/3.3.0/gems/ffi-1.17.2-x86_64-linux-gnu/lib/ffi/platform/i386-windows/types.conf +0 -52
  1012. data/vendor/bundle/ruby/3.3.0/gems/ffi-1.17.2-x86_64-linux-gnu/lib/ffi/platform/ia64-linux/types.conf +0 -104
  1013. data/vendor/bundle/ruby/3.3.0/gems/ffi-1.17.2-x86_64-linux-gnu/lib/ffi/platform/loongarch64-linux/types.conf +0 -141
  1014. data/vendor/bundle/ruby/3.3.0/gems/ffi-1.17.2-x86_64-linux-gnu/lib/ffi/platform/mips-linux/types.conf +0 -102
  1015. data/vendor/bundle/ruby/3.3.0/gems/ffi-1.17.2-x86_64-linux-gnu/lib/ffi/platform/mips64-linux/types.conf +0 -104
  1016. data/vendor/bundle/ruby/3.3.0/gems/ffi-1.17.2-x86_64-linux-gnu/lib/ffi/platform/mips64el-linux/types.conf +0 -104
  1017. data/vendor/bundle/ruby/3.3.0/gems/ffi-1.17.2-x86_64-linux-gnu/lib/ffi/platform/mipsel-linux/types.conf +0 -102
  1018. data/vendor/bundle/ruby/3.3.0/gems/ffi-1.17.2-x86_64-linux-gnu/lib/ffi/platform/mipsisa32r6-linux/types.conf +0 -102
  1019. data/vendor/bundle/ruby/3.3.0/gems/ffi-1.17.2-x86_64-linux-gnu/lib/ffi/platform/mipsisa32r6el-linux/types.conf +0 -102
  1020. data/vendor/bundle/ruby/3.3.0/gems/ffi-1.17.2-x86_64-linux-gnu/lib/ffi/platform/mipsisa64r6-linux/types.conf +0 -104
  1021. data/vendor/bundle/ruby/3.3.0/gems/ffi-1.17.2-x86_64-linux-gnu/lib/ffi/platform/mipsisa64r6el-linux/types.conf +0 -104
  1022. data/vendor/bundle/ruby/3.3.0/gems/ffi-1.17.2-x86_64-linux-gnu/lib/ffi/platform/powerpc-aix/types.conf +0 -180
  1023. data/vendor/bundle/ruby/3.3.0/gems/ffi-1.17.2-x86_64-linux-gnu/lib/ffi/platform/powerpc-darwin/types.conf +0 -100
  1024. data/vendor/bundle/ruby/3.3.0/gems/ffi-1.17.2-x86_64-linux-gnu/lib/ffi/platform/powerpc-linux/types.conf +0 -130
  1025. data/vendor/bundle/ruby/3.3.0/gems/ffi-1.17.2-x86_64-linux-gnu/lib/ffi/platform/powerpc-openbsd/types.conf +0 -156
  1026. data/vendor/bundle/ruby/3.3.0/gems/ffi-1.17.2-x86_64-linux-gnu/lib/ffi/platform/powerpc64-linux/types.conf +0 -104
  1027. data/vendor/bundle/ruby/3.3.0/gems/ffi-1.17.2-x86_64-linux-gnu/lib/ffi/platform/powerpc64le-linux/types.conf +0 -100
  1028. data/vendor/bundle/ruby/3.3.0/gems/ffi-1.17.2-x86_64-linux-gnu/lib/ffi/platform/riscv64-linux/types.conf +0 -104
  1029. data/vendor/bundle/ruby/3.3.0/gems/ffi-1.17.2-x86_64-linux-gnu/lib/ffi/platform/s390-linux/types.conf +0 -102
  1030. data/vendor/bundle/ruby/3.3.0/gems/ffi-1.17.2-x86_64-linux-gnu/lib/ffi/platform/s390x-linux/types.conf +0 -102
  1031. data/vendor/bundle/ruby/3.3.0/gems/ffi-1.17.2-x86_64-linux-gnu/lib/ffi/platform/sparc-linux/types.conf +0 -102
  1032. data/vendor/bundle/ruby/3.3.0/gems/ffi-1.17.2-x86_64-linux-gnu/lib/ffi/platform/sparc-solaris/types.conf +0 -128
  1033. data/vendor/bundle/ruby/3.3.0/gems/ffi-1.17.2-x86_64-linux-gnu/lib/ffi/platform/sparcv9-linux/types.conf +0 -102
  1034. data/vendor/bundle/ruby/3.3.0/gems/ffi-1.17.2-x86_64-linux-gnu/lib/ffi/platform/sparcv9-openbsd/types.conf +0 -156
  1035. data/vendor/bundle/ruby/3.3.0/gems/ffi-1.17.2-x86_64-linux-gnu/lib/ffi/platform/sparcv9-solaris/types.conf +0 -128
  1036. data/vendor/bundle/ruby/3.3.0/gems/ffi-1.17.2-x86_64-linux-gnu/lib/ffi/platform/sw_64-linux/types.conf +0 -141
  1037. data/vendor/bundle/ruby/3.3.0/gems/ffi-1.17.2-x86_64-linux-gnu/lib/ffi/platform/x86_64-cygwin/types.conf +0 -3
  1038. data/vendor/bundle/ruby/3.3.0/gems/ffi-1.17.2-x86_64-linux-gnu/lib/ffi/platform/x86_64-darwin/types.conf +0 -130
  1039. data/vendor/bundle/ruby/3.3.0/gems/ffi-1.17.2-x86_64-linux-gnu/lib/ffi/platform/x86_64-dragonflybsd/types.conf +0 -130
  1040. data/vendor/bundle/ruby/3.3.0/gems/ffi-1.17.2-x86_64-linux-gnu/lib/ffi/platform/x86_64-freebsd/types.conf +0 -128
  1041. data/vendor/bundle/ruby/3.3.0/gems/ffi-1.17.2-x86_64-linux-gnu/lib/ffi/platform/x86_64-freebsd12/types.conf +0 -158
  1042. data/vendor/bundle/ruby/3.3.0/gems/ffi-1.17.2-x86_64-linux-gnu/lib/ffi/platform/x86_64-haiku/types.conf +0 -117
  1043. data/vendor/bundle/ruby/3.3.0/gems/ffi-1.17.2-x86_64-linux-gnu/lib/ffi/platform/x86_64-linux/types.conf +0 -132
  1044. data/vendor/bundle/ruby/3.3.0/gems/ffi-1.17.2-x86_64-linux-gnu/lib/ffi/platform/x86_64-msys/types.conf +0 -119
  1045. data/vendor/bundle/ruby/3.3.0/gems/ffi-1.17.2-x86_64-linux-gnu/lib/ffi/platform/x86_64-netbsd/types.conf +0 -128
  1046. data/vendor/bundle/ruby/3.3.0/gems/ffi-1.17.2-x86_64-linux-gnu/lib/ffi/platform/x86_64-openbsd/types.conf +0 -134
  1047. data/vendor/bundle/ruby/3.3.0/gems/ffi-1.17.2-x86_64-linux-gnu/lib/ffi/platform/x86_64-solaris/types.conf +0 -122
  1048. data/vendor/bundle/ruby/3.3.0/gems/ffi-1.17.2-x86_64-linux-gnu/lib/ffi/platform/x86_64-windows/types.conf +0 -52
  1049. data/vendor/bundle/ruby/3.3.0/gems/ffi-1.17.2-x86_64-linux-gnu/lib/ffi/platform.rb +0 -187
  1050. data/vendor/bundle/ruby/3.3.0/gems/ffi-1.17.2-x86_64-linux-gnu/lib/ffi/pointer.rb +0 -167
  1051. data/vendor/bundle/ruby/3.3.0/gems/ffi-1.17.2-x86_64-linux-gnu/lib/ffi/struct.rb +0 -317
  1052. data/vendor/bundle/ruby/3.3.0/gems/ffi-1.17.2-x86_64-linux-gnu/lib/ffi/struct_by_reference.rb +0 -72
  1053. data/vendor/bundle/ruby/3.3.0/gems/ffi-1.17.2-x86_64-linux-gnu/lib/ffi/struct_layout.rb +0 -96
  1054. data/vendor/bundle/ruby/3.3.0/gems/ffi-1.17.2-x86_64-linux-gnu/lib/ffi/struct_layout_builder.rb +0 -227
  1055. data/vendor/bundle/ruby/3.3.0/gems/ffi-1.17.2-x86_64-linux-gnu/lib/ffi/tools/const_generator.rb +0 -232
  1056. data/vendor/bundle/ruby/3.3.0/gems/ffi-1.17.2-x86_64-linux-gnu/lib/ffi/tools/generator.rb +0 -105
  1057. data/vendor/bundle/ruby/3.3.0/gems/ffi-1.17.2-x86_64-linux-gnu/lib/ffi/tools/generator_task.rb +0 -32
  1058. data/vendor/bundle/ruby/3.3.0/gems/ffi-1.17.2-x86_64-linux-gnu/lib/ffi/tools/struct_generator.rb +0 -195
  1059. data/vendor/bundle/ruby/3.3.0/gems/ffi-1.17.2-x86_64-linux-gnu/lib/ffi/tools/types_generator.rb +0 -137
  1060. data/vendor/bundle/ruby/3.3.0/gems/ffi-1.17.2-x86_64-linux-gnu/lib/ffi/types.rb +0 -222
  1061. data/vendor/bundle/ruby/3.3.0/gems/ffi-1.17.2-x86_64-linux-gnu/lib/ffi/union.rb +0 -43
  1062. data/vendor/bundle/ruby/3.3.0/gems/ffi-1.17.2-x86_64-linux-gnu/lib/ffi/variadic.rb +0 -80
  1063. data/vendor/bundle/ruby/3.3.0/gems/ffi-1.17.2-x86_64-linux-gnu/lib/ffi/version.rb +0 -3
  1064. data/vendor/bundle/ruby/3.3.0/gems/ffi-1.17.2-x86_64-linux-gnu/lib/ffi.rb +0 -27
  1065. data/vendor/bundle/ruby/3.3.0/gems/ffi-1.17.2-x86_64-linux-gnu/rakelib/ffi_gem_helper.rb +0 -65
  1066. data/vendor/bundle/ruby/3.3.0/gems/ffi-1.17.2-x86_64-linux-gnu/samples/getlogin.rb +0 -8
  1067. data/vendor/bundle/ruby/3.3.0/gems/ffi-1.17.2-x86_64-linux-gnu/samples/getpid.rb +0 -8
  1068. data/vendor/bundle/ruby/3.3.0/gems/ffi-1.17.2-x86_64-linux-gnu/samples/gettimeofday.rb +0 -18
  1069. data/vendor/bundle/ruby/3.3.0/gems/ffi-1.17.2-x86_64-linux-gnu/samples/hello.rb +0 -8
  1070. data/vendor/bundle/ruby/3.3.0/gems/ffi-1.17.2-x86_64-linux-gnu/samples/hello_ractor.rb +0 -11
  1071. data/vendor/bundle/ruby/3.3.0/gems/ffi-1.17.2-x86_64-linux-gnu/samples/inotify.rb +0 -60
  1072. data/vendor/bundle/ruby/3.3.0/gems/ffi-1.17.2-x86_64-linux-gnu/samples/pty.rb +0 -75
  1073. data/vendor/bundle/ruby/3.3.0/gems/ffi-1.17.2-x86_64-linux-gnu/samples/qsort.rb +0 -20
  1074. data/vendor/bundle/ruby/3.3.0/gems/ffi-1.17.2-x86_64-linux-gnu/samples/qsort_ractor.rb +0 -28
  1075. data/vendor/bundle/ruby/3.3.0/gems/ffi-1.17.2-x86_64-linux-gnu/sig/ffi/abstract_memory.rbs +0 -165
  1076. data/vendor/bundle/ruby/3.3.0/gems/ffi-1.17.2-x86_64-linux-gnu/sig/ffi/auto_pointer.rbs +0 -26
  1077. data/vendor/bundle/ruby/3.3.0/gems/ffi-1.17.2-x86_64-linux-gnu/sig/ffi/buffer.rbs +0 -18
  1078. data/vendor/bundle/ruby/3.3.0/gems/ffi-1.17.2-x86_64-linux-gnu/sig/ffi/data_converter.rbs +0 -10
  1079. data/vendor/bundle/ruby/3.3.0/gems/ffi-1.17.2-x86_64-linux-gnu/sig/ffi/dynamic_library.rbs +0 -9
  1080. data/vendor/bundle/ruby/3.3.0/gems/ffi-1.17.2-x86_64-linux-gnu/sig/ffi/enum.rbs +0 -38
  1081. data/vendor/bundle/ruby/3.3.0/gems/ffi-1.17.2-x86_64-linux-gnu/sig/ffi/function.rbs +0 -39
  1082. data/vendor/bundle/ruby/3.3.0/gems/ffi-1.17.2-x86_64-linux-gnu/sig/ffi/library.rbs +0 -42
  1083. data/vendor/bundle/ruby/3.3.0/gems/ffi-1.17.2-x86_64-linux-gnu/sig/ffi/native_type.rbs +0 -86
  1084. data/vendor/bundle/ruby/3.3.0/gems/ffi-1.17.2-x86_64-linux-gnu/sig/ffi/pointer.rbs +0 -42
  1085. data/vendor/bundle/ruby/3.3.0/gems/ffi-1.17.2-x86_64-linux-gnu/sig/ffi/struct.rbs +0 -76
  1086. data/vendor/bundle/ruby/3.3.0/gems/ffi-1.17.2-x86_64-linux-gnu/sig/ffi/struct_by_reference.rbs +0 -11
  1087. data/vendor/bundle/ruby/3.3.0/gems/ffi-1.17.2-x86_64-linux-gnu/sig/ffi/struct_by_value.rbs +0 -7
  1088. data/vendor/bundle/ruby/3.3.0/gems/ffi-1.17.2-x86_64-linux-gnu/sig/ffi/struct_layout.rbs +0 -9
  1089. data/vendor/bundle/ruby/3.3.0/gems/ffi-1.17.2-x86_64-linux-gnu/sig/ffi/struct_layout_builder.rbs +0 -5
  1090. data/vendor/bundle/ruby/3.3.0/gems/ffi-1.17.2-x86_64-linux-gnu/sig/ffi/type.rbs +0 -39
  1091. data/vendor/bundle/ruby/3.3.0/gems/ffi-1.17.2-x86_64-linux-gnu/sig/ffi.rbs +0 -26
  1092. data/vendor/bundle/ruby/3.3.0/gems/json-2.13.0/BSDL +0 -22
  1093. data/vendor/bundle/ruby/3.3.0/gems/json-2.13.0/CHANGES.md +0 -652
  1094. data/vendor/bundle/ruby/3.3.0/gems/json-2.13.0/COPYING +0 -56
  1095. data/vendor/bundle/ruby/3.3.0/gems/json-2.13.0/LEGAL +0 -8
  1096. data/vendor/bundle/ruby/3.3.0/gems/json-2.13.0/README.md +0 -281
  1097. data/vendor/bundle/ruby/3.3.0/gems/json-2.13.0/ext/json/ext/fbuffer/fbuffer.h +0 -270
  1098. data/vendor/bundle/ruby/3.3.0/gems/json-2.13.0/ext/json/ext/generator/Makefile +0 -269
  1099. data/vendor/bundle/ruby/3.3.0/gems/json-2.13.0/ext/json/ext/generator/extconf.rb +0 -16
  1100. data/vendor/bundle/ruby/3.3.0/gems/json-2.13.0/ext/json/ext/generator/generator.c +0 -2139
  1101. data/vendor/bundle/ruby/3.3.0/gems/json-2.13.0/ext/json/ext/parser/Makefile +0 -269
  1102. data/vendor/bundle/ruby/3.3.0/gems/json-2.13.0/ext/json/ext/parser/extconf.rb +0 -15
  1103. data/vendor/bundle/ruby/3.3.0/gems/json-2.13.0/ext/json/ext/parser/parser.c +0 -1507
  1104. data/vendor/bundle/ruby/3.3.0/gems/json-2.13.0/ext/json/ext/simd/conf.rb +0 -20
  1105. data/vendor/bundle/ruby/3.3.0/gems/json-2.13.0/ext/json/ext/simd/simd.h +0 -187
  1106. data/vendor/bundle/ruby/3.3.0/gems/json-2.13.0/ext/json/ext/vendor/fpconv.c +0 -479
  1107. data/vendor/bundle/ruby/3.3.0/gems/json-2.13.0/ext/json/ext/vendor/jeaiii-ltoa.h +0 -267
  1108. data/vendor/bundle/ruby/3.3.0/gems/json-2.13.0/json.gemspec +0 -62
  1109. data/vendor/bundle/ruby/3.3.0/gems/json-2.13.0/lib/json/add/bigdecimal.rb +0 -58
  1110. data/vendor/bundle/ruby/3.3.0/gems/json-2.13.0/lib/json/add/complex.rb +0 -51
  1111. data/vendor/bundle/ruby/3.3.0/gems/json-2.13.0/lib/json/add/core.rb +0 -12
  1112. data/vendor/bundle/ruby/3.3.0/gems/json-2.13.0/lib/json/add/date.rb +0 -54
  1113. data/vendor/bundle/ruby/3.3.0/gems/json-2.13.0/lib/json/add/date_time.rb +0 -67
  1114. data/vendor/bundle/ruby/3.3.0/gems/json-2.13.0/lib/json/add/exception.rb +0 -49
  1115. data/vendor/bundle/ruby/3.3.0/gems/json-2.13.0/lib/json/add/ostruct.rb +0 -54
  1116. data/vendor/bundle/ruby/3.3.0/gems/json-2.13.0/lib/json/add/range.rb +0 -54
  1117. data/vendor/bundle/ruby/3.3.0/gems/json-2.13.0/lib/json/add/rational.rb +0 -49
  1118. data/vendor/bundle/ruby/3.3.0/gems/json-2.13.0/lib/json/add/regexp.rb +0 -48
  1119. data/vendor/bundle/ruby/3.3.0/gems/json-2.13.0/lib/json/add/set.rb +0 -48
  1120. data/vendor/bundle/ruby/3.3.0/gems/json-2.13.0/lib/json/add/struct.rb +0 -52
  1121. data/vendor/bundle/ruby/3.3.0/gems/json-2.13.0/lib/json/add/symbol.rb +0 -52
  1122. data/vendor/bundle/ruby/3.3.0/gems/json-2.13.0/lib/json/add/time.rb +0 -52
  1123. data/vendor/bundle/ruby/3.3.0/gems/json-2.13.0/lib/json/common.rb +0 -1104
  1124. data/vendor/bundle/ruby/3.3.0/gems/json-2.13.0/lib/json/ext/generator/state.rb +0 -106
  1125. data/vendor/bundle/ruby/3.3.0/gems/json-2.13.0/lib/json/ext/generator.so +0 -0
  1126. data/vendor/bundle/ruby/3.3.0/gems/json-2.13.0/lib/json/ext/parser.so +0 -0
  1127. data/vendor/bundle/ruby/3.3.0/gems/json-2.13.0/lib/json/ext.rb +0 -45
  1128. data/vendor/bundle/ruby/3.3.0/gems/json-2.13.0/lib/json/generic_object.rb +0 -75
  1129. data/vendor/bundle/ruby/3.3.0/gems/json-2.13.0/lib/json/truffle_ruby/generator.rb +0 -690
  1130. data/vendor/bundle/ruby/3.3.0/gems/json-2.13.0/lib/json/version.rb +0 -5
  1131. data/vendor/bundle/ruby/3.3.0/gems/json-2.13.0/lib/json.rb +0 -620
  1132. data/vendor/bundle/ruby/3.3.0/gems/power_assert-2.0.5/.github/dependabot.yml +0 -6
  1133. data/vendor/bundle/ruby/3.3.0/gems/power_assert-2.0.5/.github/workflows/ci.yml +0 -46
  1134. data/vendor/bundle/ruby/3.3.0/gems/power_assert-2.0.5/.gitignore +0 -9
  1135. data/vendor/bundle/ruby/3.3.0/gems/power_assert-2.0.5/BSDL +0 -22
  1136. data/vendor/bundle/ruby/3.3.0/gems/power_assert-2.0.5/COPYING +0 -57
  1137. data/vendor/bundle/ruby/3.3.0/gems/power_assert-2.0.5/Gemfile +0 -19
  1138. data/vendor/bundle/ruby/3.3.0/gems/power_assert-2.0.5/LEGAL +0 -4
  1139. data/vendor/bundle/ruby/3.3.0/gems/power_assert-2.0.5/README.md +0 -98
  1140. data/vendor/bundle/ruby/3.3.0/gems/power_assert-2.0.5/Rakefile +0 -59
  1141. data/vendor/bundle/ruby/3.3.0/gems/power_assert-2.0.5/lib/power_assert/colorize.rb +0 -7
  1142. data/vendor/bundle/ruby/3.3.0/gems/power_assert-2.0.5/lib/power_assert/configuration.rb +0 -46
  1143. data/vendor/bundle/ruby/3.3.0/gems/power_assert-2.0.5/lib/power_assert/context.rb +0 -233
  1144. data/vendor/bundle/ruby/3.3.0/gems/power_assert-2.0.5/lib/power_assert/enable_tracepoint_events.rb +0 -62
  1145. data/vendor/bundle/ruby/3.3.0/gems/power_assert-2.0.5/lib/power_assert/inspector.rb +0 -66
  1146. data/vendor/bundle/ruby/3.3.0/gems/power_assert-2.0.5/lib/power_assert/parser.rb +0 -251
  1147. data/vendor/bundle/ruby/3.3.0/gems/power_assert-2.0.5/lib/power_assert/version.rb +0 -3
  1148. data/vendor/bundle/ruby/3.3.0/gems/power_assert-2.0.5/lib/power_assert.rb +0 -93
  1149. data/vendor/bundle/ruby/3.3.0/gems/power_assert-2.0.5/power_assert.gemspec +0 -24
  1150. data/vendor/bundle/ruby/3.3.0/gems/public_suffix-6.0.2/.yardopts +0 -1
  1151. data/vendor/bundle/ruby/3.3.0/gems/public_suffix-6.0.2/CHANGELOG.md +0 -498
  1152. data/vendor/bundle/ruby/3.3.0/gems/public_suffix-6.0.2/LICENSE.txt +0 -22
  1153. data/vendor/bundle/ruby/3.3.0/gems/public_suffix-6.0.2/README.md +0 -222
  1154. data/vendor/bundle/ruby/3.3.0/gems/public_suffix-6.0.2/SECURITY.md +0 -24
  1155. data/vendor/bundle/ruby/3.3.0/gems/public_suffix-6.0.2/data/list.txt +0 -15791
  1156. data/vendor/bundle/ruby/3.3.0/gems/public_suffix-6.0.2/lib/public_suffix/domain.rb +0 -235
  1157. data/vendor/bundle/ruby/3.3.0/gems/public_suffix-6.0.2/lib/public_suffix/errors.rb +0 -41
  1158. data/vendor/bundle/ruby/3.3.0/gems/public_suffix-6.0.2/lib/public_suffix/list.rb +0 -247
  1159. data/vendor/bundle/ruby/3.3.0/gems/public_suffix-6.0.2/lib/public_suffix/rule.rb +0 -350
  1160. data/vendor/bundle/ruby/3.3.0/gems/public_suffix-6.0.2/lib/public_suffix/version.rb +0 -14
  1161. data/vendor/bundle/ruby/3.3.0/gems/public_suffix-6.0.2/lib/public_suffix.rb +0 -177
  1162. data/vendor/bundle/ruby/3.3.0/gems/rake-13.0.6/History.rdoc +0 -2403
  1163. data/vendor/bundle/ruby/3.3.0/gems/rake-13.0.6/MIT-LICENSE +0 -21
  1164. data/vendor/bundle/ruby/3.3.0/gems/rake-13.0.6/README.rdoc +0 -155
  1165. data/vendor/bundle/ruby/3.3.0/gems/rake-13.0.6/doc/command_line_usage.rdoc +0 -158
  1166. data/vendor/bundle/ruby/3.3.0/gems/rake-13.0.6/doc/example/Rakefile1 +0 -38
  1167. data/vendor/bundle/ruby/3.3.0/gems/rake-13.0.6/doc/example/Rakefile2 +0 -35
  1168. data/vendor/bundle/ruby/3.3.0/gems/rake-13.0.6/doc/example/a.c +0 -6
  1169. data/vendor/bundle/ruby/3.3.0/gems/rake-13.0.6/doc/example/b.c +0 -6
  1170. data/vendor/bundle/ruby/3.3.0/gems/rake-13.0.6/doc/example/main.c +0 -11
  1171. data/vendor/bundle/ruby/3.3.0/gems/rake-13.0.6/doc/glossary.rdoc +0 -42
  1172. data/vendor/bundle/ruby/3.3.0/gems/rake-13.0.6/doc/jamis.rb +0 -592
  1173. data/vendor/bundle/ruby/3.3.0/gems/rake-13.0.6/doc/proto_rake.rdoc +0 -127
  1174. data/vendor/bundle/ruby/3.3.0/gems/rake-13.0.6/doc/rake.1 +0 -156
  1175. data/vendor/bundle/ruby/3.3.0/gems/rake-13.0.6/doc/rakefile.rdoc +0 -622
  1176. data/vendor/bundle/ruby/3.3.0/gems/rake-13.0.6/doc/rational.rdoc +0 -151
  1177. data/vendor/bundle/ruby/3.3.0/gems/rake-13.0.6/exe/rake +0 -27
  1178. data/vendor/bundle/ruby/3.3.0/gems/rake-13.0.6/lib/rake/application.rb +0 -831
  1179. data/vendor/bundle/ruby/3.3.0/gems/rake-13.0.6/lib/rake/backtrace.rb +0 -24
  1180. data/vendor/bundle/ruby/3.3.0/gems/rake-13.0.6/lib/rake/clean.rb +0 -78
  1181. data/vendor/bundle/ruby/3.3.0/gems/rake-13.0.6/lib/rake/cloneable.rb +0 -17
  1182. data/vendor/bundle/ruby/3.3.0/gems/rake-13.0.6/lib/rake/cpu_counter.rb +0 -107
  1183. data/vendor/bundle/ruby/3.3.0/gems/rake-13.0.6/lib/rake/default_loader.rb +0 -15
  1184. data/vendor/bundle/ruby/3.3.0/gems/rake-13.0.6/lib/rake/dsl_definition.rb +0 -195
  1185. data/vendor/bundle/ruby/3.3.0/gems/rake-13.0.6/lib/rake/early_time.rb +0 -22
  1186. data/vendor/bundle/ruby/3.3.0/gems/rake-13.0.6/lib/rake/ext/core.rb +0 -26
  1187. data/vendor/bundle/ruby/3.3.0/gems/rake-13.0.6/lib/rake/ext/string.rb +0 -176
  1188. data/vendor/bundle/ruby/3.3.0/gems/rake-13.0.6/lib/rake/file_creation_task.rb +0 -25
  1189. data/vendor/bundle/ruby/3.3.0/gems/rake-13.0.6/lib/rake/file_list.rb +0 -435
  1190. data/vendor/bundle/ruby/3.3.0/gems/rake-13.0.6/lib/rake/file_task.rb +0 -54
  1191. data/vendor/bundle/ruby/3.3.0/gems/rake-13.0.6/lib/rake/file_utils.rb +0 -134
  1192. data/vendor/bundle/ruby/3.3.0/gems/rake-13.0.6/lib/rake/file_utils_ext.rb +0 -134
  1193. data/vendor/bundle/ruby/3.3.0/gems/rake-13.0.6/lib/rake/invocation_chain.rb +0 -57
  1194. data/vendor/bundle/ruby/3.3.0/gems/rake-13.0.6/lib/rake/invocation_exception_mixin.rb +0 -17
  1195. data/vendor/bundle/ruby/3.3.0/gems/rake-13.0.6/lib/rake/late_time.rb +0 -18
  1196. data/vendor/bundle/ruby/3.3.0/gems/rake-13.0.6/lib/rake/linked_list.rb +0 -112
  1197. data/vendor/bundle/ruby/3.3.0/gems/rake-13.0.6/lib/rake/loaders/makefile.rb +0 -54
  1198. data/vendor/bundle/ruby/3.3.0/gems/rake-13.0.6/lib/rake/multi_task.rb +0 -14
  1199. data/vendor/bundle/ruby/3.3.0/gems/rake-13.0.6/lib/rake/name_space.rb +0 -38
  1200. data/vendor/bundle/ruby/3.3.0/gems/rake-13.0.6/lib/rake/packagetask.rb +0 -222
  1201. data/vendor/bundle/ruby/3.3.0/gems/rake-13.0.6/lib/rake/phony.rb +0 -16
  1202. data/vendor/bundle/ruby/3.3.0/gems/rake-13.0.6/lib/rake/private_reader.rb +0 -21
  1203. data/vendor/bundle/ruby/3.3.0/gems/rake-13.0.6/lib/rake/promise.rb +0 -100
  1204. data/vendor/bundle/ruby/3.3.0/gems/rake-13.0.6/lib/rake/pseudo_status.rb +0 -30
  1205. data/vendor/bundle/ruby/3.3.0/gems/rake-13.0.6/lib/rake/rake_module.rb +0 -67
  1206. data/vendor/bundle/ruby/3.3.0/gems/rake-13.0.6/lib/rake/rake_test_loader.rb +0 -27
  1207. data/vendor/bundle/ruby/3.3.0/gems/rake-13.0.6/lib/rake/rule_recursion_overflow_error.rb +0 -20
  1208. data/vendor/bundle/ruby/3.3.0/gems/rake-13.0.6/lib/rake/scope.rb +0 -43
  1209. data/vendor/bundle/ruby/3.3.0/gems/rake-13.0.6/lib/rake/task.rb +0 -434
  1210. data/vendor/bundle/ruby/3.3.0/gems/rake-13.0.6/lib/rake/task_argument_error.rb +0 -8
  1211. data/vendor/bundle/ruby/3.3.0/gems/rake-13.0.6/lib/rake/task_arguments.rb +0 -109
  1212. data/vendor/bundle/ruby/3.3.0/gems/rake-13.0.6/lib/rake/task_manager.rb +0 -331
  1213. data/vendor/bundle/ruby/3.3.0/gems/rake-13.0.6/lib/rake/tasklib.rb +0 -12
  1214. data/vendor/bundle/ruby/3.3.0/gems/rake-13.0.6/lib/rake/testtask.rb +0 -189
  1215. data/vendor/bundle/ruby/3.3.0/gems/rake-13.0.6/lib/rake/thread_history_display.rb +0 -49
  1216. data/vendor/bundle/ruby/3.3.0/gems/rake-13.0.6/lib/rake/thread_pool.rb +0 -163
  1217. data/vendor/bundle/ruby/3.3.0/gems/rake-13.0.6/lib/rake/trace_output.rb +0 -23
  1218. data/vendor/bundle/ruby/3.3.0/gems/rake-13.0.6/lib/rake/version.rb +0 -10
  1219. data/vendor/bundle/ruby/3.3.0/gems/rake-13.0.6/lib/rake/win32.rb +0 -51
  1220. data/vendor/bundle/ruby/3.3.0/gems/rake-13.0.6/lib/rake.rb +0 -71
  1221. data/vendor/bundle/ruby/3.3.0/gems/rake-13.0.6/rake.gemspec +0 -100
  1222. data/vendor/bundle/ruby/3.3.0/gems/test-unit-3.3.9/BSDL +0 -24
  1223. data/vendor/bundle/ruby/3.3.0/gems/test-unit-3.3.9/COPYING +0 -64
  1224. data/vendor/bundle/ruby/3.3.0/gems/test-unit-3.3.9/PSFL +0 -271
  1225. data/vendor/bundle/ruby/3.3.0/gems/test-unit-3.3.9/README.md +0 -97
  1226. data/vendor/bundle/ruby/3.3.0/gems/test-unit-3.3.9/Rakefile +0 -66
  1227. data/vendor/bundle/ruby/3.3.0/gems/test-unit-3.3.9/doc/text/getting-started.md +0 -246
  1228. data/vendor/bundle/ruby/3.3.0/gems/test-unit-3.3.9/doc/text/how-to.md +0 -90
  1229. data/vendor/bundle/ruby/3.3.0/gems/test-unit-3.3.9/doc/text/news.md +0 -1533
  1230. data/vendor/bundle/ruby/3.3.0/gems/test-unit-3.3.9/lib/test/unit/assertion-failed-error.rb +0 -25
  1231. data/vendor/bundle/ruby/3.3.0/gems/test-unit-3.3.9/lib/test/unit/assertions.rb +0 -2256
  1232. data/vendor/bundle/ruby/3.3.0/gems/test-unit-3.3.9/lib/test/unit/attribute-matcher.rb +0 -26
  1233. data/vendor/bundle/ruby/3.3.0/gems/test-unit-3.3.9/lib/test/unit/attribute.rb +0 -227
  1234. data/vendor/bundle/ruby/3.3.0/gems/test-unit-3.3.9/lib/test/unit/auto-runner-loader.rb +0 -17
  1235. data/vendor/bundle/ruby/3.3.0/gems/test-unit-3.3.9/lib/test/unit/autorunner.rb +0 -569
  1236. data/vendor/bundle/ruby/3.3.0/gems/test-unit-3.3.9/lib/test/unit/code-snippet-fetcher.rb +0 -58
  1237. data/vendor/bundle/ruby/3.3.0/gems/test-unit-3.3.9/lib/test/unit/collector/descendant.rb +0 -19
  1238. data/vendor/bundle/ruby/3.3.0/gems/test-unit-3.3.9/lib/test/unit/collector/dir.rb +0 -108
  1239. data/vendor/bundle/ruby/3.3.0/gems/test-unit-3.3.9/lib/test/unit/collector/load.rb +0 -197
  1240. data/vendor/bundle/ruby/3.3.0/gems/test-unit-3.3.9/lib/test/unit/collector/objectspace.rb +0 -34
  1241. data/vendor/bundle/ruby/3.3.0/gems/test-unit-3.3.9/lib/test/unit/collector/xml.rb +0 -249
  1242. data/vendor/bundle/ruby/3.3.0/gems/test-unit-3.3.9/lib/test/unit/collector.rb +0 -73
  1243. data/vendor/bundle/ruby/3.3.0/gems/test-unit-3.3.9/lib/test/unit/color-scheme.rb +0 -216
  1244. data/vendor/bundle/ruby/3.3.0/gems/test-unit-3.3.9/lib/test/unit/color.rb +0 -134
  1245. data/vendor/bundle/ruby/3.3.0/gems/test-unit-3.3.9/lib/test/unit/data-sets.rb +0 -116
  1246. data/vendor/bundle/ruby/3.3.0/gems/test-unit-3.3.9/lib/test/unit/data.rb +0 -371
  1247. data/vendor/bundle/ruby/3.3.0/gems/test-unit-3.3.9/lib/test/unit/diff.rb +0 -745
  1248. data/vendor/bundle/ruby/3.3.0/gems/test-unit-3.3.9/lib/test/unit/error.rb +0 -158
  1249. data/vendor/bundle/ruby/3.3.0/gems/test-unit-3.3.9/lib/test/unit/exception-handler.rb +0 -82
  1250. data/vendor/bundle/ruby/3.3.0/gems/test-unit-3.3.9/lib/test/unit/failure.rb +0 -169
  1251. data/vendor/bundle/ruby/3.3.0/gems/test-unit-3.3.9/lib/test/unit/fault-location-detector.rb +0 -100
  1252. data/vendor/bundle/ruby/3.3.0/gems/test-unit-3.3.9/lib/test/unit/fixture.rb +0 -298
  1253. data/vendor/bundle/ruby/3.3.0/gems/test-unit-3.3.9/lib/test/unit/notification.rb +0 -138
  1254. data/vendor/bundle/ruby/3.3.0/gems/test-unit-3.3.9/lib/test/unit/omission.rb +0 -198
  1255. data/vendor/bundle/ruby/3.3.0/gems/test-unit-3.3.9/lib/test/unit/pending.rb +0 -155
  1256. data/vendor/bundle/ruby/3.3.0/gems/test-unit-3.3.9/lib/test/unit/priority.rb +0 -196
  1257. data/vendor/bundle/ruby/3.3.0/gems/test-unit-3.3.9/lib/test/unit/runner/console.rb +0 -67
  1258. data/vendor/bundle/ruby/3.3.0/gems/test-unit-3.3.9/lib/test/unit/runner/emacs.rb +0 -8
  1259. data/vendor/bundle/ruby/3.3.0/gems/test-unit-3.3.9/lib/test/unit/runner/xml.rb +0 -15
  1260. data/vendor/bundle/ruby/3.3.0/gems/test-unit-3.3.9/lib/test/unit/test-suite-creator.rb +0 -103
  1261. data/vendor/bundle/ruby/3.3.0/gems/test-unit-3.3.9/lib/test/unit/testcase.rb +0 -899
  1262. data/vendor/bundle/ruby/3.3.0/gems/test-unit-3.3.9/lib/test/unit/testresult.rb +0 -132
  1263. data/vendor/bundle/ruby/3.3.0/gems/test-unit-3.3.9/lib/test/unit/testsuite.rb +0 -175
  1264. data/vendor/bundle/ruby/3.3.0/gems/test-unit-3.3.9/lib/test/unit/ui/console/outputlevel.rb +0 -15
  1265. data/vendor/bundle/ruby/3.3.0/gems/test-unit-3.3.9/lib/test/unit/ui/console/testrunner.rb +0 -733
  1266. data/vendor/bundle/ruby/3.3.0/gems/test-unit-3.3.9/lib/test/unit/ui/emacs/testrunner.rb +0 -49
  1267. data/vendor/bundle/ruby/3.3.0/gems/test-unit-3.3.9/lib/test/unit/ui/testrunner.rb +0 -53
  1268. data/vendor/bundle/ruby/3.3.0/gems/test-unit-3.3.9/lib/test/unit/ui/testrunnermediator.rb +0 -114
  1269. data/vendor/bundle/ruby/3.3.0/gems/test-unit-3.3.9/lib/test/unit/ui/testrunnerutilities.rb +0 -41
  1270. data/vendor/bundle/ruby/3.3.0/gems/test-unit-3.3.9/lib/test/unit/ui/xml/testrunner.rb +0 -224
  1271. data/vendor/bundle/ruby/3.3.0/gems/test-unit-3.3.9/lib/test/unit/util/backtracefilter.rb +0 -59
  1272. data/vendor/bundle/ruby/3.3.0/gems/test-unit-3.3.9/lib/test/unit/util/method-owner-finder.rb +0 -28
  1273. data/vendor/bundle/ruby/3.3.0/gems/test-unit-3.3.9/lib/test/unit/util/observable.rb +0 -90
  1274. data/vendor/bundle/ruby/3.3.0/gems/test-unit-3.3.9/lib/test/unit/util/output.rb +0 -32
  1275. data/vendor/bundle/ruby/3.3.0/gems/test-unit-3.3.9/lib/test/unit/util/procwrapper.rb +0 -48
  1276. data/vendor/bundle/ruby/3.3.0/gems/test-unit-3.3.9/lib/test/unit/version.rb +0 -5
  1277. data/vendor/bundle/ruby/3.3.0/gems/test-unit-3.3.9/lib/test/unit.rb +0 -519
  1278. data/vendor/bundle/ruby/3.3.0/gems/test-unit-3.3.9/lib/test-unit.rb +0 -17
  1279. data/vendor/bundle/ruby/3.3.0/gems/test-unit-3.3.9/sample/adder.rb +0 -13
  1280. data/vendor/bundle/ruby/3.3.0/gems/test-unit-3.3.9/sample/subtracter.rb +0 -12
  1281. data/vendor/bundle/ruby/3.3.0/gems/test-unit-3.3.9/sample/test_adder.rb +0 -20
  1282. data/vendor/bundle/ruby/3.3.0/gems/test-unit-3.3.9/sample/test_subtracter.rb +0 -20
  1283. data/vendor/bundle/ruby/3.3.0/gems/test-unit-3.3.9/sample/test_user.rb +0 -23
  1284. data/vendor/bundle/ruby/3.3.0/gems/test-unit-3.3.9/test/collector/test-descendant.rb +0 -182
  1285. data/vendor/bundle/ruby/3.3.0/gems/test-unit-3.3.9/test/collector/test-load.rb +0 -475
  1286. data/vendor/bundle/ruby/3.3.0/gems/test-unit-3.3.9/test/collector/test_dir.rb +0 -407
  1287. data/vendor/bundle/ruby/3.3.0/gems/test-unit-3.3.9/test/collector/test_objectspace.rb +0 -102
  1288. data/vendor/bundle/ruby/3.3.0/gems/test-unit-3.3.9/test/fixtures/header-label.csv +0 -3
  1289. data/vendor/bundle/ruby/3.3.0/gems/test-unit-3.3.9/test/fixtures/header-label.tsv +0 -3
  1290. data/vendor/bundle/ruby/3.3.0/gems/test-unit-3.3.9/test/fixtures/header.csv +0 -3
  1291. data/vendor/bundle/ruby/3.3.0/gems/test-unit-3.3.9/test/fixtures/header.tsv +0 -3
  1292. data/vendor/bundle/ruby/3.3.0/gems/test-unit-3.3.9/test/fixtures/no-header.csv +0 -2
  1293. data/vendor/bundle/ruby/3.3.0/gems/test-unit-3.3.9/test/fixtures/no-header.tsv +0 -2
  1294. data/vendor/bundle/ruby/3.3.0/gems/test-unit-3.3.9/test/fixtures/plus.csv +0 -3
  1295. data/vendor/bundle/ruby/3.3.0/gems/test-unit-3.3.9/test/run-test.rb +0 -22
  1296. data/vendor/bundle/ruby/3.3.0/gems/test-unit-3.3.9/test/test-assertions.rb +0 -2187
  1297. data/vendor/bundle/ruby/3.3.0/gems/test-unit-3.3.9/test/test-attribute-matcher.rb +0 -38
  1298. data/vendor/bundle/ruby/3.3.0/gems/test-unit-3.3.9/test/test-attribute.rb +0 -123
  1299. data/vendor/bundle/ruby/3.3.0/gems/test-unit-3.3.9/test/test-code-snippet.rb +0 -79
  1300. data/vendor/bundle/ruby/3.3.0/gems/test-unit-3.3.9/test/test-color-scheme.rb +0 -123
  1301. data/vendor/bundle/ruby/3.3.0/gems/test-unit-3.3.9/test/test-color.rb +0 -47
  1302. data/vendor/bundle/ruby/3.3.0/gems/test-unit-3.3.9/test/test-data.rb +0 -419
  1303. data/vendor/bundle/ruby/3.3.0/gems/test-unit-3.3.9/test/test-diff.rb +0 -518
  1304. data/vendor/bundle/ruby/3.3.0/gems/test-unit-3.3.9/test/test-emacs-runner.rb +0 -60
  1305. data/vendor/bundle/ruby/3.3.0/gems/test-unit-3.3.9/test/test-error.rb +0 -26
  1306. data/vendor/bundle/ruby/3.3.0/gems/test-unit-3.3.9/test/test-failure.rb +0 -33
  1307. data/vendor/bundle/ruby/3.3.0/gems/test-unit-3.3.9/test/test-fault-location-detector.rb +0 -163
  1308. data/vendor/bundle/ruby/3.3.0/gems/test-unit-3.3.9/test/test-fixture.rb +0 -713
  1309. data/vendor/bundle/ruby/3.3.0/gems/test-unit-3.3.9/test/test-notification.rb +0 -33
  1310. data/vendor/bundle/ruby/3.3.0/gems/test-unit-3.3.9/test/test-omission.rb +0 -81
  1311. data/vendor/bundle/ruby/3.3.0/gems/test-unit-3.3.9/test/test-pending.rb +0 -70
  1312. data/vendor/bundle/ruby/3.3.0/gems/test-unit-3.3.9/test/test-priority.rb +0 -184
  1313. data/vendor/bundle/ruby/3.3.0/gems/test-unit-3.3.9/test/test-test-case.rb +0 -1284
  1314. data/vendor/bundle/ruby/3.3.0/gems/test-unit-3.3.9/test/test-test-result.rb +0 -113
  1315. data/vendor/bundle/ruby/3.3.0/gems/test-unit-3.3.9/test/test-test-suite-creator.rb +0 -97
  1316. data/vendor/bundle/ruby/3.3.0/gems/test-unit-3.3.9/test/test-test-suite.rb +0 -151
  1317. data/vendor/bundle/ruby/3.3.0/gems/test-unit-3.3.9/test/testunit-test-util.rb +0 -33
  1318. data/vendor/bundle/ruby/3.3.0/gems/test-unit-3.3.9/test/ui/test_testrunmediator.rb +0 -20
  1319. data/vendor/bundle/ruby/3.3.0/gems/test-unit-3.3.9/test/util/test-method-owner-finder.rb +0 -38
  1320. data/vendor/bundle/ruby/3.3.0/gems/test-unit-3.3.9/test/util/test-output.rb +0 -11
  1321. data/vendor/bundle/ruby/3.3.0/gems/test-unit-3.3.9/test/util/test_backtracefilter.rb +0 -52
  1322. data/vendor/bundle/ruby/3.3.0/gems/test-unit-3.3.9/test/util/test_observable.rb +0 -102
  1323. data/vendor/bundle/ruby/3.3.0/gems/test-unit-3.3.9/test/util/test_procwrapper.rb +0 -36
  1324. data/vendor/bundle/ruby/3.3.0/gems/typhoeus-1.4.1/.github/workflows/ci.yml +0 -30
  1325. data/vendor/bundle/ruby/3.3.0/gems/typhoeus-1.4.1/.github/workflows/experimental.yml +0 -33
  1326. data/vendor/bundle/ruby/3.3.0/gems/typhoeus-1.4.1/.gitignore +0 -8
  1327. data/vendor/bundle/ruby/3.3.0/gems/typhoeus-1.4.1/.rspec +0 -4
  1328. data/vendor/bundle/ruby/3.3.0/gems/typhoeus-1.4.1/CHANGELOG.md +0 -410
  1329. data/vendor/bundle/ruby/3.3.0/gems/typhoeus-1.4.1/CONTRIBUTING.md +0 -20
  1330. data/vendor/bundle/ruby/3.3.0/gems/typhoeus-1.4.1/Gemfile +0 -36
  1331. data/vendor/bundle/ruby/3.3.0/gems/typhoeus-1.4.1/Guardfile +0 -9
  1332. data/vendor/bundle/ruby/3.3.0/gems/typhoeus-1.4.1/LICENSE +0 -22
  1333. data/vendor/bundle/ruby/3.3.0/gems/typhoeus-1.4.1/README.md +0 -588
  1334. data/vendor/bundle/ruby/3.3.0/gems/typhoeus-1.4.1/Rakefile +0 -38
  1335. data/vendor/bundle/ruby/3.3.0/gems/typhoeus-1.4.1/UPGRADE.md +0 -55
  1336. data/vendor/bundle/ruby/3.3.0/gems/typhoeus-1.4.1/lib/rack/typhoeus/middleware/params_decoder/helper.rb +0 -76
  1337. data/vendor/bundle/ruby/3.3.0/gems/typhoeus-1.4.1/lib/rack/typhoeus/middleware/params_decoder.rb +0 -57
  1338. data/vendor/bundle/ruby/3.3.0/gems/typhoeus-1.4.1/lib/rack/typhoeus.rb +0 -1
  1339. data/vendor/bundle/ruby/3.3.0/gems/typhoeus-1.4.1/lib/typhoeus/adapters/faraday.rb +0 -180
  1340. data/vendor/bundle/ruby/3.3.0/gems/typhoeus-1.4.1/lib/typhoeus/cache/dalli.rb +0 -28
  1341. data/vendor/bundle/ruby/3.3.0/gems/typhoeus-1.4.1/lib/typhoeus/cache/rails.rb +0 -28
  1342. data/vendor/bundle/ruby/3.3.0/gems/typhoeus-1.4.1/lib/typhoeus/cache/redis.rb +0 -35
  1343. data/vendor/bundle/ruby/3.3.0/gems/typhoeus-1.4.1/lib/typhoeus/config.rb +0 -85
  1344. data/vendor/bundle/ruby/3.3.0/gems/typhoeus-1.4.1/lib/typhoeus/easy_factory.rb +0 -206
  1345. data/vendor/bundle/ruby/3.3.0/gems/typhoeus-1.4.1/lib/typhoeus/errors/no_stub.rb +0 -12
  1346. data/vendor/bundle/ruby/3.3.0/gems/typhoeus-1.4.1/lib/typhoeus/errors/typhoeus_error.rb +0 -8
  1347. data/vendor/bundle/ruby/3.3.0/gems/typhoeus-1.4.1/lib/typhoeus/errors.rb +0 -9
  1348. data/vendor/bundle/ruby/3.3.0/gems/typhoeus-1.4.1/lib/typhoeus/expectation.rb +0 -217
  1349. data/vendor/bundle/ruby/3.3.0/gems/typhoeus-1.4.1/lib/typhoeus/hydra/addable.rb +0 -23
  1350. data/vendor/bundle/ruby/3.3.0/gems/typhoeus-1.4.1/lib/typhoeus/hydra/before.rb +0 -31
  1351. data/vendor/bundle/ruby/3.3.0/gems/typhoeus-1.4.1/lib/typhoeus/hydra/block_connection.rb +0 -35
  1352. data/vendor/bundle/ruby/3.3.0/gems/typhoeus-1.4.1/lib/typhoeus/hydra/cacheable.rb +0 -15
  1353. data/vendor/bundle/ruby/3.3.0/gems/typhoeus-1.4.1/lib/typhoeus/hydra/memoizable.rb +0 -56
  1354. data/vendor/bundle/ruby/3.3.0/gems/typhoeus-1.4.1/lib/typhoeus/hydra/queueable.rb +0 -83
  1355. data/vendor/bundle/ruby/3.3.0/gems/typhoeus-1.4.1/lib/typhoeus/hydra/runnable.rb +0 -19
  1356. data/vendor/bundle/ruby/3.3.0/gems/typhoeus-1.4.1/lib/typhoeus/hydra/stubbable.rb +0 -28
  1357. data/vendor/bundle/ruby/3.3.0/gems/typhoeus-1.4.1/lib/typhoeus/hydra.rb +0 -95
  1358. data/vendor/bundle/ruby/3.3.0/gems/typhoeus-1.4.1/lib/typhoeus/pool.rb +0 -70
  1359. data/vendor/bundle/ruby/3.3.0/gems/typhoeus-1.4.1/lib/typhoeus/railtie.rb +0 -12
  1360. data/vendor/bundle/ruby/3.3.0/gems/typhoeus-1.4.1/lib/typhoeus/request/actions.rb +0 -125
  1361. data/vendor/bundle/ruby/3.3.0/gems/typhoeus-1.4.1/lib/typhoeus/request/before.rb +0 -30
  1362. data/vendor/bundle/ruby/3.3.0/gems/typhoeus-1.4.1/lib/typhoeus/request/block_connection.rb +0 -52
  1363. data/vendor/bundle/ruby/3.3.0/gems/typhoeus-1.4.1/lib/typhoeus/request/cacheable.rb +0 -38
  1364. data/vendor/bundle/ruby/3.3.0/gems/typhoeus-1.4.1/lib/typhoeus/request/callbacks.rb +0 -151
  1365. data/vendor/bundle/ruby/3.3.0/gems/typhoeus-1.4.1/lib/typhoeus/request/marshal.rb +0 -22
  1366. data/vendor/bundle/ruby/3.3.0/gems/typhoeus-1.4.1/lib/typhoeus/request/memoizable.rb +0 -38
  1367. data/vendor/bundle/ruby/3.3.0/gems/typhoeus-1.4.1/lib/typhoeus/request/operations.rb +0 -40
  1368. data/vendor/bundle/ruby/3.3.0/gems/typhoeus-1.4.1/lib/typhoeus/request/responseable.rb +0 -29
  1369. data/vendor/bundle/ruby/3.3.0/gems/typhoeus-1.4.1/lib/typhoeus/request/streamable.rb +0 -34
  1370. data/vendor/bundle/ruby/3.3.0/gems/typhoeus-1.4.1/lib/typhoeus/request/stubbable.rb +0 -30
  1371. data/vendor/bundle/ruby/3.3.0/gems/typhoeus-1.4.1/lib/typhoeus/request.rb +0 -223
  1372. data/vendor/bundle/ruby/3.3.0/gems/typhoeus-1.4.1/lib/typhoeus/response/cacheable.rb +0 -14
  1373. data/vendor/bundle/ruby/3.3.0/gems/typhoeus-1.4.1/lib/typhoeus/response/header.rb +0 -105
  1374. data/vendor/bundle/ruby/3.3.0/gems/typhoeus-1.4.1/lib/typhoeus/response/informations.rb +0 -305
  1375. data/vendor/bundle/ruby/3.3.0/gems/typhoeus-1.4.1/lib/typhoeus/response/status.rb +0 -106
  1376. data/vendor/bundle/ruby/3.3.0/gems/typhoeus-1.4.1/lib/typhoeus/response.rb +0 -68
  1377. data/vendor/bundle/ruby/3.3.0/gems/typhoeus-1.4.1/lib/typhoeus/version.rb +0 -5
  1378. data/vendor/bundle/ruby/3.3.0/gems/typhoeus-1.4.1/lib/typhoeus.rb +0 -143
  1379. data/vendor/bundle/ruby/3.3.0/gems/typhoeus-1.4.1/perf/profile.rb +0 -14
  1380. data/vendor/bundle/ruby/3.3.0/gems/typhoeus-1.4.1/perf/vs_nethttp.rb +0 -64
  1381. data/vendor/bundle/ruby/3.3.0/gems/typhoeus-1.4.1/spec/rack/typhoeus/middleware/params_decoder/helper_spec.rb +0 -156
  1382. data/vendor/bundle/ruby/3.3.0/gems/typhoeus-1.4.1/spec/rack/typhoeus/middleware/params_decoder_spec.rb +0 -31
  1383. data/vendor/bundle/ruby/3.3.0/gems/typhoeus-1.4.1/spec/spec_helper.rb +0 -29
  1384. data/vendor/bundle/ruby/3.3.0/gems/typhoeus-1.4.1/spec/support/localhost_server.rb +0 -94
  1385. data/vendor/bundle/ruby/3.3.0/gems/typhoeus-1.4.1/spec/support/memory_cache.rb +0 -15
  1386. data/vendor/bundle/ruby/3.3.0/gems/typhoeus-1.4.1/spec/support/server.rb +0 -116
  1387. data/vendor/bundle/ruby/3.3.0/gems/typhoeus-1.4.1/spec/typhoeus/adapters/faraday_spec.rb +0 -339
  1388. data/vendor/bundle/ruby/3.3.0/gems/typhoeus-1.4.1/spec/typhoeus/cache/dalli_spec.rb +0 -41
  1389. data/vendor/bundle/ruby/3.3.0/gems/typhoeus-1.4.1/spec/typhoeus/cache/redis_spec.rb +0 -41
  1390. data/vendor/bundle/ruby/3.3.0/gems/typhoeus-1.4.1/spec/typhoeus/config_spec.rb +0 -15
  1391. data/vendor/bundle/ruby/3.3.0/gems/typhoeus-1.4.1/spec/typhoeus/easy_factory_spec.rb +0 -143
  1392. data/vendor/bundle/ruby/3.3.0/gems/typhoeus-1.4.1/spec/typhoeus/errors/no_stub_spec.rb +0 -13
  1393. data/vendor/bundle/ruby/3.3.0/gems/typhoeus-1.4.1/spec/typhoeus/expectation_spec.rb +0 -280
  1394. data/vendor/bundle/ruby/3.3.0/gems/typhoeus-1.4.1/spec/typhoeus/hydra/addable_spec.rb +0 -22
  1395. data/vendor/bundle/ruby/3.3.0/gems/typhoeus-1.4.1/spec/typhoeus/hydra/before_spec.rb +0 -98
  1396. data/vendor/bundle/ruby/3.3.0/gems/typhoeus-1.4.1/spec/typhoeus/hydra/block_connection_spec.rb +0 -18
  1397. data/vendor/bundle/ruby/3.3.0/gems/typhoeus-1.4.1/spec/typhoeus/hydra/cacheable_spec.rb +0 -88
  1398. data/vendor/bundle/ruby/3.3.0/gems/typhoeus-1.4.1/spec/typhoeus/hydra/memoizable_spec.rb +0 -53
  1399. data/vendor/bundle/ruby/3.3.0/gems/typhoeus-1.4.1/spec/typhoeus/hydra/queueable_spec.rb +0 -98
  1400. data/vendor/bundle/ruby/3.3.0/gems/typhoeus-1.4.1/spec/typhoeus/hydra/runnable_spec.rb +0 -137
  1401. data/vendor/bundle/ruby/3.3.0/gems/typhoeus-1.4.1/spec/typhoeus/hydra/stubbable_spec.rb +0 -48
  1402. data/vendor/bundle/ruby/3.3.0/gems/typhoeus-1.4.1/spec/typhoeus/hydra_spec.rb +0 -22
  1403. data/vendor/bundle/ruby/3.3.0/gems/typhoeus-1.4.1/spec/typhoeus/pool_spec.rb +0 -137
  1404. data/vendor/bundle/ruby/3.3.0/gems/typhoeus-1.4.1/spec/typhoeus/request/actions_spec.rb +0 -19
  1405. data/vendor/bundle/ruby/3.3.0/gems/typhoeus-1.4.1/spec/typhoeus/request/before_spec.rb +0 -93
  1406. data/vendor/bundle/ruby/3.3.0/gems/typhoeus-1.4.1/spec/typhoeus/request/block_connection_spec.rb +0 -75
  1407. data/vendor/bundle/ruby/3.3.0/gems/typhoeus-1.4.1/spec/typhoeus/request/cacheable_spec.rb +0 -94
  1408. data/vendor/bundle/ruby/3.3.0/gems/typhoeus-1.4.1/spec/typhoeus/request/callbacks_spec.rb +0 -91
  1409. data/vendor/bundle/ruby/3.3.0/gems/typhoeus-1.4.1/spec/typhoeus/request/marshal_spec.rb +0 -60
  1410. data/vendor/bundle/ruby/3.3.0/gems/typhoeus-1.4.1/spec/typhoeus/request/memoizable_spec.rb +0 -34
  1411. data/vendor/bundle/ruby/3.3.0/gems/typhoeus-1.4.1/spec/typhoeus/request/operations_spec.rb +0 -101
  1412. data/vendor/bundle/ruby/3.3.0/gems/typhoeus-1.4.1/spec/typhoeus/request/responseable_spec.rb +0 -13
  1413. data/vendor/bundle/ruby/3.3.0/gems/typhoeus-1.4.1/spec/typhoeus/request/stubbable_spec.rb +0 -45
  1414. data/vendor/bundle/ruby/3.3.0/gems/typhoeus-1.4.1/spec/typhoeus/request_spec.rb +0 -256
  1415. data/vendor/bundle/ruby/3.3.0/gems/typhoeus-1.4.1/spec/typhoeus/response/header_spec.rb +0 -147
  1416. data/vendor/bundle/ruby/3.3.0/gems/typhoeus-1.4.1/spec/typhoeus/response/informations_spec.rb +0 -323
  1417. data/vendor/bundle/ruby/3.3.0/gems/typhoeus-1.4.1/spec/typhoeus/response/status_spec.rb +0 -256
  1418. data/vendor/bundle/ruby/3.3.0/gems/typhoeus-1.4.1/spec/typhoeus/response_spec.rb +0 -100
  1419. data/vendor/bundle/ruby/3.3.0/gems/typhoeus-1.4.1/spec/typhoeus_spec.rb +0 -105
  1420. data/vendor/bundle/ruby/3.3.0/gems/typhoeus-1.4.1/typhoeus.gemspec +0 -25
  1421. data/vendor/bundle/ruby/3.3.0/specifications/addressable-2.8.7.gemspec +0 -30
  1422. data/vendor/bundle/ruby/3.3.0/specifications/ethon-0.16.0.gemspec +0 -24
  1423. data/vendor/bundle/ruby/3.3.0/specifications/ffi-1.17.2-x86_64-linux-gnu.gemspec +0 -31
  1424. data/vendor/bundle/ruby/3.3.0/specifications/json-2.13.0.gemspec +0 -0
  1425. data/vendor/bundle/ruby/3.3.0/specifications/power_assert-2.0.5.gemspec +0 -24
  1426. data/vendor/bundle/ruby/3.3.0/specifications/public_suffix-6.0.2.gemspec +0 -24
  1427. data/vendor/bundle/ruby/3.3.0/specifications/rake-13.0.6.gemspec +0 -26
  1428. data/vendor/bundle/ruby/3.3.0/specifications/test-unit-3.3.9.gemspec +0 -30
  1429. data/vendor/bundle/ruby/3.3.0/specifications/typhoeus-1.4.1.gemspec +0 -24
@@ -1,1507 +0,0 @@
1
- #include "ruby.h"
2
- #include "ruby/encoding.h"
3
-
4
- /* shims */
5
- /* This is the fallback definition from Ruby 3.4 */
6
-
7
- #ifndef RBIMPL_STDBOOL_H
8
- #if defined(__cplusplus)
9
- # if defined(HAVE_STDBOOL_H) && (__cplusplus >= 201103L)
10
- # include <cstdbool>
11
- # endif
12
- #elif defined(HAVE_STDBOOL_H)
13
- # include <stdbool.h>
14
- #elif !defined(HAVE__BOOL)
15
- typedef unsigned char _Bool;
16
- # define bool _Bool
17
- # define true ((_Bool)+1)
18
- # define false ((_Bool)+0)
19
- # define __bool_true_false_are_defined
20
- #endif
21
- #endif
22
-
23
- #include "../simd/simd.h"
24
-
25
- #ifndef RB_UNLIKELY
26
- #define RB_UNLIKELY(expr) expr
27
- #endif
28
-
29
- #ifndef RB_LIKELY
30
- #define RB_LIKELY(expr) expr
31
- #endif
32
-
33
- static VALUE mJSON, eNestingError, Encoding_UTF_8;
34
- static VALUE CNaN, CInfinity, CMinusInfinity;
35
-
36
- static ID i_chr, i_aset, i_aref,
37
- i_leftshift, i_new, i_try_convert, i_uminus, i_encode;
38
-
39
- static VALUE sym_max_nesting, sym_allow_nan, sym_allow_trailing_comma, sym_symbolize_names, sym_freeze,
40
- sym_decimal_class, sym_on_load, sym_allow_duplicate_key;
41
-
42
- static int binary_encindex;
43
- static int utf8_encindex;
44
-
45
- #ifndef HAVE_RB_HASH_BULK_INSERT
46
- // For TruffleRuby
47
- void
48
- rb_hash_bulk_insert(long count, const VALUE *pairs, VALUE hash)
49
- {
50
- long index = 0;
51
- while (index < count) {
52
- VALUE name = pairs[index++];
53
- VALUE value = pairs[index++];
54
- rb_hash_aset(hash, name, value);
55
- }
56
- RB_GC_GUARD(hash);
57
- }
58
- #endif
59
-
60
- #ifndef HAVE_RB_HASH_NEW_CAPA
61
- #define rb_hash_new_capa(n) rb_hash_new()
62
- #endif
63
-
64
-
65
- /* name cache */
66
-
67
- #include <string.h>
68
- #include <ctype.h>
69
-
70
- // Object names are likely to be repeated, and are frozen.
71
- // As such we can re-use them if we keep a cache of the ones we've seen so far,
72
- // and save much more expensive lookups into the global fstring table.
73
- // This cache implementation is deliberately simple, as we're optimizing for compactness,
74
- // to be able to fit safely on the stack.
75
- // As such, binary search into a sorted array gives a good tradeoff between compactness and
76
- // performance.
77
- #define JSON_RVALUE_CACHE_CAPA 63
78
- typedef struct rvalue_cache_struct {
79
- int length;
80
- VALUE entries[JSON_RVALUE_CACHE_CAPA];
81
- } rvalue_cache;
82
-
83
- static rb_encoding *enc_utf8;
84
-
85
- #define JSON_RVALUE_CACHE_MAX_ENTRY_LENGTH 55
86
-
87
- static inline VALUE build_interned_string(const char *str, const long length)
88
- {
89
- # ifdef HAVE_RB_ENC_INTERNED_STR
90
- return rb_enc_interned_str(str, length, enc_utf8);
91
- # else
92
- VALUE rstring = rb_utf8_str_new(str, length);
93
- return rb_funcall(rb_str_freeze(rstring), i_uminus, 0);
94
- # endif
95
- }
96
-
97
- static inline VALUE build_symbol(const char *str, const long length)
98
- {
99
- return rb_str_intern(build_interned_string(str, length));
100
- }
101
-
102
- static void rvalue_cache_insert_at(rvalue_cache *cache, int index, VALUE rstring)
103
- {
104
- MEMMOVE(&cache->entries[index + 1], &cache->entries[index], VALUE, cache->length - index);
105
- cache->length++;
106
- cache->entries[index] = rstring;
107
- }
108
-
109
- static inline int rstring_cache_cmp(const char *str, const long length, VALUE rstring)
110
- {
111
- long rstring_length = RSTRING_LEN(rstring);
112
- if (length == rstring_length) {
113
- return memcmp(str, RSTRING_PTR(rstring), length);
114
- } else {
115
- return (int)(length - rstring_length);
116
- }
117
- }
118
-
119
- static VALUE rstring_cache_fetch(rvalue_cache *cache, const char *str, const long length)
120
- {
121
- if (RB_UNLIKELY(length > JSON_RVALUE_CACHE_MAX_ENTRY_LENGTH)) {
122
- // Common names aren't likely to be very long. So we just don't
123
- // cache names above an arbitrary threshold.
124
- return Qfalse;
125
- }
126
-
127
- if (RB_UNLIKELY(!isalpha((unsigned char)str[0]))) {
128
- // Simple heuristic, if the first character isn't a letter,
129
- // we're much less likely to see this string again.
130
- // We mostly want to cache strings that are likely to be repeated.
131
- return Qfalse;
132
- }
133
-
134
- int low = 0;
135
- int high = cache->length - 1;
136
- int mid = 0;
137
- int last_cmp = 0;
138
-
139
- while (low <= high) {
140
- mid = (high + low) >> 1;
141
- VALUE entry = cache->entries[mid];
142
- last_cmp = rstring_cache_cmp(str, length, entry);
143
-
144
- if (last_cmp == 0) {
145
- return entry;
146
- } else if (last_cmp > 0) {
147
- low = mid + 1;
148
- } else {
149
- high = mid - 1;
150
- }
151
- }
152
-
153
- if (RB_UNLIKELY(memchr(str, '\\', length))) {
154
- // We assume the overwhelming majority of names don't need to be escaped.
155
- // But if they do, we have to fallback to the slow path.
156
- return Qfalse;
157
- }
158
-
159
- VALUE rstring = build_interned_string(str, length);
160
-
161
- if (cache->length < JSON_RVALUE_CACHE_CAPA) {
162
- if (last_cmp > 0) {
163
- mid += 1;
164
- }
165
-
166
- rvalue_cache_insert_at(cache, mid, rstring);
167
- }
168
- return rstring;
169
- }
170
-
171
- static VALUE rsymbol_cache_fetch(rvalue_cache *cache, const char *str, const long length)
172
- {
173
- if (RB_UNLIKELY(length > JSON_RVALUE_CACHE_MAX_ENTRY_LENGTH)) {
174
- // Common names aren't likely to be very long. So we just don't
175
- // cache names above an arbitrary threshold.
176
- return Qfalse;
177
- }
178
-
179
- if (RB_UNLIKELY(!isalpha((unsigned char)str[0]))) {
180
- // Simple heuristic, if the first character isn't a letter,
181
- // we're much less likely to see this string again.
182
- // We mostly want to cache strings that are likely to be repeated.
183
- return Qfalse;
184
- }
185
-
186
- int low = 0;
187
- int high = cache->length - 1;
188
- int mid = 0;
189
- int last_cmp = 0;
190
-
191
- while (low <= high) {
192
- mid = (high + low) >> 1;
193
- VALUE entry = cache->entries[mid];
194
- last_cmp = rstring_cache_cmp(str, length, rb_sym2str(entry));
195
-
196
- if (last_cmp == 0) {
197
- return entry;
198
- } else if (last_cmp > 0) {
199
- low = mid + 1;
200
- } else {
201
- high = mid - 1;
202
- }
203
- }
204
-
205
- if (RB_UNLIKELY(memchr(str, '\\', length))) {
206
- // We assume the overwhelming majority of names don't need to be escaped.
207
- // But if they do, we have to fallback to the slow path.
208
- return Qfalse;
209
- }
210
-
211
- VALUE rsymbol = build_symbol(str, length);
212
-
213
- if (cache->length < JSON_RVALUE_CACHE_CAPA) {
214
- if (last_cmp > 0) {
215
- mid += 1;
216
- }
217
-
218
- rvalue_cache_insert_at(cache, mid, rsymbol);
219
- }
220
- return rsymbol;
221
- }
222
-
223
- /* rvalue stack */
224
-
225
- #define RVALUE_STACK_INITIAL_CAPA 128
226
-
227
- enum rvalue_stack_type {
228
- RVALUE_STACK_HEAP_ALLOCATED = 0,
229
- RVALUE_STACK_STACK_ALLOCATED = 1,
230
- };
231
-
232
- typedef struct rvalue_stack_struct {
233
- enum rvalue_stack_type type;
234
- long capa;
235
- long head;
236
- VALUE *ptr;
237
- } rvalue_stack;
238
-
239
- static rvalue_stack *rvalue_stack_spill(rvalue_stack *old_stack, VALUE *handle, rvalue_stack **stack_ref);
240
-
241
- static rvalue_stack *rvalue_stack_grow(rvalue_stack *stack, VALUE *handle, rvalue_stack **stack_ref)
242
- {
243
- long required = stack->capa * 2;
244
-
245
- if (stack->type == RVALUE_STACK_STACK_ALLOCATED) {
246
- stack = rvalue_stack_spill(stack, handle, stack_ref);
247
- } else {
248
- REALLOC_N(stack->ptr, VALUE, required);
249
- stack->capa = required;
250
- }
251
- return stack;
252
- }
253
-
254
- static VALUE rvalue_stack_push(rvalue_stack *stack, VALUE value, VALUE *handle, rvalue_stack **stack_ref)
255
- {
256
- if (RB_UNLIKELY(stack->head >= stack->capa)) {
257
- stack = rvalue_stack_grow(stack, handle, stack_ref);
258
- }
259
- stack->ptr[stack->head] = value;
260
- stack->head++;
261
- return value;
262
- }
263
-
264
- static inline VALUE *rvalue_stack_peek(rvalue_stack *stack, long count)
265
- {
266
- return stack->ptr + (stack->head - count);
267
- }
268
-
269
- static inline void rvalue_stack_pop(rvalue_stack *stack, long count)
270
- {
271
- stack->head -= count;
272
- }
273
-
274
- static void rvalue_stack_mark(void *ptr)
275
- {
276
- rvalue_stack *stack = (rvalue_stack *)ptr;
277
- long index;
278
- for (index = 0; index < stack->head; index++) {
279
- rb_gc_mark(stack->ptr[index]);
280
- }
281
- }
282
-
283
- static void rvalue_stack_free(void *ptr)
284
- {
285
- rvalue_stack *stack = (rvalue_stack *)ptr;
286
- if (stack) {
287
- ruby_xfree(stack->ptr);
288
- ruby_xfree(stack);
289
- }
290
- }
291
-
292
- static size_t rvalue_stack_memsize(const void *ptr)
293
- {
294
- const rvalue_stack *stack = (const rvalue_stack *)ptr;
295
- return sizeof(rvalue_stack) + sizeof(VALUE) * stack->capa;
296
- }
297
-
298
- static const rb_data_type_t JSON_Parser_rvalue_stack_type = {
299
- "JSON::Ext::Parser/rvalue_stack",
300
- {
301
- .dmark = rvalue_stack_mark,
302
- .dfree = rvalue_stack_free,
303
- .dsize = rvalue_stack_memsize,
304
- },
305
- 0, 0,
306
- RUBY_TYPED_FREE_IMMEDIATELY,
307
- };
308
-
309
- static rvalue_stack *rvalue_stack_spill(rvalue_stack *old_stack, VALUE *handle, rvalue_stack **stack_ref)
310
- {
311
- rvalue_stack *stack;
312
- *handle = TypedData_Make_Struct(0, rvalue_stack, &JSON_Parser_rvalue_stack_type, stack);
313
- *stack_ref = stack;
314
- MEMCPY(stack, old_stack, rvalue_stack, 1);
315
-
316
- stack->capa = old_stack->capa << 1;
317
- stack->ptr = ALLOC_N(VALUE, stack->capa);
318
- stack->type = RVALUE_STACK_HEAP_ALLOCATED;
319
- MEMCPY(stack->ptr, old_stack->ptr, VALUE, old_stack->head);
320
- return stack;
321
- }
322
-
323
- static void rvalue_stack_eagerly_release(VALUE handle)
324
- {
325
- if (handle) {
326
- rvalue_stack *stack;
327
- TypedData_Get_Struct(handle, rvalue_stack, &JSON_Parser_rvalue_stack_type, stack);
328
- RTYPEDDATA_DATA(handle) = NULL;
329
- rvalue_stack_free(stack);
330
- }
331
- }
332
-
333
-
334
- #ifndef HAVE_STRNLEN
335
- static size_t strnlen(const char *s, size_t maxlen)
336
- {
337
- char *p;
338
- return ((p = memchr(s, '\0', maxlen)) ? p - s : maxlen);
339
- }
340
- #endif
341
-
342
- static int convert_UTF32_to_UTF8(char *buf, uint32_t ch)
343
- {
344
- int len = 1;
345
- if (ch <= 0x7F) {
346
- buf[0] = (char) ch;
347
- } else if (ch <= 0x07FF) {
348
- buf[0] = (char) ((ch >> 6) | 0xC0);
349
- buf[1] = (char) ((ch & 0x3F) | 0x80);
350
- len++;
351
- } else if (ch <= 0xFFFF) {
352
- buf[0] = (char) ((ch >> 12) | 0xE0);
353
- buf[1] = (char) (((ch >> 6) & 0x3F) | 0x80);
354
- buf[2] = (char) ((ch & 0x3F) | 0x80);
355
- len += 2;
356
- } else if (ch <= 0x1fffff) {
357
- buf[0] =(char) ((ch >> 18) | 0xF0);
358
- buf[1] =(char) (((ch >> 12) & 0x3F) | 0x80);
359
- buf[2] =(char) (((ch >> 6) & 0x3F) | 0x80);
360
- buf[3] =(char) ((ch & 0x3F) | 0x80);
361
- len += 3;
362
- } else {
363
- buf[0] = '?';
364
- }
365
- return len;
366
- }
367
-
368
- enum duplicate_key_action {
369
- JSON_DEPRECATED = 0,
370
- JSON_IGNORE,
371
- JSON_RAISE,
372
- };
373
-
374
- typedef struct JSON_ParserStruct {
375
- VALUE on_load_proc;
376
- VALUE decimal_class;
377
- ID decimal_method_id;
378
- enum duplicate_key_action on_duplicate_key;
379
- int max_nesting;
380
- bool allow_nan;
381
- bool allow_trailing_comma;
382
- bool parsing_name;
383
- bool symbolize_names;
384
- bool freeze;
385
- } JSON_ParserConfig;
386
-
387
- typedef struct JSON_ParserStateStruct {
388
- VALUE stack_handle;
389
- const char *start;
390
- const char *cursor;
391
- const char *end;
392
- rvalue_stack *stack;
393
- rvalue_cache name_cache;
394
- int in_array;
395
- int current_nesting;
396
- } JSON_ParserState;
397
-
398
- static void cursor_position(JSON_ParserState *state, long *line_out, long *column_out)
399
- {
400
- const char *cursor = state->cursor;
401
- long column = 0;
402
- long line = 1;
403
-
404
- while (cursor >= state->start) {
405
- if (*cursor-- == '\n') {
406
- break;
407
- }
408
- column++;
409
- }
410
-
411
- while (cursor >= state->start) {
412
- if (*cursor-- == '\n') {
413
- line++;
414
- }
415
- }
416
- *line_out = line;
417
- *column_out = column;
418
- }
419
-
420
- static void emit_parse_warning(const char *message, JSON_ParserState *state)
421
- {
422
- long line, column;
423
- cursor_position(state, &line, &column);
424
-
425
- rb_warn("%s at line %ld column %ld", message, line, column);
426
- }
427
-
428
- #define PARSE_ERROR_FRAGMENT_LEN 32
429
- #ifdef RBIMPL_ATTR_NORETURN
430
- RBIMPL_ATTR_NORETURN()
431
- #endif
432
- static void raise_parse_error(const char *format, JSON_ParserState *state)
433
- {
434
- unsigned char buffer[PARSE_ERROR_FRAGMENT_LEN + 3];
435
- long line, column;
436
- cursor_position(state, &line, &column);
437
-
438
- const char *ptr = "EOF";
439
- if (state->cursor && state->cursor < state->end) {
440
- ptr = state->cursor;
441
- size_t len = 0;
442
- while (len < PARSE_ERROR_FRAGMENT_LEN) {
443
- char ch = ptr[len];
444
- if (!ch || ch == '\n' || ch == ' ' || ch == '\t' || ch == '\r') {
445
- break;
446
- }
447
- len++;
448
- }
449
-
450
- if (len) {
451
- buffer[0] = '\'';
452
- MEMCPY(buffer + 1, ptr, char, len);
453
-
454
- while (buffer[len] >= 0x80 && buffer[len] < 0xC0) { // Is continuation byte
455
- len--;
456
- }
457
-
458
- if (buffer[len] >= 0xC0) { // multibyte character start
459
- len--;
460
- }
461
-
462
- buffer[len + 1] = '\'';
463
- buffer[len + 2] = '\0';
464
- ptr = (const char *)buffer;
465
- }
466
- }
467
-
468
- VALUE msg = rb_sprintf(format, ptr);
469
- VALUE message = rb_enc_sprintf(enc_utf8, "%s at line %ld column %ld", RSTRING_PTR(msg), line, column);
470
- RB_GC_GUARD(msg);
471
-
472
- VALUE exc = rb_exc_new_str(rb_path2class("JSON::ParserError"), message);
473
- rb_ivar_set(exc, rb_intern("@line"), LONG2NUM(line));
474
- rb_ivar_set(exc, rb_intern("@column"), LONG2NUM(column));
475
- rb_exc_raise(exc);
476
- }
477
-
478
- #ifdef RBIMPL_ATTR_NORETURN
479
- RBIMPL_ATTR_NORETURN()
480
- #endif
481
- static void raise_parse_error_at(const char *format, JSON_ParserState *state, const char *at)
482
- {
483
- state->cursor = at;
484
- raise_parse_error(format, state);
485
- }
486
-
487
- /* unicode */
488
-
489
- static const signed char digit_values[256] = {
490
- -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
491
- -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
492
- -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, -1,
493
- -1, -1, -1, -1, -1, -1, 10, 11, 12, 13, 14, 15, -1, -1, -1, -1, -1, -1, -1,
494
- -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
495
- 10, 11, 12, 13, 14, 15, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
496
- -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
497
- -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
498
- -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
499
- -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
500
- -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
501
- -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
502
- -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
503
- -1, -1, -1, -1, -1, -1, -1
504
- };
505
-
506
- static uint32_t unescape_unicode(JSON_ParserState *state, const unsigned char *p)
507
- {
508
- signed char b;
509
- uint32_t result = 0;
510
- b = digit_values[p[0]];
511
- if (b < 0) raise_parse_error_at("incomplete unicode character escape sequence at %s", state, (char *)p - 2);
512
- result = (result << 4) | (unsigned char)b;
513
- b = digit_values[p[1]];
514
- if (b < 0) raise_parse_error_at("incomplete unicode character escape sequence at %s", state, (char *)p - 2);
515
- result = (result << 4) | (unsigned char)b;
516
- b = digit_values[p[2]];
517
- if (b < 0) raise_parse_error_at("incomplete unicode character escape sequence at %s", state, (char *)p - 2);
518
- result = (result << 4) | (unsigned char)b;
519
- b = digit_values[p[3]];
520
- if (b < 0) raise_parse_error_at("incomplete unicode character escape sequence at %s", state, (char *)p - 2);
521
- result = (result << 4) | (unsigned char)b;
522
- return result;
523
- }
524
-
525
- #define GET_PARSER_CONFIG \
526
- JSON_ParserConfig *config; \
527
- TypedData_Get_Struct(self, JSON_ParserConfig, &JSON_ParserConfig_type, config)
528
-
529
- static const rb_data_type_t JSON_ParserConfig_type;
530
-
531
- static const bool whitespace[256] = {
532
- [' '] = 1,
533
- ['\t'] = 1,
534
- ['\n'] = 1,
535
- ['\r'] = 1,
536
- ['/'] = 1,
537
- };
538
-
539
- static void
540
- json_eat_comments(JSON_ParserState *state)
541
- {
542
- if (state->cursor + 1 < state->end) {
543
- switch (state->cursor[1]) {
544
- case '/': {
545
- state->cursor = memchr(state->cursor, '\n', state->end - state->cursor);
546
- if (!state->cursor) {
547
- state->cursor = state->end;
548
- } else {
549
- state->cursor++;
550
- }
551
- break;
552
- }
553
- case '*': {
554
- state->cursor += 2;
555
- while (true) {
556
- state->cursor = memchr(state->cursor, '*', state->end - state->cursor);
557
- if (!state->cursor) {
558
- raise_parse_error_at("unexpected end of input, expected closing '*/'", state, state->end);
559
- } else {
560
- state->cursor++;
561
- if (state->cursor < state->end && *state->cursor == '/') {
562
- state->cursor++;
563
- break;
564
- }
565
- }
566
- }
567
- break;
568
- }
569
- default:
570
- raise_parse_error("unexpected token %s", state);
571
- break;
572
- }
573
- } else {
574
- raise_parse_error("unexpected token %s", state);
575
- }
576
- }
577
-
578
- static inline void
579
- json_eat_whitespace(JSON_ParserState *state)
580
- {
581
- while (state->cursor < state->end && RB_UNLIKELY(whitespace[(unsigned char)*state->cursor])) {
582
- if (RB_LIKELY(*state->cursor != '/')) {
583
- state->cursor++;
584
- } else {
585
- json_eat_comments(state);
586
- }
587
- }
588
- }
589
-
590
- static inline VALUE build_string(const char *start, const char *end, bool intern, bool symbolize)
591
- {
592
- if (symbolize) {
593
- intern = true;
594
- }
595
- VALUE result;
596
- # ifdef HAVE_RB_ENC_INTERNED_STR
597
- if (intern) {
598
- result = rb_enc_interned_str(start, (long)(end - start), enc_utf8);
599
- } else {
600
- result = rb_utf8_str_new(start, (long)(end - start));
601
- }
602
- # else
603
- result = rb_utf8_str_new(start, (long)(end - start));
604
- if (intern) {
605
- result = rb_funcall(rb_str_freeze(result), i_uminus, 0);
606
- }
607
- # endif
608
-
609
- if (symbolize) {
610
- result = rb_str_intern(result);
611
- }
612
-
613
- return result;
614
- }
615
-
616
- static inline VALUE json_string_fastpath(JSON_ParserState *state, const char *string, const char *stringEnd, bool is_name, bool intern, bool symbolize)
617
- {
618
- size_t bufferSize = stringEnd - string;
619
-
620
- if (is_name && state->in_array) {
621
- VALUE cached_key;
622
- if (RB_UNLIKELY(symbolize)) {
623
- cached_key = rsymbol_cache_fetch(&state->name_cache, string, bufferSize);
624
- } else {
625
- cached_key = rstring_cache_fetch(&state->name_cache, string, bufferSize);
626
- }
627
-
628
- if (RB_LIKELY(cached_key)) {
629
- return cached_key;
630
- }
631
- }
632
-
633
- return build_string(string, stringEnd, intern, symbolize);
634
- }
635
-
636
- static VALUE json_string_unescape(JSON_ParserState *state, const char *string, const char *stringEnd, bool is_name, bool intern, bool symbolize)
637
- {
638
- size_t bufferSize = stringEnd - string;
639
- const char *p = string, *pe = string, *unescape, *bufferStart;
640
- char *buffer;
641
- int unescape_len;
642
- char buf[4];
643
-
644
- if (is_name && state->in_array) {
645
- VALUE cached_key;
646
- if (RB_UNLIKELY(symbolize)) {
647
- cached_key = rsymbol_cache_fetch(&state->name_cache, string, bufferSize);
648
- } else {
649
- cached_key = rstring_cache_fetch(&state->name_cache, string, bufferSize);
650
- }
651
-
652
- if (RB_LIKELY(cached_key)) {
653
- return cached_key;
654
- }
655
- }
656
-
657
- VALUE result = rb_str_buf_new(bufferSize);
658
- rb_enc_associate_index(result, utf8_encindex);
659
- buffer = RSTRING_PTR(result);
660
- bufferStart = buffer;
661
-
662
- while (pe < stringEnd && (pe = memchr(pe, '\\', stringEnd - pe))) {
663
- unescape = (char *) "?";
664
- unescape_len = 1;
665
- if (pe > p) {
666
- MEMCPY(buffer, p, char, pe - p);
667
- buffer += pe - p;
668
- }
669
- switch (*++pe) {
670
- case 'n':
671
- unescape = (char *) "\n";
672
- break;
673
- case 'r':
674
- unescape = (char *) "\r";
675
- break;
676
- case 't':
677
- unescape = (char *) "\t";
678
- break;
679
- case '"':
680
- unescape = (char *) "\"";
681
- break;
682
- case '\\':
683
- unescape = (char *) "\\";
684
- break;
685
- case 'b':
686
- unescape = (char *) "\b";
687
- break;
688
- case 'f':
689
- unescape = (char *) "\f";
690
- break;
691
- case 'u':
692
- if (pe > stringEnd - 5) {
693
- raise_parse_error_at("incomplete unicode character escape sequence at %s", state, p);
694
- } else {
695
- uint32_t ch = unescape_unicode(state, (unsigned char *) ++pe);
696
- pe += 3;
697
- /* To handle values above U+FFFF, we take a sequence of
698
- * \uXXXX escapes in the U+D800..U+DBFF then
699
- * U+DC00..U+DFFF ranges, take the low 10 bits from each
700
- * to make a 20-bit number, then add 0x10000 to get the
701
- * final codepoint.
702
- *
703
- * See Unicode 15: 3.8 "Surrogates", 5.3 "Handling
704
- * Surrogate Pairs in UTF-16", and 23.6 "Surrogates
705
- * Area".
706
- */
707
- if ((ch & 0xFC00) == 0xD800) {
708
- pe++;
709
- if (pe > stringEnd - 6) {
710
- raise_parse_error_at("incomplete surrogate pair at %s", state, p);
711
- }
712
- if (pe[0] == '\\' && pe[1] == 'u') {
713
- uint32_t sur = unescape_unicode(state, (unsigned char *) pe + 2);
714
- ch = (((ch & 0x3F) << 10) | ((((ch >> 6) & 0xF) + 1) << 16)
715
- | (sur & 0x3FF));
716
- pe += 5;
717
- } else {
718
- unescape = (char *) "?";
719
- break;
720
- }
721
- }
722
- unescape_len = convert_UTF32_to_UTF8(buf, ch);
723
- unescape = buf;
724
- }
725
- break;
726
- default:
727
- p = pe;
728
- continue;
729
- }
730
- MEMCPY(buffer, unescape, char, unescape_len);
731
- buffer += unescape_len;
732
- p = ++pe;
733
- }
734
-
735
- if (stringEnd > p) {
736
- MEMCPY(buffer, p, char, stringEnd - p);
737
- buffer += stringEnd - p;
738
- }
739
- rb_str_set_len(result, buffer - bufferStart);
740
-
741
- if (symbolize) {
742
- result = rb_str_intern(result);
743
- } else if (intern) {
744
- result = rb_funcall(rb_str_freeze(result), i_uminus, 0);
745
- }
746
-
747
- return result;
748
- }
749
-
750
- #define MAX_FAST_INTEGER_SIZE 18
751
- static inline VALUE fast_decode_integer(const char *p, const char *pe)
752
- {
753
- bool negative = false;
754
- if (*p == '-') {
755
- negative = true;
756
- p++;
757
- }
758
-
759
- long long memo = 0;
760
- while (p < pe) {
761
- memo *= 10;
762
- memo += *p - '0';
763
- p++;
764
- }
765
-
766
- if (negative) {
767
- memo = -memo;
768
- }
769
- return LL2NUM(memo);
770
- }
771
-
772
- static VALUE json_decode_large_integer(const char *start, long len)
773
- {
774
- VALUE buffer_v;
775
- char *buffer = RB_ALLOCV_N(char, buffer_v, len + 1);
776
- MEMCPY(buffer, start, char, len);
777
- buffer[len] = '\0';
778
- VALUE number = rb_cstr2inum(buffer, 10);
779
- RB_ALLOCV_END(buffer_v);
780
- return number;
781
- }
782
-
783
- static inline VALUE
784
- json_decode_integer(const char *start, const char *end)
785
- {
786
- long len = end - start;
787
- if (RB_LIKELY(len < MAX_FAST_INTEGER_SIZE)) {
788
- return fast_decode_integer(start, end);
789
- }
790
- return json_decode_large_integer(start, len);
791
- }
792
-
793
- static VALUE json_decode_large_float(const char *start, long len)
794
- {
795
- VALUE buffer_v;
796
- char *buffer = RB_ALLOCV_N(char, buffer_v, len + 1);
797
- MEMCPY(buffer, start, char, len);
798
- buffer[len] = '\0';
799
- VALUE number = DBL2NUM(rb_cstr_to_dbl(buffer, 1));
800
- RB_ALLOCV_END(buffer_v);
801
- return number;
802
- }
803
-
804
- static VALUE json_decode_float(JSON_ParserConfig *config, const char *start, const char *end)
805
- {
806
- long len = end - start;
807
-
808
- if (RB_UNLIKELY(config->decimal_class)) {
809
- VALUE text = rb_str_new(start, len);
810
- return rb_funcallv(config->decimal_class, config->decimal_method_id, 1, &text);
811
- } else if (RB_LIKELY(len < 64)) {
812
- char buffer[64];
813
- MEMCPY(buffer, start, char, len);
814
- buffer[len] = '\0';
815
- return DBL2NUM(rb_cstr_to_dbl(buffer, 1));
816
- } else {
817
- return json_decode_large_float(start, len);
818
- }
819
- }
820
-
821
- static inline VALUE json_decode_array(JSON_ParserState *state, JSON_ParserConfig *config, long count)
822
- {
823
- VALUE array = rb_ary_new_from_values(count, rvalue_stack_peek(state->stack, count));
824
- rvalue_stack_pop(state->stack, count);
825
-
826
- if (config->freeze) {
827
- RB_OBJ_FREEZE(array);
828
- }
829
-
830
- return array;
831
- }
832
-
833
- static inline VALUE json_decode_object(JSON_ParserState *state, JSON_ParserConfig *config, size_t count)
834
- {
835
- size_t entries_count = count / 2;
836
- VALUE object = rb_hash_new_capa(entries_count);
837
- rb_hash_bulk_insert(count, rvalue_stack_peek(state->stack, count), object);
838
-
839
- if (RB_UNLIKELY(RHASH_SIZE(object) < entries_count)) {
840
- switch (config->on_duplicate_key) {
841
- case JSON_IGNORE:
842
- break;
843
- case JSON_DEPRECATED:
844
- emit_parse_warning("detected duplicate keys in JSON object. This will raise an error in json 3.0 unless enabled via `allow_duplicate_key: true`", state);
845
- break;
846
- case JSON_RAISE:
847
- raise_parse_error("duplicate key", state);
848
- break;
849
- }
850
- }
851
-
852
- rvalue_stack_pop(state->stack, count);
853
-
854
- if (config->freeze) {
855
- RB_OBJ_FREEZE(object);
856
- }
857
-
858
- return object;
859
- }
860
-
861
- static inline VALUE json_decode_string(JSON_ParserState *state, JSON_ParserConfig *config, const char *start, const char *end, bool escaped, bool is_name)
862
- {
863
- VALUE string;
864
- bool intern = is_name || config->freeze;
865
- bool symbolize = is_name && config->symbolize_names;
866
- if (escaped) {
867
- string = json_string_unescape(state, start, end, is_name, intern, symbolize);
868
- } else {
869
- string = json_string_fastpath(state, start, end, is_name, intern, symbolize);
870
- }
871
-
872
- return string;
873
- }
874
-
875
- static inline VALUE json_push_value(JSON_ParserState *state, JSON_ParserConfig *config, VALUE value)
876
- {
877
- if (RB_UNLIKELY(config->on_load_proc)) {
878
- value = rb_proc_call_with_block(config->on_load_proc, 1, &value, Qnil);
879
- }
880
- rvalue_stack_push(state->stack, value, &state->stack_handle, &state->stack);
881
- return value;
882
- }
883
-
884
- static const bool string_scan_table[256] = {
885
- // ASCII Control Characters
886
- 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
887
- 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
888
- // ASCII Characters
889
- 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, // '"'
890
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
891
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
892
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, // '\\'
893
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
894
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
895
- };
896
-
897
- #if (defined(__GNUC__ ) || defined(__clang__))
898
- #define FORCE_INLINE __attribute__((always_inline))
899
- #else
900
- #define FORCE_INLINE
901
- #endif
902
-
903
- #ifdef HAVE_SIMD
904
- static SIMD_Implementation simd_impl = SIMD_NONE;
905
- #endif /* HAVE_SIMD */
906
-
907
- static inline bool FORCE_INLINE string_scan(JSON_ParserState *state)
908
- {
909
- #ifdef HAVE_SIMD
910
- #if defined(HAVE_SIMD_NEON)
911
-
912
- uint64_t mask = 0;
913
- if (string_scan_simd_neon(&state->cursor, state->end, &mask)) {
914
- state->cursor += trailing_zeros64(mask) >> 2;
915
- return 1;
916
- }
917
-
918
- #elif defined(HAVE_SIMD_SSE2)
919
- if (simd_impl == SIMD_SSE2) {
920
- int mask = 0;
921
- if (string_scan_simd_sse2(&state->cursor, state->end, &mask)) {
922
- state->cursor += trailing_zeros(mask);
923
- return 1;
924
- }
925
- }
926
- #endif /* HAVE_SIMD_NEON or HAVE_SIMD_SSE2 */
927
- #endif /* HAVE_SIMD */
928
-
929
- while (state->cursor < state->end) {
930
- if (RB_UNLIKELY(string_scan_table[(unsigned char)*state->cursor])) {
931
- return 1;
932
- }
933
- *state->cursor++;
934
- }
935
- return 0;
936
- }
937
-
938
- static inline VALUE json_parse_string(JSON_ParserState *state, JSON_ParserConfig *config, bool is_name)
939
- {
940
- state->cursor++;
941
- const char *start = state->cursor;
942
- bool escaped = false;
943
-
944
- while (RB_UNLIKELY(string_scan(state))) {
945
- switch (*state->cursor) {
946
- case '"': {
947
- VALUE string = json_decode_string(state, config, start, state->cursor, escaped, is_name);
948
- state->cursor++;
949
- return json_push_value(state, config, string);
950
- }
951
- case '\\': {
952
- state->cursor++;
953
- escaped = true;
954
- if ((unsigned char)*state->cursor < 0x20) {
955
- raise_parse_error("invalid ASCII control character in string: %s", state);
956
- }
957
- break;
958
- }
959
- default:
960
- raise_parse_error("invalid ASCII control character in string: %s", state);
961
- break;
962
- }
963
-
964
- state->cursor++;
965
- }
966
-
967
- raise_parse_error("unexpected end of input, expected closing \"", state);
968
- return Qfalse;
969
- }
970
-
971
- static VALUE json_parse_any(JSON_ParserState *state, JSON_ParserConfig *config)
972
- {
973
- json_eat_whitespace(state);
974
- if (state->cursor >= state->end) {
975
- raise_parse_error("unexpected end of input", state);
976
- }
977
-
978
- switch (*state->cursor) {
979
- case 'n':
980
- if ((state->end - state->cursor >= 4) && (memcmp(state->cursor, "null", 4) == 0)) {
981
- state->cursor += 4;
982
- return json_push_value(state, config, Qnil);
983
- }
984
-
985
- raise_parse_error("unexpected token %s", state);
986
- break;
987
- case 't':
988
- if ((state->end - state->cursor >= 4) && (memcmp(state->cursor, "true", 4) == 0)) {
989
- state->cursor += 4;
990
- return json_push_value(state, config, Qtrue);
991
- }
992
-
993
- raise_parse_error("unexpected token %s", state);
994
- break;
995
- case 'f':
996
- // Note: memcmp with a small power of two compile to an integer comparison
997
- if ((state->end - state->cursor >= 5) && (memcmp(state->cursor + 1, "alse", 4) == 0)) {
998
- state->cursor += 5;
999
- return json_push_value(state, config, Qfalse);
1000
- }
1001
-
1002
- raise_parse_error("unexpected token %s", state);
1003
- break;
1004
- case 'N':
1005
- // Note: memcmp with a small power of two compile to an integer comparison
1006
- if (config->allow_nan && (state->end - state->cursor >= 3) && (memcmp(state->cursor + 1, "aN", 2) == 0)) {
1007
- state->cursor += 3;
1008
- return json_push_value(state, config, CNaN);
1009
- }
1010
-
1011
- raise_parse_error("unexpected token %s", state);
1012
- break;
1013
- case 'I':
1014
- if (config->allow_nan && (state->end - state->cursor >= 8) && (memcmp(state->cursor, "Infinity", 8) == 0)) {
1015
- state->cursor += 8;
1016
- return json_push_value(state, config, CInfinity);
1017
- }
1018
-
1019
- raise_parse_error("unexpected token %s", state);
1020
- break;
1021
- case '-':
1022
- // Note: memcmp with a small power of two compile to an integer comparison
1023
- if ((state->end - state->cursor >= 9) && (memcmp(state->cursor + 1, "Infinity", 8) == 0)) {
1024
- if (config->allow_nan) {
1025
- state->cursor += 9;
1026
- return json_push_value(state, config, CMinusInfinity);
1027
- } else {
1028
- raise_parse_error("unexpected token %s", state);
1029
- }
1030
- }
1031
- // Fallthrough
1032
- case '0': case '1': case '2': case '3': case '4': case '5': case '6': case '7': case '8': case '9': {
1033
- bool integer = true;
1034
-
1035
- // /\A-?(0|[1-9]\d*)(\.\d+)?([Ee][-+]?\d+)?/
1036
- const char *start = state->cursor;
1037
- state->cursor++;
1038
-
1039
- while ((state->cursor < state->end) && (*state->cursor >= '0') && (*state->cursor <= '9')) {
1040
- state->cursor++;
1041
- }
1042
-
1043
- long integer_length = state->cursor - start;
1044
-
1045
- if (RB_UNLIKELY(start[0] == '0' && integer_length > 1)) {
1046
- raise_parse_error_at("invalid number: %s", state, start);
1047
- } else if (RB_UNLIKELY(integer_length > 2 && start[0] == '-' && start[1] == '0')) {
1048
- raise_parse_error_at("invalid number: %s", state, start);
1049
- } else if (RB_UNLIKELY(integer_length == 1 && start[0] == '-')) {
1050
- raise_parse_error_at("invalid number: %s", state, start);
1051
- }
1052
-
1053
- if ((state->cursor < state->end) && (*state->cursor == '.')) {
1054
- integer = false;
1055
- state->cursor++;
1056
-
1057
- if (state->cursor == state->end || *state->cursor < '0' || *state->cursor > '9') {
1058
- raise_parse_error("invalid number: %s", state);
1059
- }
1060
-
1061
- while ((state->cursor < state->end) && (*state->cursor >= '0') && (*state->cursor <= '9')) {
1062
- state->cursor++;
1063
- }
1064
- }
1065
-
1066
- if ((state->cursor < state->end) && ((*state->cursor == 'e') || (*state->cursor == 'E'))) {
1067
- integer = false;
1068
- state->cursor++;
1069
- if ((state->cursor < state->end) && ((*state->cursor == '+') || (*state->cursor == '-'))) {
1070
- state->cursor++;
1071
- }
1072
-
1073
- if (state->cursor == state->end || *state->cursor < '0' || *state->cursor > '9') {
1074
- raise_parse_error("invalid number: %s", state);
1075
- }
1076
-
1077
- while ((state->cursor < state->end) && (*state->cursor >= '0') && (*state->cursor <= '9')) {
1078
- state->cursor++;
1079
- }
1080
- }
1081
-
1082
- if (integer) {
1083
- return json_push_value(state, config, json_decode_integer(start, state->cursor));
1084
- }
1085
- return json_push_value(state, config, json_decode_float(config, start, state->cursor));
1086
- }
1087
- case '"': {
1088
- // %r{\A"[^"\\\t\n\x00]*(?:\\[bfnrtu\\/"][^"\\]*)*"}
1089
- return json_parse_string(state, config, false);
1090
- break;
1091
- }
1092
- case '[': {
1093
- state->cursor++;
1094
- json_eat_whitespace(state);
1095
- long stack_head = state->stack->head;
1096
-
1097
- if ((state->cursor < state->end) && (*state->cursor == ']')) {
1098
- state->cursor++;
1099
- return json_push_value(state, config, json_decode_array(state, config, 0));
1100
- } else {
1101
- state->current_nesting++;
1102
- if (RB_UNLIKELY(config->max_nesting && (config->max_nesting < state->current_nesting))) {
1103
- rb_raise(eNestingError, "nesting of %d is too deep", state->current_nesting);
1104
- }
1105
- state->in_array++;
1106
- json_parse_any(state, config);
1107
- }
1108
-
1109
- while (true) {
1110
- json_eat_whitespace(state);
1111
-
1112
- if (state->cursor < state->end) {
1113
- if (*state->cursor == ']') {
1114
- state->cursor++;
1115
- long count = state->stack->head - stack_head;
1116
- state->current_nesting--;
1117
- state->in_array--;
1118
- return json_push_value(state, config, json_decode_array(state, config, count));
1119
- }
1120
-
1121
- if (*state->cursor == ',') {
1122
- state->cursor++;
1123
- if (config->allow_trailing_comma) {
1124
- json_eat_whitespace(state);
1125
- if ((state->cursor < state->end) && (*state->cursor == ']')) {
1126
- continue;
1127
- }
1128
- }
1129
- json_parse_any(state, config);
1130
- continue;
1131
- }
1132
- }
1133
-
1134
- raise_parse_error("expected ',' or ']' after array value", state);
1135
- }
1136
- break;
1137
- }
1138
- case '{': {
1139
- const char *object_start_cursor = state->cursor;
1140
-
1141
- state->cursor++;
1142
- json_eat_whitespace(state);
1143
- long stack_head = state->stack->head;
1144
-
1145
- if ((state->cursor < state->end) && (*state->cursor == '}')) {
1146
- state->cursor++;
1147
- return json_push_value(state, config, json_decode_object(state, config, 0));
1148
- } else {
1149
- state->current_nesting++;
1150
- if (RB_UNLIKELY(config->max_nesting && (config->max_nesting < state->current_nesting))) {
1151
- rb_raise(eNestingError, "nesting of %d is too deep", state->current_nesting);
1152
- }
1153
-
1154
- if (*state->cursor != '"') {
1155
- raise_parse_error("expected object key, got %s", state);
1156
- }
1157
- json_parse_string(state, config, true);
1158
-
1159
- json_eat_whitespace(state);
1160
- if ((state->cursor >= state->end) || (*state->cursor != ':')) {
1161
- raise_parse_error("expected ':' after object key", state);
1162
- }
1163
- state->cursor++;
1164
-
1165
- json_parse_any(state, config);
1166
- }
1167
-
1168
- while (true) {
1169
- json_eat_whitespace(state);
1170
-
1171
- if (state->cursor < state->end) {
1172
- if (*state->cursor == '}') {
1173
- state->cursor++;
1174
- state->current_nesting--;
1175
- size_t count = state->stack->head - stack_head;
1176
-
1177
- // Temporary rewind cursor in case an error is raised
1178
- const char *final_cursor = state->cursor;
1179
- state->cursor = object_start_cursor;
1180
- VALUE object = json_decode_object(state, config, count);
1181
- state->cursor = final_cursor;
1182
-
1183
- return json_push_value(state, config, object);
1184
- }
1185
-
1186
- if (*state->cursor == ',') {
1187
- state->cursor++;
1188
- json_eat_whitespace(state);
1189
-
1190
- if (config->allow_trailing_comma) {
1191
- if ((state->cursor < state->end) && (*state->cursor == '}')) {
1192
- continue;
1193
- }
1194
- }
1195
-
1196
- if (*state->cursor != '"') {
1197
- raise_parse_error("expected object key, got: %s", state);
1198
- }
1199
- json_parse_string(state, config, true);
1200
-
1201
- json_eat_whitespace(state);
1202
- if ((state->cursor >= state->end) || (*state->cursor != ':')) {
1203
- raise_parse_error("expected ':' after object key, got: %s", state);
1204
- }
1205
- state->cursor++;
1206
-
1207
- json_parse_any(state, config);
1208
-
1209
- continue;
1210
- }
1211
- }
1212
-
1213
- raise_parse_error("expected ',' or '}' after object value, got: %s", state);
1214
- }
1215
- break;
1216
- }
1217
-
1218
- default:
1219
- raise_parse_error("unexpected character: %s", state);
1220
- break;
1221
- }
1222
-
1223
- raise_parse_error("unreacheable: %s", state);
1224
- }
1225
-
1226
- static void json_ensure_eof(JSON_ParserState *state)
1227
- {
1228
- json_eat_whitespace(state);
1229
- if (state->cursor != state->end) {
1230
- raise_parse_error("unexpected token at end of stream %s", state);
1231
- }
1232
- }
1233
-
1234
- /*
1235
- * Document-class: JSON::Ext::Parser
1236
- *
1237
- * This is the JSON parser implemented as a C extension. It can be configured
1238
- * to be used by setting
1239
- *
1240
- * JSON.parser = JSON::Ext::Parser
1241
- *
1242
- * with the method parser= in JSON.
1243
- *
1244
- */
1245
-
1246
- static VALUE convert_encoding(VALUE source)
1247
- {
1248
- int encindex = RB_ENCODING_GET(source);
1249
-
1250
- if (RB_LIKELY(encindex == utf8_encindex)) {
1251
- return source;
1252
- }
1253
-
1254
- if (encindex == binary_encindex) {
1255
- // For historical reason, we silently reinterpret binary strings as UTF-8
1256
- return rb_enc_associate_index(rb_str_dup(source), utf8_encindex);
1257
- }
1258
-
1259
- return rb_funcall(source, i_encode, 1, Encoding_UTF_8);
1260
- }
1261
-
1262
- static int parser_config_init_i(VALUE key, VALUE val, VALUE data)
1263
- {
1264
- JSON_ParserConfig *config = (JSON_ParserConfig *)data;
1265
-
1266
- if (key == sym_max_nesting) { config->max_nesting = RTEST(val) ? FIX2INT(val) : 0; }
1267
- else if (key == sym_allow_nan) { config->allow_nan = RTEST(val); }
1268
- else if (key == sym_allow_trailing_comma) { config->allow_trailing_comma = RTEST(val); }
1269
- else if (key == sym_symbolize_names) { config->symbolize_names = RTEST(val); }
1270
- else if (key == sym_freeze) { config->freeze = RTEST(val); }
1271
- else if (key == sym_on_load) { config->on_load_proc = RTEST(val) ? val : Qfalse; }
1272
- else if (key == sym_allow_duplicate_key) { config->on_duplicate_key = RTEST(val) ? JSON_IGNORE : JSON_RAISE; }
1273
- else if (key == sym_decimal_class) {
1274
- if (RTEST(val)) {
1275
- if (rb_respond_to(val, i_try_convert)) {
1276
- config->decimal_class = val;
1277
- config->decimal_method_id = i_try_convert;
1278
- } else if (rb_respond_to(val, i_new)) {
1279
- config->decimal_class = val;
1280
- config->decimal_method_id = i_new;
1281
- } else if (RB_TYPE_P(val, T_CLASS)) {
1282
- VALUE name = rb_class_name(val);
1283
- const char *name_cstr = RSTRING_PTR(name);
1284
- const char *last_colon = strrchr(name_cstr, ':');
1285
- if (last_colon) {
1286
- const char *mod_path_end = last_colon - 1;
1287
- VALUE mod_path = rb_str_substr(name, 0, mod_path_end - name_cstr);
1288
- config->decimal_class = rb_path_to_class(mod_path);
1289
-
1290
- const char *method_name_beg = last_colon + 1;
1291
- long before_len = method_name_beg - name_cstr;
1292
- long len = RSTRING_LEN(name) - before_len;
1293
- VALUE method_name = rb_str_substr(name, before_len, len);
1294
- config->decimal_method_id = SYM2ID(rb_str_intern(method_name));
1295
- } else {
1296
- config->decimal_class = rb_mKernel;
1297
- config->decimal_method_id = SYM2ID(rb_str_intern(name));
1298
- }
1299
- }
1300
- }
1301
- }
1302
-
1303
- return ST_CONTINUE;
1304
- }
1305
-
1306
- static void parser_config_init(JSON_ParserConfig *config, VALUE opts)
1307
- {
1308
- config->max_nesting = 100;
1309
-
1310
- if (!NIL_P(opts)) {
1311
- Check_Type(opts, T_HASH);
1312
- if (RHASH_SIZE(opts) > 0) {
1313
- // We assume in most cases few keys are set so it's faster to go over
1314
- // the provided keys than to check all possible keys.
1315
- rb_hash_foreach(opts, parser_config_init_i, (VALUE)config);
1316
- }
1317
-
1318
- }
1319
- }
1320
-
1321
- /*
1322
- * call-seq: new(opts => {})
1323
- *
1324
- * Creates a new JSON::Ext::ParserConfig instance.
1325
- *
1326
- * It will be configured by the _opts_ hash. _opts_ can have the following
1327
- * keys:
1328
- *
1329
- * _opts_ can have the following keys:
1330
- * * *max_nesting*: The maximum depth of nesting allowed in the parsed data
1331
- * structures. Disable depth checking with :max_nesting => false|nil|0, it
1332
- * defaults to 100.
1333
- * * *allow_nan*: If set to true, allow NaN, Infinity and -Infinity in
1334
- * defiance of RFC 4627 to be parsed by the Parser. This option defaults to
1335
- * false.
1336
- * * *symbolize_names*: If set to true, returns symbols for the names
1337
- * (keys) in a JSON object. Otherwise strings are returned, which is
1338
- * also the default. It's not possible to use this option in
1339
- * conjunction with the *create_additions* option.
1340
- * * *decimal_class*: Specifies which class to use instead of the default
1341
- * (Float) when parsing decimal numbers. This class must accept a single
1342
- * string argument in its constructor.
1343
- */
1344
- static VALUE cParserConfig_initialize(VALUE self, VALUE opts)
1345
- {
1346
- GET_PARSER_CONFIG;
1347
-
1348
- parser_config_init(config, opts);
1349
-
1350
- RB_OBJ_WRITTEN(self, Qundef, config->decimal_class);
1351
-
1352
- return self;
1353
- }
1354
-
1355
- static VALUE cParser_parse(JSON_ParserConfig *config, VALUE Vsource)
1356
- {
1357
- Vsource = convert_encoding(StringValue(Vsource));
1358
- StringValue(Vsource);
1359
-
1360
- VALUE rvalue_stack_buffer[RVALUE_STACK_INITIAL_CAPA];
1361
- rvalue_stack stack = {
1362
- .type = RVALUE_STACK_STACK_ALLOCATED,
1363
- .ptr = rvalue_stack_buffer,
1364
- .capa = RVALUE_STACK_INITIAL_CAPA,
1365
- };
1366
-
1367
- long len;
1368
- const char *start;
1369
- RSTRING_GETMEM(Vsource, start, len);
1370
-
1371
- JSON_ParserState _state = {
1372
- .start = start,
1373
- .cursor = start,
1374
- .end = start + len,
1375
- .stack = &stack,
1376
- };
1377
- JSON_ParserState *state = &_state;
1378
-
1379
- VALUE result = json_parse_any(state, config);
1380
-
1381
- // This may be skipped in case of exception, but
1382
- // it won't cause a leak.
1383
- rvalue_stack_eagerly_release(state->stack_handle);
1384
-
1385
- json_ensure_eof(state);
1386
-
1387
- return result;
1388
- }
1389
-
1390
- /*
1391
- * call-seq: parse(source)
1392
- *
1393
- * Parses the current JSON text _source_ and returns the complete data
1394
- * structure as a result.
1395
- * It raises JSON::ParserError if fail to parse.
1396
- */
1397
- static VALUE cParserConfig_parse(VALUE self, VALUE Vsource)
1398
- {
1399
- GET_PARSER_CONFIG;
1400
- return cParser_parse(config, Vsource);
1401
- }
1402
-
1403
- static VALUE cParser_m_parse(VALUE klass, VALUE Vsource, VALUE opts)
1404
- {
1405
- Vsource = convert_encoding(StringValue(Vsource));
1406
- StringValue(Vsource);
1407
-
1408
- JSON_ParserConfig _config = {0};
1409
- JSON_ParserConfig *config = &_config;
1410
- parser_config_init(config, opts);
1411
-
1412
- return cParser_parse(config, Vsource);
1413
- }
1414
-
1415
- static void JSON_ParserConfig_mark(void *ptr)
1416
- {
1417
- JSON_ParserConfig *config = ptr;
1418
- rb_gc_mark(config->on_load_proc);
1419
- rb_gc_mark(config->decimal_class);
1420
- }
1421
-
1422
- static void JSON_ParserConfig_free(void *ptr)
1423
- {
1424
- JSON_ParserConfig *config = ptr;
1425
- ruby_xfree(config);
1426
- }
1427
-
1428
- static size_t JSON_ParserConfig_memsize(const void *ptr)
1429
- {
1430
- return sizeof(JSON_ParserConfig);
1431
- }
1432
-
1433
- static const rb_data_type_t JSON_ParserConfig_type = {
1434
- "JSON::Ext::Parser/ParserConfig",
1435
- {
1436
- JSON_ParserConfig_mark,
1437
- JSON_ParserConfig_free,
1438
- JSON_ParserConfig_memsize,
1439
- },
1440
- 0, 0,
1441
- RUBY_TYPED_FREE_IMMEDIATELY | RUBY_TYPED_WB_PROTECTED,
1442
- };
1443
-
1444
- static VALUE cJSON_parser_s_allocate(VALUE klass)
1445
- {
1446
- JSON_ParserConfig *config;
1447
- return TypedData_Make_Struct(klass, JSON_ParserConfig, &JSON_ParserConfig_type, config);
1448
- }
1449
-
1450
- void Init_parser(void)
1451
- {
1452
- #ifdef HAVE_RB_EXT_RACTOR_SAFE
1453
- rb_ext_ractor_safe(true);
1454
- #endif
1455
-
1456
- #undef rb_intern
1457
- rb_require("json/common");
1458
- mJSON = rb_define_module("JSON");
1459
- VALUE mExt = rb_define_module_under(mJSON, "Ext");
1460
- VALUE cParserConfig = rb_define_class_under(mExt, "ParserConfig", rb_cObject);
1461
- eNestingError = rb_path2class("JSON::NestingError");
1462
- rb_gc_register_mark_object(eNestingError);
1463
- rb_define_alloc_func(cParserConfig, cJSON_parser_s_allocate);
1464
- rb_define_method(cParserConfig, "initialize", cParserConfig_initialize, 1);
1465
- rb_define_method(cParserConfig, "parse", cParserConfig_parse, 1);
1466
-
1467
- VALUE cParser = rb_define_class_under(mExt, "Parser", rb_cObject);
1468
- rb_define_singleton_method(cParser, "parse", cParser_m_parse, 2);
1469
-
1470
- CNaN = rb_const_get(mJSON, rb_intern("NaN"));
1471
- rb_gc_register_mark_object(CNaN);
1472
-
1473
- CInfinity = rb_const_get(mJSON, rb_intern("Infinity"));
1474
- rb_gc_register_mark_object(CInfinity);
1475
-
1476
- CMinusInfinity = rb_const_get(mJSON, rb_intern("MinusInfinity"));
1477
- rb_gc_register_mark_object(CMinusInfinity);
1478
-
1479
- rb_global_variable(&Encoding_UTF_8);
1480
- Encoding_UTF_8 = rb_const_get(rb_path2class("Encoding"), rb_intern("UTF_8"));
1481
-
1482
- sym_max_nesting = ID2SYM(rb_intern("max_nesting"));
1483
- sym_allow_nan = ID2SYM(rb_intern("allow_nan"));
1484
- sym_allow_trailing_comma = ID2SYM(rb_intern("allow_trailing_comma"));
1485
- sym_symbolize_names = ID2SYM(rb_intern("symbolize_names"));
1486
- sym_freeze = ID2SYM(rb_intern("freeze"));
1487
- sym_on_load = ID2SYM(rb_intern("on_load"));
1488
- sym_decimal_class = ID2SYM(rb_intern("decimal_class"));
1489
- sym_allow_duplicate_key = ID2SYM(rb_intern("allow_duplicate_key"));
1490
-
1491
- i_chr = rb_intern("chr");
1492
- i_aset = rb_intern("[]=");
1493
- i_aref = rb_intern("[]");
1494
- i_leftshift = rb_intern("<<");
1495
- i_new = rb_intern("new");
1496
- i_try_convert = rb_intern("try_convert");
1497
- i_uminus = rb_intern("-@");
1498
- i_encode = rb_intern("encode");
1499
-
1500
- binary_encindex = rb_ascii8bit_encindex();
1501
- utf8_encindex = rb_utf8_encindex();
1502
- enc_utf8 = rb_utf8_encoding();
1503
-
1504
- #ifdef HAVE_SIMD
1505
- simd_impl = find_simd_implementation();
1506
- #endif
1507
- }