Skip to content

Commit

Permalink
feat: change to class method
Browse files Browse the repository at this point in the history
  • Loading branch information
shaojunda committed Sep 19, 2019
1 parent 219f749 commit 4a7ea7e
Showing 1 changed file with 6 additions and 4 deletions.
10 changes: 6 additions & 4 deletions lib/ckb/address.rb
Original file line number Diff line number Diff line change
Expand Up @@ -35,12 +35,13 @@ def generate
# see https://github.com/nervosnetwork/rfcs/blob/master/rfcs/0021-ckb-address-format/0021-ckb-address-format.md for more info.
# @param [String] hash160
# @return [String]
def generate_short_payload_hash160_address(hash160)
def self.generate_short_payload_hash160_address(hash160, mode: DEFAULT_MODE)
prefix = prefix(mode: mode)
hash160_bin = [hash160[2..-1]].pack("H*")
type = [TYPES[0]].pack("H*")
code_hash_index = [CODE_HASH_INDEXES[1]].pack("H*")
payload = type + code_hash_index + hash160_bin
ConvertAddress.encode(@prefix, payload)
ConvertAddress.encode(prefix, payload)
end

# Generates full payload format address
Expand All @@ -50,7 +51,8 @@ def generate_short_payload_hash160_address(hash160)
# @param [String] code_hash
# @param [String[]] args
# @return [String]
def generate_full_payload_address(format_type, code_hash, args)
def self.generate_full_payload_address(format_type, code_hash, args, mode: DEFAULT_MODE)
prefix = prefix(mode: mode)
format_type = Utils.to_hex(format_type)[2..-1].rjust(2, '0')
raise InvalidFormatTypeError.new("Invalid format type") unless TYPES[1..-1].include?(format_type)
raise InvalidArgsTypeError.new("Args should be an array") unless args.is_a?(Array)
Expand All @@ -66,7 +68,7 @@ def generate_full_payload_address(format_type, code_hash, args)
end
end

CKB::ConvertAddress.encode(@prefix, payload)
CKB::ConvertAddress.encode(prefix, payload)
end

alias to_s generate
Expand Down

0 comments on commit 4a7ea7e

Please sign in to comment.