Class: TonSdkRuby::OutAction

Inherits:
Object
  • Object
show all
Extended by:
TonSdkRuby
Includes:
TonSdkRuby
Defined in:
lib/ton-sdk-ruby/types/block.rb

Constant Summary

Constants included from TonSdkRuby

DEPTH_BITS, FLAG_BOUNCEABLE, FLAG_NON_BOUNCEABLE, FLAG_TEST_ONLY, HASH_BITS, INT32_MAX, INT32_MIN, LEAN_BOC_MAGIC_PREFIX, LEAN_BOC_MAGIC_PREFIX_CRC, REACH_BOC_MAGIC_PREFIX, VERSION

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Methods included from TonSdkRuby

augment, base64_to_bytes, bits_to_big_int, bits_to_big_uint, bits_to_bytes, bits_to_hex, bits_to_int_uint, breadth_first_sort, bytes_compare, bytes_needed_for_words_bip39, bytes_to_base64, bytes_to_bits, bytes_to_data_string, bytes_to_hex, bytes_to_string, bytes_to_uint, crc16, crc16_bytes_be, crc32c, crc32c_bytes_le, depth_first_sort, deserialize, deserialize_cell, deserialize_fift, deserialize_header, generate_words_bip39, get_mapper, hex_to_bits, hex_to_bytes, hex_to_data_string, read_json_from_link, read_post_json_from_link, require_type, rollback, serialize, serialize_cell, sha256, sha512, sign_cell, slice_into_chunks, string_to_bytes, uint_to_hex, validate_library_reference, validate_merkle_proof, validate_merkle_update, validate_ordinary, validate_pruned_branch

Constructor Details

#initialize(data) ⇒ OutAction

Returns a new instance of OutAction.



358
359
360
361
362
363
364
365
# File 'lib/ton-sdk-ruby/types/block.rb', line 358

def initialize(data)
  case data.tag
  when 'action_send_msg' then action_send_msg(data)
  when 'action_set_code' then action_set_code(data)
  else
    raise 'OutAction: unexpected tag'
  end
end

Instance Attribute Details

#cellObject (readonly)

Returns the value of attribute cell.



402
403
404
# File 'lib/ton-sdk-ruby/types/block.rb', line 402

def cell
  @cell
end

#dataObject (readonly)

Returns the value of attribute data.



402
403
404
# File 'lib/ton-sdk-ruby/types/block.rb', line 402

def data
  @data
end

Class Method Details

.parse(cs) ⇒ Object



384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
# File 'lib/ton-sdk-ruby/types/block.rb', line 384

def self.parse(cs)
  tag = cs.load_uint(32)
  data = {}

  case tag
  when 0x0ec3c86d # action_send_msg
    mode = cs.load_uint(8)
    out_msg = cs.load_ref.parse
    data = ActionSendMsg.new({ tag: 'action_send_msg', mode: mode, out_msg: Message.parse(out_msg) })
  when 0xad4de08e # action_set_code
    data = ActionSetCode.new({ tag: 'action_set_code', new_code: cs.load_ref })
  else
    raise 'OutAction: unexpected tag'
  end

  OutAction.new(data)
end