class Ciri::Types::Address

Public Class Methods

new(address) click to toggle source
# File lib/ciri/types/address.rb, line 45
def initialize(address)
  @address = address.to_s
end
rlp_decode(data) click to toggle source
# File lib/ciri/types/address.rb, line 36
def rlp_decode(data)
  address = self.new(RLP.decode(data))
  address.validate
  address
end
rlp_encode(address) click to toggle source
# File lib/ciri/types/address.rb, line 32
def rlp_encode(address)
  RLP.encode(address.to_s)
end

Public Instance Methods

==(other) click to toggle source
# File lib/ciri/types/address.rb, line 49
def ==(other)
  self.class == other.class && to_s == other.to_s
end
empty?() click to toggle source
# File lib/ciri/types/address.rb, line 63
def empty?
  @address.empty?
end
to_hex() click to toggle source
# File lib/ciri/types/address.rb, line 59
def to_hex
  Utils.to_hex to_s
end
to_s() click to toggle source
# File lib/ciri/types/address.rb, line 53
def to_s
  @address
end
Also aliased as: to_str
to_str()
Alias for: to_s
validate() click to toggle source
# File lib/ciri/types/address.rb, line 67
def validate
  # empty address is valid
  return if empty?
  raise InvalidError.new("address must be 20 size, got #{@address.size}") unless @address.size == 20
end