finnhub_ruby 1.1.18 → 2.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 (372) hide show
  1. checksums.yaml +4 -4
  2. data/.gitignore +39 -0
  3. data/.rspec +2 -0
  4. data/.rubocop.yml +148 -0
  5. data/.travis.yml +14 -0
  6. data/README.md +4 -4
  7. data/docs/AirlinePriceIndex.md +22 -0
  8. data/docs/AirlinePriceIndexData.md +24 -0
  9. data/docs/BondTickData.md +6 -0
  10. data/docs/BondYieldCurve.md +20 -0
  11. data/docs/BondYieldCurveInfo.md +20 -0
  12. data/docs/CompanyESG2.md +28 -0
  13. data/docs/CompanyProfile.md +11 -1
  14. data/docs/CongressionalTrading.md +20 -0
  15. data/docs/CongressionalTransaction.md +36 -0
  16. data/docs/CountryMetadata.md +9 -1
  17. data/docs/DefaultApi.md +830 -66
  18. data/docs/Dividends.md +3 -1
  19. data/docs/DocumentResponse.md +28 -0
  20. data/docs/ETFHoldingsData.md +3 -1
  21. data/docs/ETFProfileData.md +2 -0
  22. data/docs/EarningResult.md +5 -1
  23. data/docs/EarningsEstimatesInfo.md +5 -1
  24. data/docs/EbitEstimatesInfo.md +5 -1
  25. data/docs/EbitdaEstimatesInfo.md +5 -1
  26. data/docs/EmployeeCount.md +20 -0
  27. data/docs/ExcerptResponse.md +24 -0
  28. data/docs/FilingResponse.md +42 -0
  29. data/docs/HistoricalCompanyESG.md +20 -0
  30. data/docs/HistoricalEmployeeCount.md +20 -0
  31. data/docs/HistoricalMarketCapData.md +22 -0
  32. data/docs/InFilingResponse.md +44 -0
  33. data/docs/InFilingSearchBody.md +20 -0
  34. data/docs/IndicesConstituents.md +3 -1
  35. data/docs/IndicesConstituentsBreakdown.md +28 -0
  36. data/docs/MarketCapData.md +20 -0
  37. data/docs/MarketHoliday.md +22 -0
  38. data/docs/MarketHolidayData.md +22 -0
  39. data/docs/MarketStatus.md +28 -0
  40. data/docs/MutualFundEet.md +20 -0
  41. data/docs/MutualFundEetPai.md +20 -0
  42. data/docs/MutualFundHoldingsData.md +3 -1
  43. data/docs/MutualFundProfileData.md +2 -0
  44. data/docs/PriceMetrics.md +2 -0
  45. data/docs/PriceTarget.md +2 -0
  46. data/docs/RevenueEstimatesInfo.md +5 -1
  47. data/docs/SearchBody.md +60 -0
  48. data/docs/SearchFilter.md +20 -0
  49. data/docs/SearchResponse.md +24 -0
  50. data/docs/SentimentContent.md +30 -0
  51. data/docs/SocialSentiment.md +2 -4
  52. data/finnhub_ruby.gemspec +9 -9
  53. data/git_push.sh +0 -0
  54. data/lib/finnhub_ruby/version.rb +2 -14
  55. data/lib/finnhub_ruby.rb +519 -164
  56. metadata +44 -479
  57. data/finnhub_ruby-1.1.10.gem +0 -0
  58. data/finnhub_ruby-1.1.11.gem +0 -0
  59. data/finnhub_ruby-1.1.12.gem +0 -0
  60. data/finnhub_ruby-1.1.13.gem +0 -0
  61. data/finnhub_ruby-1.1.14.gem +0 -0
  62. data/finnhub_ruby-1.1.15.gem +0 -0
  63. data/finnhub_ruby-1.1.16.gem +0 -0
  64. data/finnhub_ruby-1.1.17.gem +0 -0
  65. data/finnhub_ruby-1.1.7.gem +0 -0
  66. data/finnhub_ruby-1.1.8.gem +0 -0
  67. data/finnhub_ruby-1.1.9.gem +0 -0
  68. data/lib/finnhub_ruby/api/default_api.rb +0 -6160
  69. data/lib/finnhub_ruby/api_client.rb +0 -391
  70. data/lib/finnhub_ruby/api_error.rb +0 -57
  71. data/lib/finnhub_ruby/configuration.rb +0 -277
  72. data/lib/finnhub_ruby/models/aggregate_indicators.rb +0 -227
  73. data/lib/finnhub_ruby/models/basic_financials.rb +0 -247
  74. data/lib/finnhub_ruby/models/bond_candles.rb +0 -243
  75. data/lib/finnhub_ruby/models/bond_profile.rb +0 -419
  76. data/lib/finnhub_ruby/models/bond_tick_data.rb +0 -311
  77. data/lib/finnhub_ruby/models/breakdown_item.rb +0 -228
  78. data/lib/finnhub_ruby/models/company.rb +0 -279
  79. data/lib/finnhub_ruby/models/company_earnings_quality_score.rb +0 -241
  80. data/lib/finnhub_ruby/models/company_earnings_quality_score_data.rb +0 -279
  81. data/lib/finnhub_ruby/models/company_esg.rb +0 -268
  82. data/lib/finnhub_ruby/models/company_executive.rb +0 -231
  83. data/lib/finnhub_ruby/models/company_news.rb +0 -299
  84. data/lib/finnhub_ruby/models/company_news_statistics.rb +0 -239
  85. data/lib/finnhub_ruby/models/company_profile.rb +0 -489
  86. data/lib/finnhub_ruby/models/company_profile2.rb +0 -329
  87. data/lib/finnhub_ruby/models/country_metadata.rb +0 -289
  88. data/lib/finnhub_ruby/models/covid_info.rb +0 -249
  89. data/lib/finnhub_ruby/models/crypto_candles.rb +0 -291
  90. data/lib/finnhub_ruby/models/crypto_profile.rb +0 -319
  91. data/lib/finnhub_ruby/models/crypto_symbol.rb +0 -239
  92. data/lib/finnhub_ruby/models/development.rb +0 -259
  93. data/lib/finnhub_ruby/models/dividends.rb +0 -289
  94. data/lib/finnhub_ruby/models/dividends2.rb +0 -231
  95. data/lib/finnhub_ruby/models/dividends2_basic.rb +0 -231
  96. data/lib/finnhub_ruby/models/dividends2_info.rb +0 -229
  97. data/lib/finnhub_ruby/models/earning_estimate.rb +0 -259
  98. data/lib/finnhub_ruby/models/earning_release.rb +0 -299
  99. data/lib/finnhub_ruby/models/earning_result.rb +0 -269
  100. data/lib/finnhub_ruby/models/earnings_calendar.rb +0 -221
  101. data/lib/finnhub_ruby/models/earnings_call_transcripts.rb +0 -303
  102. data/lib/finnhub_ruby/models/earnings_call_transcripts_list.rb +0 -231
  103. data/lib/finnhub_ruby/models/earnings_estimates.rb +0 -241
  104. data/lib/finnhub_ruby/models/earnings_estimates_info.rb +0 -259
  105. data/lib/finnhub_ruby/models/ebit_estimates.rb +0 -241
  106. data/lib/finnhub_ruby/models/ebit_estimates_info.rb +0 -259
  107. data/lib/finnhub_ruby/models/ebitda_estimates.rb +0 -241
  108. data/lib/finnhub_ruby/models/ebitda_estimates_info.rb +0 -259
  109. data/lib/finnhub_ruby/models/economic_calendar.rb +0 -221
  110. data/lib/finnhub_ruby/models/economic_code.rb +0 -249
  111. data/lib/finnhub_ruby/models/economic_data.rb +0 -231
  112. data/lib/finnhub_ruby/models/economic_data_info.rb +0 -229
  113. data/lib/finnhub_ruby/models/economic_event.rb +0 -289
  114. data/lib/finnhub_ruby/models/estimate.rb +0 -259
  115. data/lib/finnhub_ruby/models/et_fs_country_exposure.rb +0 -219
  116. data/lib/finnhub_ruby/models/et_fs_holdings.rb +0 -219
  117. data/lib/finnhub_ruby/models/et_fs_industry_exposure.rb +0 -219
  118. data/lib/finnhub_ruby/models/et_fs_profile.rb +0 -216
  119. data/lib/finnhub_ruby/models/etf_country_exposure_data.rb +0 -229
  120. data/lib/finnhub_ruby/models/etf_holdings_data.rb +0 -279
  121. data/lib/finnhub_ruby/models/etf_profile_data.rb +0 -419
  122. data/lib/finnhub_ruby/models/etf_sector_exposure_data.rb +0 -229
  123. data/lib/finnhub_ruby/models/etfs_country_exposure.rb +0 -231
  124. data/lib/finnhub_ruby/models/etfs_holdings.rb +0 -251
  125. data/lib/finnhub_ruby/models/etfs_profile.rb +0 -228
  126. data/lib/finnhub_ruby/models/etfs_sector_exposure.rb +0 -231
  127. data/lib/finnhub_ruby/models/fda_comittee_meeting.rb +0 -249
  128. data/lib/finnhub_ruby/models/filing.rb +0 -289
  129. data/lib/finnhub_ruby/models/filing_sentiment.rb +0 -299
  130. data/lib/finnhub_ruby/models/financial_statements.rb +0 -231
  131. data/lib/finnhub_ruby/models/financials_as_reported.rb +0 -241
  132. data/lib/finnhub_ruby/models/forex_candles.rb +0 -291
  133. data/lib/finnhub_ruby/models/forex_symbol.rb +0 -239
  134. data/lib/finnhub_ruby/models/forexrates.rb +0 -228
  135. data/lib/finnhub_ruby/models/fund_ownership.rb +0 -231
  136. data/lib/finnhub_ruby/models/fund_ownership_info.rb +0 -259
  137. data/lib/finnhub_ruby/models/historical_nbbo.rb +0 -345
  138. data/lib/finnhub_ruby/models/index_historical_constituent.rb +0 -239
  139. data/lib/finnhub_ruby/models/indicator.rb +0 -239
  140. data/lib/finnhub_ruby/models/indices_constituents.rb +0 -231
  141. data/lib/finnhub_ruby/models/indices_historical_constituents.rb +0 -231
  142. data/lib/finnhub_ruby/models/insider_sentiments.rb +0 -231
  143. data/lib/finnhub_ruby/models/insider_sentiments_data.rb +0 -259
  144. data/lib/finnhub_ruby/models/insider_transactions.rb +0 -231
  145. data/lib/finnhub_ruby/models/institutional_ownership.rb +0 -241
  146. data/lib/finnhub_ruby/models/institutional_ownership_group.rb +0 -231
  147. data/lib/finnhub_ruby/models/institutional_ownership_info.rb +0 -309
  148. data/lib/finnhub_ruby/models/institutional_portfolio.rb +0 -241
  149. data/lib/finnhub_ruby/models/institutional_portfolio_group.rb +0 -241
  150. data/lib/finnhub_ruby/models/institutional_portfolio_info.rb +0 -319
  151. data/lib/finnhub_ruby/models/institutional_profile.rb +0 -231
  152. data/lib/finnhub_ruby/models/institutional_profile_info.rb +0 -269
  153. data/lib/finnhub_ruby/models/international_filing.rb +0 -299
  154. data/lib/finnhub_ruby/models/investment_theme_portfolio.rb +0 -219
  155. data/lib/finnhub_ruby/models/investment_themes.rb +0 -231
  156. data/lib/finnhub_ruby/models/investment_themes_thematic_investing.rb +0 -231
  157. data/lib/finnhub_ruby/models/investor.rb +0 -249
  158. data/lib/finnhub_ruby/models/investors_ownership.rb +0 -219
  159. data/lib/finnhub_ruby/models/ipo_calendar.rb +0 -221
  160. data/lib/finnhub_ruby/models/ipo_event.rb +0 -289
  161. data/lib/finnhub_ruby/models/isin_change.rb +0 -241
  162. data/lib/finnhub_ruby/models/isin_change_info.rb +0 -239
  163. data/lib/finnhub_ruby/models/key_customers_suppliers.rb +0 -329
  164. data/lib/finnhub_ruby/models/last_bid_ask.rb +0 -259
  165. data/lib/finnhub_ruby/models/lobbying_data.rb +0 -359
  166. data/lib/finnhub_ruby/models/lobbying_result.rb +0 -231
  167. data/lib/finnhub_ruby/models/major_developments.rb +0 -219
  168. data/lib/finnhub_ruby/models/major_press_releases.rb +0 -231
  169. data/lib/finnhub_ruby/models/market_news.rb +0 -299
  170. data/lib/finnhub_ruby/models/mutual_fund_country_exposure.rb +0 -231
  171. data/lib/finnhub_ruby/models/mutual_fund_country_exposure_data.rb +0 -229
  172. data/lib/finnhub_ruby/models/mutual_fund_holdings.rb +0 -251
  173. data/lib/finnhub_ruby/models/mutual_fund_holdings_data.rb +0 -279
  174. data/lib/finnhub_ruby/models/mutual_fund_profile.rb +0 -228
  175. data/lib/finnhub_ruby/models/mutual_fund_profile_data.rb +0 -479
  176. data/lib/finnhub_ruby/models/mutual_fund_sector_exposure.rb +0 -231
  177. data/lib/finnhub_ruby/models/mutual_fund_sector_exposure_data.rb +0 -229
  178. data/lib/finnhub_ruby/models/mutual_funds_country_exposure.rb +0 -231
  179. data/lib/finnhub_ruby/models/mutual_funds_holdings.rb +0 -251
  180. data/lib/finnhub_ruby/models/mutual_funds_profile.rb +0 -228
  181. data/lib/finnhub_ruby/models/news.rb +0 -299
  182. data/lib/finnhub_ruby/models/news_sentiment.rb +0 -267
  183. data/lib/finnhub_ruby/models/ownership.rb +0 -231
  184. data/lib/finnhub_ruby/models/ownership_info.rb +0 -249
  185. data/lib/finnhub_ruby/models/pattern_recognition.rb +0 -221
  186. data/lib/finnhub_ruby/models/press_release.rb +0 -231
  187. data/lib/finnhub_ruby/models/price_metrics.rb +0 -228
  188. data/lib/finnhub_ruby/models/price_target.rb +0 -269
  189. data/lib/finnhub_ruby/models/quote.rb +0 -279
  190. data/lib/finnhub_ruby/models/recommendation_trend.rb +0 -279
  191. data/lib/finnhub_ruby/models/reddit_sentiment_content.rb +0 -279
  192. data/lib/finnhub_ruby/models/report.rb +0 -318
  193. data/lib/finnhub_ruby/models/revenue_breakdown.rb +0 -241
  194. data/lib/finnhub_ruby/models/revenue_estimates.rb +0 -241
  195. data/lib/finnhub_ruby/models/revenue_estimates_info.rb +0 -259
  196. data/lib/finnhub_ruby/models/sec_sentiment_analysis.rb +0 -248
  197. data/lib/finnhub_ruby/models/sector_metric.rb +0 -231
  198. data/lib/finnhub_ruby/models/sector_metric_data.rb +0 -229
  199. data/lib/finnhub_ruby/models/sentiment.rb +0 -229
  200. data/lib/finnhub_ruby/models/similarity_index.rb +0 -241
  201. data/lib/finnhub_ruby/models/similarity_index_info.rb +0 -329
  202. data/lib/finnhub_ruby/models/social_sentiment.rb +0 -243
  203. data/lib/finnhub_ruby/models/split.rb +0 -249
  204. data/lib/finnhub_ruby/models/stock.rb +0 -249
  205. data/lib/finnhub_ruby/models/stock_candles.rb +0 -291
  206. data/lib/finnhub_ruby/models/stock_symbol.rb +0 -309
  207. data/lib/finnhub_ruby/models/stock_transcripts.rb +0 -259
  208. data/lib/finnhub_ruby/models/supply_chain_relationships.rb +0 -231
  209. data/lib/finnhub_ruby/models/support_resistance.rb +0 -221
  210. data/lib/finnhub_ruby/models/symbol_change.rb +0 -241
  211. data/lib/finnhub_ruby/models/symbol_change_info.rb +0 -239
  212. data/lib/finnhub_ruby/models/symbol_lookup.rb +0 -231
  213. data/lib/finnhub_ruby/models/symbol_lookup_info.rb +0 -249
  214. data/lib/finnhub_ruby/models/technical_analysis.rb +0 -228
  215. data/lib/finnhub_ruby/models/tick_data.rb +0 -309
  216. data/lib/finnhub_ruby/models/transactions.rb +0 -289
  217. data/lib/finnhub_ruby/models/transcript_content.rb +0 -241
  218. data/lib/finnhub_ruby/models/transcript_participant.rb +0 -239
  219. data/lib/finnhub_ruby/models/trend.rb +0 -229
  220. data/lib/finnhub_ruby/models/twitter_sentiment_content.rb +0 -279
  221. data/lib/finnhub_ruby/models/upgrade_downgrade.rb +0 -269
  222. data/lib/finnhub_ruby/models/usa_spending.rb +0 -409
  223. data/lib/finnhub_ruby/models/usa_spending_result.rb +0 -231
  224. data/lib/finnhub_ruby/models/uspto_patent.rb +0 -301
  225. data/lib/finnhub_ruby/models/uspto_patent_result.rb +0 -231
  226. data/lib/finnhub_ruby/models/visa_application.rb +0 -439
  227. data/lib/finnhub_ruby/models/visa_application_result.rb +0 -231
  228. data/spec/api/default_api_spec.rb +0 -724
  229. data/spec/api_client_spec.rb +0 -226
  230. data/spec/configuration_spec.rb +0 -42
  231. data/spec/models/aggregate_indicators_spec.rb +0 -40
  232. data/spec/models/basic_financials_spec.rb +0 -52
  233. data/spec/models/bond_candles_spec.rb +0 -46
  234. data/spec/models/bond_profile_spec.rb +0 -154
  235. data/spec/models/bond_tick_data_spec.rb +0 -82
  236. data/spec/models/breakdown_item_spec.rb +0 -40
  237. data/spec/models/company_earnings_quality_score_data_spec.rb +0 -70
  238. data/spec/models/company_earnings_quality_score_spec.rb +0 -46
  239. data/spec/models/company_esg_spec.rb +0 -64
  240. data/spec/models/company_executive_spec.rb +0 -40
  241. data/spec/models/company_news_spec.rb +0 -82
  242. data/spec/models/company_news_statistics_spec.rb +0 -46
  243. data/spec/models/company_profile2_spec.rb +0 -100
  244. data/spec/models/company_profile_spec.rb +0 -196
  245. data/spec/models/company_spec.rb +0 -70
  246. data/spec/models/country_metadata_spec.rb +0 -64
  247. data/spec/models/covid_info_spec.rb +0 -52
  248. data/spec/models/crypto_candles_spec.rb +0 -70
  249. data/spec/models/crypto_profile_spec.rb +0 -94
  250. data/spec/models/crypto_symbol_spec.rb +0 -46
  251. data/spec/models/development_spec.rb +0 -58
  252. data/spec/models/dividends2_info_spec.rb +0 -40
  253. data/spec/models/dividends2_spec.rb +0 -40
  254. data/spec/models/dividends_spec.rb +0 -76
  255. data/spec/models/earning_estimate_spec.rb +0 -58
  256. data/spec/models/earning_release_spec.rb +0 -82
  257. data/spec/models/earning_result_spec.rb +0 -64
  258. data/spec/models/earnings_calendar_spec.rb +0 -34
  259. data/spec/models/earnings_call_transcripts_list_spec.rb +0 -40
  260. data/spec/models/earnings_call_transcripts_spec.rb +0 -82
  261. data/spec/models/earnings_estimates_info_spec.rb +0 -58
  262. data/spec/models/earnings_estimates_spec.rb +0 -46
  263. data/spec/models/ebit_estimates_info_spec.rb +0 -58
  264. data/spec/models/ebit_estimates_spec.rb +0 -46
  265. data/spec/models/ebitda_estimates_info_spec.rb +0 -58
  266. data/spec/models/ebitda_estimates_spec.rb +0 -46
  267. data/spec/models/economic_calendar_spec.rb +0 -34
  268. data/spec/models/economic_code_spec.rb +0 -52
  269. data/spec/models/economic_data_info_spec.rb +0 -40
  270. data/spec/models/economic_data_spec.rb +0 -40
  271. data/spec/models/economic_event_spec.rb +0 -76
  272. data/spec/models/estimate_spec.rb +0 -58
  273. data/spec/models/etf_country_exposure_data_spec.rb +0 -40
  274. data/spec/models/etf_holdings_data_spec.rb +0 -70
  275. data/spec/models/etf_profile_data_spec.rb +0 -136
  276. data/spec/models/etf_sector_exposure_data_spec.rb +0 -40
  277. data/spec/models/etfs_country_exposure_spec.rb +0 -40
  278. data/spec/models/etfs_holdings_spec.rb +0 -52
  279. data/spec/models/etfs_profile_spec.rb +0 -40
  280. data/spec/models/etfs_sector_exposure_spec.rb +0 -40
  281. data/spec/models/fda_comittee_meeting_spec.rb +0 -52
  282. data/spec/models/filing_sentiment_spec.rb +0 -82
  283. data/spec/models/filing_spec.rb +0 -76
  284. data/spec/models/financial_statements_spec.rb +0 -40
  285. data/spec/models/financials_as_reported_spec.rb +0 -46
  286. data/spec/models/forex_candles_spec.rb +0 -70
  287. data/spec/models/forex_symbol_spec.rb +0 -46
  288. data/spec/models/forexrates_spec.rb +0 -40
  289. data/spec/models/fund_ownership_info_spec.rb +0 -58
  290. data/spec/models/fund_ownership_spec.rb +0 -40
  291. data/spec/models/historical_nbbo_spec.rb +0 -100
  292. data/spec/models/index_historical_constituent_spec.rb +0 -46
  293. data/spec/models/indicator_spec.rb +0 -46
  294. data/spec/models/indices_constituents_spec.rb +0 -40
  295. data/spec/models/indices_historical_constituents_spec.rb +0 -40
  296. data/spec/models/insider_sentiments_data_spec.rb +0 -58
  297. data/spec/models/insider_sentiments_spec.rb +0 -40
  298. data/spec/models/insider_transactions_spec.rb +0 -40
  299. data/spec/models/institutional_ownership_group_spec.rb +0 -40
  300. data/spec/models/institutional_ownership_info_spec.rb +0 -88
  301. data/spec/models/institutional_ownership_spec.rb +0 -46
  302. data/spec/models/institutional_portfolio_group_spec.rb +0 -46
  303. data/spec/models/institutional_portfolio_info_spec.rb +0 -94
  304. data/spec/models/institutional_portfolio_spec.rb +0 -46
  305. data/spec/models/institutional_profile_info_spec.rb +0 -64
  306. data/spec/models/institutional_profile_spec.rb +0 -40
  307. data/spec/models/international_filing_spec.rb +0 -82
  308. data/spec/models/investment_theme_portfolio_spec.rb +0 -34
  309. data/spec/models/investment_themes_spec.rb +0 -40
  310. data/spec/models/ipo_calendar_spec.rb +0 -34
  311. data/spec/models/ipo_event_spec.rb +0 -76
  312. data/spec/models/isin_change_info_spec.rb +0 -46
  313. data/spec/models/isin_change_spec.rb +0 -46
  314. data/spec/models/key_customers_suppliers_spec.rb +0 -52
  315. data/spec/models/last_bid_ask_spec.rb +0 -58
  316. data/spec/models/lobbying_data_spec.rb +0 -118
  317. data/spec/models/lobbying_result_spec.rb +0 -40
  318. data/spec/models/market_news_spec.rb +0 -82
  319. data/spec/models/mutual_fund_country_exposure_data_spec.rb +0 -40
  320. data/spec/models/mutual_fund_country_exposure_spec.rb +0 -40
  321. data/spec/models/mutual_fund_holdings_data_spec.rb +0 -70
  322. data/spec/models/mutual_fund_holdings_spec.rb +0 -52
  323. data/spec/models/mutual_fund_profile_data_spec.rb +0 -154
  324. data/spec/models/mutual_fund_profile_spec.rb +0 -40
  325. data/spec/models/mutual_fund_sector_exposure_data_spec.rb +0 -40
  326. data/spec/models/mutual_fund_sector_exposure_spec.rb +0 -40
  327. data/spec/models/news_sentiment_spec.rb +0 -64
  328. data/spec/models/ownership_info_spec.rb +0 -52
  329. data/spec/models/ownership_spec.rb +0 -40
  330. data/spec/models/pattern_recognition_spec.rb +0 -34
  331. data/spec/models/press_release_spec.rb +0 -40
  332. data/spec/models/price_metrics_spec.rb +0 -40
  333. data/spec/models/price_target_spec.rb +0 -64
  334. data/spec/models/quote_spec.rb +0 -70
  335. data/spec/models/recommendation_trend_spec.rb +0 -70
  336. data/spec/models/reddit_sentiment_content_spec.rb +0 -70
  337. data/spec/models/report_spec.rb +0 -94
  338. data/spec/models/revenue_breakdown_spec.rb +0 -46
  339. data/spec/models/revenue_estimates_info_spec.rb +0 -58
  340. data/spec/models/revenue_estimates_spec.rb +0 -46
  341. data/spec/models/sec_sentiment_analysis_spec.rb +0 -52
  342. data/spec/models/sector_metric_data_spec.rb +0 -40
  343. data/spec/models/sector_metric_spec.rb +0 -40
  344. data/spec/models/sentiment_spec.rb +0 -40
  345. data/spec/models/similarity_index_info_spec.rb +0 -100
  346. data/spec/models/similarity_index_spec.rb +0 -46
  347. data/spec/models/social_sentiment_spec.rb +0 -46
  348. data/spec/models/split_spec.rb +0 -52
  349. data/spec/models/stock_candles_spec.rb +0 -70
  350. data/spec/models/stock_symbol_spec.rb +0 -70
  351. data/spec/models/stock_transcripts_spec.rb +0 -58
  352. data/spec/models/supply_chain_relationships_spec.rb +0 -40
  353. data/spec/models/support_resistance_spec.rb +0 -34
  354. data/spec/models/symbol_change_info_spec.rb +0 -46
  355. data/spec/models/symbol_change_spec.rb +0 -46
  356. data/spec/models/symbol_lookup_info_spec.rb +0 -52
  357. data/spec/models/symbol_lookup_spec.rb +0 -40
  358. data/spec/models/technical_analysis_spec.rb +0 -40
  359. data/spec/models/tick_data_spec.rb +0 -82
  360. data/spec/models/transactions_spec.rb +0 -70
  361. data/spec/models/transcript_content_spec.rb +0 -46
  362. data/spec/models/transcript_participant_spec.rb +0 -46
  363. data/spec/models/trend_spec.rb +0 -40
  364. data/spec/models/twitter_sentiment_content_spec.rb +0 -70
  365. data/spec/models/upgrade_downgrade_spec.rb +0 -64
  366. data/spec/models/usa_spending_result_spec.rb +0 -40
  367. data/spec/models/usa_spending_spec.rb +0 -148
  368. data/spec/models/uspto_patent_result_spec.rb +0 -40
  369. data/spec/models/uspto_patent_spec.rb +0 -82
  370. data/spec/models/visa_application_result_spec.rb +0 -40
  371. data/spec/models/visa_application_spec.rb +0 -166
  372. data/spec/spec_helper.rb +0 -111
@@ -1,279 +0,0 @@
1
- =begin
2
- #Finnhub API
3
-
4
- #No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
5
-
6
- The version of the OpenAPI document: 1.0.0
7
-
8
- Generated by: https://openapi-generator.tech
9
- OpenAPI Generator version: 5.2.1
10
-
11
- =end
12
-
13
- require 'date'
14
- require 'time'
15
-
16
- module FinnhubRuby
17
- class ETFHoldingsData
18
- # Symbol description
19
- attr_accessor :symbol
20
-
21
- # Security name
22
- attr_accessor :name
23
-
24
- # ISIN.
25
- attr_accessor :isin
26
-
27
- # CUSIP.
28
- attr_accessor :cusip
29
-
30
- # Number of shares owned by the ETF.
31
- attr_accessor :share
32
-
33
- # Portfolio's percent
34
- attr_accessor :percent
35
-
36
- # Market value
37
- attr_accessor :value
38
-
39
- # Attribute mapping from ruby-style variable name to JSON key.
40
- def self.attribute_map
41
- {
42
- :'symbol' => :'symbol',
43
- :'name' => :'name',
44
- :'isin' => :'isin',
45
- :'cusip' => :'cusip',
46
- :'share' => :'share',
47
- :'percent' => :'percent',
48
- :'value' => :'value'
49
- }
50
- end
51
-
52
- # Returns all the JSON keys this model knows about
53
- def self.acceptable_attributes
54
- attribute_map.values
55
- end
56
-
57
- # Attribute type mapping.
58
- def self.openapi_types
59
- {
60
- :'symbol' => :'String',
61
- :'name' => :'String',
62
- :'isin' => :'String',
63
- :'cusip' => :'String',
64
- :'share' => :'Float',
65
- :'percent' => :'Float',
66
- :'value' => :'Float'
67
- }
68
- end
69
-
70
- # List of attributes with nullable: true
71
- def self.openapi_nullable
72
- Set.new([
73
- ])
74
- end
75
-
76
- # Initializes the object
77
- # @param [Hash] attributes Model attributes in the form of hash
78
- def initialize(attributes = {})
79
- if (!attributes.is_a?(Hash))
80
- fail ArgumentError, "The input argument (attributes) must be a hash in `FinnhubRuby::ETFHoldingsData` initialize method"
81
- end
82
-
83
- # check to see if the attribute exists and convert string to symbol for hash key
84
- attributes = attributes.each_with_object({}) { |(k, v), h|
85
- if (!self.class.attribute_map.key?(k.to_sym))
86
- fail ArgumentError, "`#{k}` is not a valid attribute in `FinnhubRuby::ETFHoldingsData`. Please check the name to make sure it's valid. List of attributes: " + self.class.attribute_map.keys.inspect
87
- end
88
- h[k.to_sym] = v
89
- }
90
-
91
- if attributes.key?(:'symbol')
92
- self.symbol = attributes[:'symbol']
93
- end
94
-
95
- if attributes.key?(:'name')
96
- self.name = attributes[:'name']
97
- end
98
-
99
- if attributes.key?(:'isin')
100
- self.isin = attributes[:'isin']
101
- end
102
-
103
- if attributes.key?(:'cusip')
104
- self.cusip = attributes[:'cusip']
105
- end
106
-
107
- if attributes.key?(:'share')
108
- self.share = attributes[:'share']
109
- end
110
-
111
- if attributes.key?(:'percent')
112
- self.percent = attributes[:'percent']
113
- end
114
-
115
- if attributes.key?(:'value')
116
- self.value = attributes[:'value']
117
- end
118
- end
119
-
120
- # Show invalid properties with the reasons. Usually used together with valid?
121
- # @return Array for valid properties with the reasons
122
- def list_invalid_properties
123
- invalid_properties = Array.new
124
- invalid_properties
125
- end
126
-
127
- # Check to see if the all the properties in the model are valid
128
- # @return true if the model is valid
129
- def valid?
130
- true
131
- end
132
-
133
- # Checks equality by comparing each attribute.
134
- # @param [Object] Object to be compared
135
- def ==(o)
136
- return true if self.equal?(o)
137
- self.class == o.class &&
138
- symbol == o.symbol &&
139
- name == o.name &&
140
- isin == o.isin &&
141
- cusip == o.cusip &&
142
- share == o.share &&
143
- percent == o.percent &&
144
- value == o.value
145
- end
146
-
147
- # @see the `==` method
148
- # @param [Object] Object to be compared
149
- def eql?(o)
150
- self == o
151
- end
152
-
153
- # Calculates hash code according to all attributes.
154
- # @return [Integer] Hash code
155
- def hash
156
- [symbol, name, isin, cusip, share, percent, value].hash
157
- end
158
-
159
- # Builds the object from hash
160
- # @param [Hash] attributes Model attributes in the form of hash
161
- # @return [Object] Returns the model itself
162
- def self.build_from_hash(attributes)
163
- new.build_from_hash(attributes)
164
- end
165
-
166
- # Builds the object from hash
167
- # @param [Hash] attributes Model attributes in the form of hash
168
- # @return [Object] Returns the model itself
169
- def build_from_hash(attributes)
170
- return nil unless attributes.is_a?(Hash)
171
- self.class.openapi_types.each_pair do |key, type|
172
- if attributes[self.class.attribute_map[key]].nil? && self.class.openapi_nullable.include?(key)
173
- self.send("#{key}=", nil)
174
- elsif type =~ /\AArray<(.*)>/i
175
- # check to ensure the input is an array given that the attribute
176
- # is documented as an array but the input is not
177
- if attributes[self.class.attribute_map[key]].is_a?(Array)
178
- self.send("#{key}=", attributes[self.class.attribute_map[key]].map { |v| _deserialize($1, v) })
179
- end
180
- elsif !attributes[self.class.attribute_map[key]].nil?
181
- self.send("#{key}=", _deserialize(type, attributes[self.class.attribute_map[key]]))
182
- end
183
- end
184
-
185
- self
186
- end
187
-
188
- # Deserializes the data based on type
189
- # @param string type Data type
190
- # @param string value Value to be deserialized
191
- # @return [Object] Deserialized data
192
- def _deserialize(type, value)
193
- case type.to_sym
194
- when :Time
195
- Time.parse(value)
196
- when :Date
197
- Date.parse(value)
198
- when :String
199
- value.to_s
200
- when :Integer
201
- value.to_i
202
- when :Float
203
- value.to_f
204
- when :Boolean
205
- if value.to_s =~ /\A(true|t|yes|y|1)\z/i
206
- true
207
- else
208
- false
209
- end
210
- when :Object
211
- # generic object (usually a Hash), return directly
212
- value
213
- when /\AArray<(?<inner_type>.+)>\z/
214
- inner_type = Regexp.last_match[:inner_type]
215
- value.map { |v| _deserialize(inner_type, v) }
216
- when /\AHash<(?<k_type>.+?), (?<v_type>.+)>\z/
217
- k_type = Regexp.last_match[:k_type]
218
- v_type = Regexp.last_match[:v_type]
219
- {}.tap do |hash|
220
- value.each do |k, v|
221
- hash[_deserialize(k_type, k)] = _deserialize(v_type, v)
222
- end
223
- end
224
- else # model
225
- # models (e.g. Pet) or oneOf
226
- klass = FinnhubRuby.const_get(type)
227
- klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value)
228
- end
229
- end
230
-
231
- # Returns the string representation of the object
232
- # @return [String] String presentation of the object
233
- def to_s
234
- to_hash.to_s
235
- end
236
-
237
- # to_body is an alias to to_hash (backward compatibility)
238
- # @return [Hash] Returns the object in the form of hash
239
- def to_body
240
- to_hash
241
- end
242
-
243
- # Returns the object in the form of hash
244
- # @return [Hash] Returns the object in the form of hash
245
- def to_hash
246
- hash = {}
247
- self.class.attribute_map.each_pair do |attr, param|
248
- value = self.send(attr)
249
- if value.nil?
250
- is_nullable = self.class.openapi_nullable.include?(attr)
251
- next if !is_nullable || (is_nullable && !instance_variable_defined?(:"@#{attr}"))
252
- end
253
-
254
- hash[param] = _to_hash(value)
255
- end
256
- hash
257
- end
258
-
259
- # Outputs non-array value in the form of hash
260
- # For object, use to_hash. Otherwise, just return the value
261
- # @param [Object] value Any valid value
262
- # @return [Hash] Returns the value in the form of hash
263
- def _to_hash(value)
264
- if value.is_a?(Array)
265
- value.compact.map { |v| _to_hash(v) }
266
- elsif value.is_a?(Hash)
267
- {}.tap do |hash|
268
- value.each { |k, v| hash[k] = _to_hash(v) }
269
- end
270
- elsif value.respond_to? :to_hash
271
- value.to_hash
272
- else
273
- value
274
- end
275
- end
276
-
277
- end
278
-
279
- end
@@ -1,419 +0,0 @@
1
- =begin
2
- #Finnhub API
3
-
4
- #No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
5
-
6
- The version of the OpenAPI document: 1.0.0
7
-
8
- Generated by: https://openapi-generator.tech
9
- OpenAPI Generator version: 5.2.1
10
-
11
- =end
12
-
13
- require 'date'
14
- require 'time'
15
-
16
- module FinnhubRuby
17
- class ETFProfileData
18
- # Name
19
- attr_accessor :name
20
-
21
- # Asset Class.
22
- attr_accessor :asset_class
23
-
24
- # Investment Segment.
25
- attr_accessor :investment_segment
26
-
27
- # AUM.
28
- attr_accessor :aum
29
-
30
- # NAV.
31
- attr_accessor :nav
32
-
33
- # NAV currency.
34
- attr_accessor :nav_currency
35
-
36
- # Expense ratio. For non-US funds, this is the <a href=\"https://www.esma.europa.eu/sites/default/files/library/2015/11/09_1028_final_kid_ongoing_charges_methodology_for_publication_u_2_.pdf\" target=\"_blank\">KID ongoing charges<a/>.
37
- attr_accessor :expense_ratio
38
-
39
- # Tracking Index.
40
- attr_accessor :tracking_index
41
-
42
- # ETF issuer.
43
- attr_accessor :etf_company
44
-
45
- # ETF domicile.
46
- attr_accessor :domicile
47
-
48
- # Inception date.
49
- attr_accessor :inception_date
50
-
51
- # ETF's website.
52
- attr_accessor :website
53
-
54
- # ISIN.
55
- attr_accessor :isin
56
-
57
- # CUSIP.
58
- attr_accessor :cusip
59
-
60
- # P/E.
61
- attr_accessor :price_to_earnings
62
-
63
- # P/B.
64
- attr_accessor :price_to_book
65
-
66
- # 30-day average volume.
67
- attr_accessor :avg_volume
68
-
69
- # ETF's description.
70
- attr_accessor :description
71
-
72
- # Whether the ETF is inverse
73
- attr_accessor :is_inverse
74
-
75
- # Whether the ETF is leveraged
76
- attr_accessor :is_leveraged
77
-
78
- # Leverage factor.
79
- attr_accessor :leverage_factor
80
-
81
- # Attribute mapping from ruby-style variable name to JSON key.
82
- def self.attribute_map
83
- {
84
- :'name' => :'name',
85
- :'asset_class' => :'assetClass',
86
- :'investment_segment' => :'investmentSegment',
87
- :'aum' => :'aum',
88
- :'nav' => :'nav',
89
- :'nav_currency' => :'navCurrency',
90
- :'expense_ratio' => :'expenseRatio',
91
- :'tracking_index' => :'trackingIndex',
92
- :'etf_company' => :'etfCompany',
93
- :'domicile' => :'domicile',
94
- :'inception_date' => :'inceptionDate',
95
- :'website' => :'website',
96
- :'isin' => :'isin',
97
- :'cusip' => :'cusip',
98
- :'price_to_earnings' => :'priceToEarnings',
99
- :'price_to_book' => :'priceToBook',
100
- :'avg_volume' => :'avgVolume',
101
- :'description' => :'description',
102
- :'is_inverse' => :'isInverse',
103
- :'is_leveraged' => :'isLeveraged',
104
- :'leverage_factor' => :'leverageFactor'
105
- }
106
- end
107
-
108
- # Returns all the JSON keys this model knows about
109
- def self.acceptable_attributes
110
- attribute_map.values
111
- end
112
-
113
- # Attribute type mapping.
114
- def self.openapi_types
115
- {
116
- :'name' => :'String',
117
- :'asset_class' => :'String',
118
- :'investment_segment' => :'String',
119
- :'aum' => :'Float',
120
- :'nav' => :'Float',
121
- :'nav_currency' => :'String',
122
- :'expense_ratio' => :'Float',
123
- :'tracking_index' => :'String',
124
- :'etf_company' => :'String',
125
- :'domicile' => :'String',
126
- :'inception_date' => :'Date',
127
- :'website' => :'String',
128
- :'isin' => :'String',
129
- :'cusip' => :'String',
130
- :'price_to_earnings' => :'Float',
131
- :'price_to_book' => :'Float',
132
- :'avg_volume' => :'Float',
133
- :'description' => :'String',
134
- :'is_inverse' => :'Boolean',
135
- :'is_leveraged' => :'Boolean',
136
- :'leverage_factor' => :'Float'
137
- }
138
- end
139
-
140
- # List of attributes with nullable: true
141
- def self.openapi_nullable
142
- Set.new([
143
- ])
144
- end
145
-
146
- # Initializes the object
147
- # @param [Hash] attributes Model attributes in the form of hash
148
- def initialize(attributes = {})
149
- if (!attributes.is_a?(Hash))
150
- fail ArgumentError, "The input argument (attributes) must be a hash in `FinnhubRuby::ETFProfileData` initialize method"
151
- end
152
-
153
- # check to see if the attribute exists and convert string to symbol for hash key
154
- attributes = attributes.each_with_object({}) { |(k, v), h|
155
- if (!self.class.attribute_map.key?(k.to_sym))
156
- fail ArgumentError, "`#{k}` is not a valid attribute in `FinnhubRuby::ETFProfileData`. Please check the name to make sure it's valid. List of attributes: " + self.class.attribute_map.keys.inspect
157
- end
158
- h[k.to_sym] = v
159
- }
160
-
161
- if attributes.key?(:'name')
162
- self.name = attributes[:'name']
163
- end
164
-
165
- if attributes.key?(:'asset_class')
166
- self.asset_class = attributes[:'asset_class']
167
- end
168
-
169
- if attributes.key?(:'investment_segment')
170
- self.investment_segment = attributes[:'investment_segment']
171
- end
172
-
173
- if attributes.key?(:'aum')
174
- self.aum = attributes[:'aum']
175
- end
176
-
177
- if attributes.key?(:'nav')
178
- self.nav = attributes[:'nav']
179
- end
180
-
181
- if attributes.key?(:'nav_currency')
182
- self.nav_currency = attributes[:'nav_currency']
183
- end
184
-
185
- if attributes.key?(:'expense_ratio')
186
- self.expense_ratio = attributes[:'expense_ratio']
187
- end
188
-
189
- if attributes.key?(:'tracking_index')
190
- self.tracking_index = attributes[:'tracking_index']
191
- end
192
-
193
- if attributes.key?(:'etf_company')
194
- self.etf_company = attributes[:'etf_company']
195
- end
196
-
197
- if attributes.key?(:'domicile')
198
- self.domicile = attributes[:'domicile']
199
- end
200
-
201
- if attributes.key?(:'inception_date')
202
- self.inception_date = attributes[:'inception_date']
203
- end
204
-
205
- if attributes.key?(:'website')
206
- self.website = attributes[:'website']
207
- end
208
-
209
- if attributes.key?(:'isin')
210
- self.isin = attributes[:'isin']
211
- end
212
-
213
- if attributes.key?(:'cusip')
214
- self.cusip = attributes[:'cusip']
215
- end
216
-
217
- if attributes.key?(:'price_to_earnings')
218
- self.price_to_earnings = attributes[:'price_to_earnings']
219
- end
220
-
221
- if attributes.key?(:'price_to_book')
222
- self.price_to_book = attributes[:'price_to_book']
223
- end
224
-
225
- if attributes.key?(:'avg_volume')
226
- self.avg_volume = attributes[:'avg_volume']
227
- end
228
-
229
- if attributes.key?(:'description')
230
- self.description = attributes[:'description']
231
- end
232
-
233
- if attributes.key?(:'is_inverse')
234
- self.is_inverse = attributes[:'is_inverse']
235
- end
236
-
237
- if attributes.key?(:'is_leveraged')
238
- self.is_leveraged = attributes[:'is_leveraged']
239
- end
240
-
241
- if attributes.key?(:'leverage_factor')
242
- self.leverage_factor = attributes[:'leverage_factor']
243
- end
244
- end
245
-
246
- # Show invalid properties with the reasons. Usually used together with valid?
247
- # @return Array for valid properties with the reasons
248
- def list_invalid_properties
249
- invalid_properties = Array.new
250
- invalid_properties
251
- end
252
-
253
- # Check to see if the all the properties in the model are valid
254
- # @return true if the model is valid
255
- def valid?
256
- true
257
- end
258
-
259
- # Checks equality by comparing each attribute.
260
- # @param [Object] Object to be compared
261
- def ==(o)
262
- return true if self.equal?(o)
263
- self.class == o.class &&
264
- name == o.name &&
265
- asset_class == o.asset_class &&
266
- investment_segment == o.investment_segment &&
267
- aum == o.aum &&
268
- nav == o.nav &&
269
- nav_currency == o.nav_currency &&
270
- expense_ratio == o.expense_ratio &&
271
- tracking_index == o.tracking_index &&
272
- etf_company == o.etf_company &&
273
- domicile == o.domicile &&
274
- inception_date == o.inception_date &&
275
- website == o.website &&
276
- isin == o.isin &&
277
- cusip == o.cusip &&
278
- price_to_earnings == o.price_to_earnings &&
279
- price_to_book == o.price_to_book &&
280
- avg_volume == o.avg_volume &&
281
- description == o.description &&
282
- is_inverse == o.is_inverse &&
283
- is_leveraged == o.is_leveraged &&
284
- leverage_factor == o.leverage_factor
285
- end
286
-
287
- # @see the `==` method
288
- # @param [Object] Object to be compared
289
- def eql?(o)
290
- self == o
291
- end
292
-
293
- # Calculates hash code according to all attributes.
294
- # @return [Integer] Hash code
295
- def hash
296
- [name, asset_class, investment_segment, aum, nav, nav_currency, expense_ratio, tracking_index, etf_company, domicile, inception_date, website, isin, cusip, price_to_earnings, price_to_book, avg_volume, description, is_inverse, is_leveraged, leverage_factor].hash
297
- end
298
-
299
- # Builds the object from hash
300
- # @param [Hash] attributes Model attributes in the form of hash
301
- # @return [Object] Returns the model itself
302
- def self.build_from_hash(attributes)
303
- new.build_from_hash(attributes)
304
- end
305
-
306
- # Builds the object from hash
307
- # @param [Hash] attributes Model attributes in the form of hash
308
- # @return [Object] Returns the model itself
309
- def build_from_hash(attributes)
310
- return nil unless attributes.is_a?(Hash)
311
- self.class.openapi_types.each_pair do |key, type|
312
- if attributes[self.class.attribute_map[key]].nil? && self.class.openapi_nullable.include?(key)
313
- self.send("#{key}=", nil)
314
- elsif type =~ /\AArray<(.*)>/i
315
- # check to ensure the input is an array given that the attribute
316
- # is documented as an array but the input is not
317
- if attributes[self.class.attribute_map[key]].is_a?(Array)
318
- self.send("#{key}=", attributes[self.class.attribute_map[key]].map { |v| _deserialize($1, v) })
319
- end
320
- elsif !attributes[self.class.attribute_map[key]].nil?
321
- self.send("#{key}=", _deserialize(type, attributes[self.class.attribute_map[key]]))
322
- end
323
- end
324
-
325
- self
326
- end
327
-
328
- # Deserializes the data based on type
329
- # @param string type Data type
330
- # @param string value Value to be deserialized
331
- # @return [Object] Deserialized data
332
- def _deserialize(type, value)
333
- case type.to_sym
334
- when :Time
335
- Time.parse(value)
336
- when :Date
337
- Date.parse(value)
338
- when :String
339
- value.to_s
340
- when :Integer
341
- value.to_i
342
- when :Float
343
- value.to_f
344
- when :Boolean
345
- if value.to_s =~ /\A(true|t|yes|y|1)\z/i
346
- true
347
- else
348
- false
349
- end
350
- when :Object
351
- # generic object (usually a Hash), return directly
352
- value
353
- when /\AArray<(?<inner_type>.+)>\z/
354
- inner_type = Regexp.last_match[:inner_type]
355
- value.map { |v| _deserialize(inner_type, v) }
356
- when /\AHash<(?<k_type>.+?), (?<v_type>.+)>\z/
357
- k_type = Regexp.last_match[:k_type]
358
- v_type = Regexp.last_match[:v_type]
359
- {}.tap do |hash|
360
- value.each do |k, v|
361
- hash[_deserialize(k_type, k)] = _deserialize(v_type, v)
362
- end
363
- end
364
- else # model
365
- # models (e.g. Pet) or oneOf
366
- klass = FinnhubRuby.const_get(type)
367
- klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value)
368
- end
369
- end
370
-
371
- # Returns the string representation of the object
372
- # @return [String] String presentation of the object
373
- def to_s
374
- to_hash.to_s
375
- end
376
-
377
- # to_body is an alias to to_hash (backward compatibility)
378
- # @return [Hash] Returns the object in the form of hash
379
- def to_body
380
- to_hash
381
- end
382
-
383
- # Returns the object in the form of hash
384
- # @return [Hash] Returns the object in the form of hash
385
- def to_hash
386
- hash = {}
387
- self.class.attribute_map.each_pair do |attr, param|
388
- value = self.send(attr)
389
- if value.nil?
390
- is_nullable = self.class.openapi_nullable.include?(attr)
391
- next if !is_nullable || (is_nullable && !instance_variable_defined?(:"@#{attr}"))
392
- end
393
-
394
- hash[param] = _to_hash(value)
395
- end
396
- hash
397
- end
398
-
399
- # Outputs non-array value in the form of hash
400
- # For object, use to_hash. Otherwise, just return the value
401
- # @param [Object] value Any valid value
402
- # @return [Hash] Returns the value in the form of hash
403
- def _to_hash(value)
404
- if value.is_a?(Array)
405
- value.compact.map { |v| _to_hash(v) }
406
- elsif value.is_a?(Hash)
407
- {}.tap do |hash|
408
- value.each { |k, v| hash[k] = _to_hash(v) }
409
- end
410
- elsif value.respond_to? :to_hash
411
- value.to_hash
412
- else
413
- value
414
- end
415
- end
416
-
417
- end
418
-
419
- end