class TonSdk::Abi::AbiFunction

Attributes

id_[R]
inputs[R]
name[R]
outputs[R]

Public Class Methods

from_json(j) click to toggle source
# File lib/ton_sdk_client/abi.rb, line 521
def self.from_json(j)
  return nil if j.nil?

  inp_s = if j["inputs"].nil?
      []
    else
      j["inputs"].compact.map do |x|
        # TODO recursive parsing of AbiParam
        AbiParam.from_json(x)
      end
    end

  out_s = if j["outputs"].nil?
    []
  else
    j["outputs"].compact.map do |x|
      # TODO recursive parsing of AbiParam
      AbiParam.from_json(x)
    end
  end

  self.new(
    name: j["name"],
    inputs: inp_s,
    outputs: out_s,
    id_: j["id"]
  )
end
new(name:, inputs:, outputs:, id_: nil) click to toggle source
# File lib/ton_sdk_client/abi.rb, line 493
def initialize(name:, inputs:, outputs:, id_: nil)
  @name = name
  @inputs = inputs
  @outputs = outputs
  @id_ = id_
end

Public Instance Methods

to_h() click to toggle source
# File lib/ton_sdk_client/abi.rb, line 500
def to_h
  in_h_s = if !@inputs.nil?
    @inputs.compact.map(&:to_h)
  else
    []
  end

  ou_h_s = if !@outputs.nil?
    @outputs.compact.map(&:to_h)
  else
    []
  end

  {
    name: @name,
    inputs: in_h_s,
    outputs: ou_h_s,
    id: @id_
  }
end