Class: Solana::Ruby::Kit::Rpc::Client
- Inherits:
-
Object
- Object
- Solana::Ruby::Kit::Rpc::Client
- Extended by:
- T::Sig
- Includes:
- Api::GetAccountInfo, Api::GetBalance, Api::GetBlockHeight, Api::GetBlockTime, Api::GetEpochInfo, Api::GetEpochSchedule, Api::GetInflationReward, Api::GetLatestBlockhash, Api::GetMinimumBalanceForRentExemption, Api::GetMultipleAccounts, Api::GetProgramAccounts, Api::GetSignatureStatuses, Api::GetSlot, Api::GetTokenAccountBalance, Api::GetTokenAccountsByOwner, Api::GetTransaction, Api::GetVoteAccounts, Api::IsBlockhashValid, Api::RequestAirdrop, Api::SendTransaction, Api::SimulateTransaction
- Defined in:
- lib/solana/ruby/kit/rpc/client.rb
Overview
Solana JSON-RPC client. Mirrors TypeScript’s ‘Rpc` object created by `createSolanaRpc(url)`.
Includes every API method as a mixin so the class surface exactly matches the TypeScript package’s method set. The ‘transport` accessor provides sub-modules with the HTTP connection.
Constant Summary
Constants included from Api::GetAccountInfo
Api::GetAccountInfo::SUPPORTED_ENCODINGS
Instance Attribute Summary collapse
-
#transport ⇒ Object
readonly
Returns the value of attribute transport.
Instance Method Summary collapse
-
#initialize(cluster_url, headers: {}, timeout: Transport::DEFAULT_TIMEOUT, open_timeout: Transport::DEFAULT_OPEN_TIMEOUT) ⇒ Client
constructor
A new instance of Client.
Methods included from Api::GetInflationReward
Methods included from Api::GetEpochSchedule
Methods included from Api::GetBlockTime
Methods included from Api::SimulateTransaction
Methods included from Api::GetVoteAccounts
Methods included from Api::GetEpochInfo
Methods included from Api::GetTokenAccountsByOwner
Methods included from Api::GetTokenAccountBalance
Methods included from Api::GetTransaction
Methods included from Api::GetProgramAccounts
Methods included from Api::GetMultipleAccounts
Methods included from Api::GetMinimumBalanceForRentExemption
#get_minimum_balance_for_rent_exemption
Methods included from Api::IsBlockhashValid
Methods included from Api::RequestAirdrop
Methods included from Api::SendTransaction
Methods included from Api::GetSignatureStatuses
Methods included from Api::GetBlockHeight
Methods included from Api::GetAccountInfo
Methods included from Api::GetLatestBlockhash
Methods included from Api::GetBalance
Methods included from Api::GetSlot
Constructor Details
#initialize(cluster_url, headers: {}, timeout: Transport::DEFAULT_TIMEOUT, open_timeout: Transport::DEFAULT_OPEN_TIMEOUT) ⇒ Client
Returns a new instance of Client.
80 81 82 83 84 85 86 |
# File 'lib/solana/ruby/kit/rpc/client.rb', line 80 def initialize(cluster_url, headers: {}, timeout: Transport::DEFAULT_TIMEOUT, open_timeout: Transport::DEFAULT_OPEN_TIMEOUT) url = cluster_url.respond_to?(:url) ? cluster_url.url : cluster_url.to_s @transport = T.let( Transport.new(url: url, headers: headers, timeout: timeout, open_timeout: open_timeout), Transport ) end |
Instance Attribute Details
#transport ⇒ Object (readonly)
Returns the value of attribute transport.
67 68 69 |
# File 'lib/solana/ruby/kit/rpc/client.rb', line 67 def transport @transport end |