Sha256: 870abe3e5f253f5e7cf1143e99a6e09f46149d786e9c6f60cd8eb8847f0eb330

Contents?: true

Size: 693 Bytes

Versions: 11

Compression:

Stored size: 693 Bytes

Contents

module BTC
  # Represents a distinct issuance of any given asset.
  # Hash160(tx hash || txout index || amount)
  class IssuanceID < BTC::Hash160Address

    register_class self

    def self.mainnet_version
      63 # 'S' prefix ('single', 'issuance')
    end

    def self.testnet_version
      125 # 's' prefix
    end

    def initialize(string: nil, hash: nil, network: nil, outpoint: nil, _raw_data: nil)
      if outpoint
        data = outpoint.transaction_hash + WireFormat.encode_uint32be(outpoint.index)
        super(hash: BTC.hash160(data), network: network)
      else
        super(string: string, hash: hash, network: network, _raw_data: _raw_data)
      end
    end
  end
end

Version data entries

11 entries across 11 versions & 1 rubygems

Version Path
btcruby-1.8 lib/btcruby/open_assets/issuance_id.rb
btcruby-1.7 lib/btcruby/open_assets/issuance_id.rb
btcruby-1.6 lib/btcruby/open_assets/issuance_id.rb
btcruby-1.5.1 lib/btcruby/open_assets/issuance_id.rb
btcruby-1.5 lib/btcruby/open_assets/issuance_id.rb
btcruby-1.4 lib/btcruby/open_assets/issuance_id.rb
btcruby-1.3 lib/btcruby/open_assets/issuance_id.rb
btcruby-1.2.2 lib/btcruby/open_assets/issuance_id.rb
btcruby-1.2.1 lib/btcruby/open_assets/issuance_id.rb
btcruby-1.2 lib/btcruby/open_assets/issuance_id.rb
btcruby-1.1.6 lib/btcruby/open_assets/issuance_id.rb