ton_sdk_client 1.7.1

Sign up to get free protection for your applications and to get access to all the features.
@@ -0,0 +1,44 @@
1
+ module TonSdk
2
+ class ResultOfConvertAddress
3
+ attr_reader :address
4
+
5
+ def initialize(a)
6
+ @address = a
7
+ end
8
+ end
9
+
10
+ class SdkError < StandardError
11
+ attr_reader :code, :message, :data
12
+
13
+ def initialize(code: nil, message: nil, data: nil)
14
+ @code = code
15
+ @message = message
16
+ @data = data
17
+ end
18
+ end
19
+
20
+ class NativeLibResponsetResult
21
+ attr_reader :result, :error
22
+
23
+ def initialize(result: nil, error: nil)
24
+ if !result.nil? && !error.nil?
25
+ raise ArgumentError.new('only either argument, result or error, should be specified')
26
+ elsif !result.nil?
27
+ @result = result
28
+ elsif !error.nil?
29
+ @error = SdkError.new(
30
+ code: error["code"],
31
+ message: error["message"],
32
+ data: error["data"]
33
+ )
34
+ else
35
+ raise ArgumentError.new('some arguments are wrong; provide either result or error')
36
+ end
37
+
38
+ self
39
+ end
40
+
41
+ def success? = !@result.nil?
42
+ def failure? = !@error.nil?
43
+ end
44
+ end
@@ -0,0 +1,76 @@
1
+ module TonSdk
2
+ module Utils
3
+
4
+ #
5
+ # types
6
+ #
7
+
8
+ class AddressStringFormat
9
+ TYPES = [:account_id, :hex, :base64]
10
+ attr_reader :type_, :url, :test_, :bounce
11
+
12
+ def initialize(type_:, url: nil, test_: nil, bounce: nil)
13
+ unless TYPES.include?(type_)
14
+ raise ArgumentError.new("type #{type_} is unknown; known types: #{TYPES}")
15
+ end
16
+
17
+ @type_ = type_
18
+ if @type_ == :base64
19
+ @url = url
20
+ @test_ = test_
21
+ @bounce = bounce
22
+ end
23
+ end
24
+
25
+ def to_h
26
+ {
27
+ type: Helper.sym_to_capitalized_case_str(@type_),
28
+ url: @url,
29
+ test: @test_,
30
+ bounce: @bounce
31
+ }
32
+ end
33
+ end
34
+
35
+ class ParamsOfConvertAddress
36
+ attr_reader :address, :output_format
37
+
38
+ def initialize(address:, output_format:)
39
+ @address = address
40
+ @output_format = output_format
41
+ end
42
+
43
+ def to_h
44
+ {
45
+ address: @address,
46
+ output_format: @output_format.to_h
47
+ }
48
+ end
49
+ end
50
+
51
+ class ResultOfConvertAddress
52
+ attr_reader :address
53
+
54
+ def initialize(a)
55
+ @address = a
56
+ end
57
+ end
58
+
59
+
60
+ #
61
+ # functions
62
+ #
63
+
64
+ def self.convert_address(ctx, prm)
65
+ Interop::request_to_native_lib(ctx, "utils.convert_address", prm.to_h.to_json) do |resp|
66
+ if resp.success?
67
+ yield NativeLibResponsetResult.new(
68
+ result: Utils::ResultOfConvertAddress.new(resp.result["address"])
69
+ )
70
+ else
71
+ yield resp
72
+ end
73
+ end
74
+ end
75
+ end
76
+ end
@@ -0,0 +1,5 @@
1
+ module TonSdk
2
+ VERSION = "1.7.1"
3
+ NATIVE_LIB_VERSION = "1.7.0"
4
+ SDK_VERSION = "1.7.0"
5
+ end
metadata ADDED
@@ -0,0 +1,134 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: ton_sdk_client
3
+ version: !ruby/object:Gem::Version
4
+ version: 1.7.1
5
+ platform: ruby
6
+ authors:
7
+ - Alex Maslakov
8
+ autorequire:
9
+ bindir: bin
10
+ cert_chain: []
11
+ date: 2021-03-25 00:00:00.000000000 Z
12
+ dependencies:
13
+ - !ruby/object:Gem::Dependency
14
+ name: ffi
15
+ requirement: !ruby/object:Gem::Requirement
16
+ requirements:
17
+ - - "~>"
18
+ - !ruby/object:Gem::Version
19
+ version: '1.13'
20
+ type: :runtime
21
+ prerelease: false
22
+ version_requirements: !ruby/object:Gem::Requirement
23
+ requirements:
24
+ - - "~>"
25
+ - !ruby/object:Gem::Version
26
+ version: '1.13'
27
+ - !ruby/object:Gem::Dependency
28
+ name: concurrent-ruby
29
+ requirement: !ruby/object:Gem::Requirement
30
+ requirements:
31
+ - - "~>"
32
+ - !ruby/object:Gem::Version
33
+ version: 1.1.7
34
+ type: :runtime
35
+ prerelease: false
36
+ version_requirements: !ruby/object:Gem::Requirement
37
+ requirements:
38
+ - - "~>"
39
+ - !ruby/object:Gem::Version
40
+ version: 1.1.7
41
+ - !ruby/object:Gem::Dependency
42
+ name: rspec
43
+ requirement: !ruby/object:Gem::Requirement
44
+ requirements:
45
+ - - "~>"
46
+ - !ruby/object:Gem::Version
47
+ version: '3.4'
48
+ type: :development
49
+ prerelease: false
50
+ version_requirements: !ruby/object:Gem::Requirement
51
+ requirements:
52
+ - - "~>"
53
+ - !ruby/object:Gem::Version
54
+ version: '3.4'
55
+ - !ruby/object:Gem::Dependency
56
+ name: bundler
57
+ requirement: !ruby/object:Gem::Requirement
58
+ requirements:
59
+ - - "~>"
60
+ - !ruby/object:Gem::Version
61
+ version: '2.1'
62
+ type: :development
63
+ prerelease: false
64
+ version_requirements: !ruby/object:Gem::Requirement
65
+ requirements:
66
+ - - "~>"
67
+ - !ruby/object:Gem::Version
68
+ version: '2.1'
69
+ - !ruby/object:Gem::Dependency
70
+ name: rake
71
+ requirement: !ruby/object:Gem::Requirement
72
+ requirements:
73
+ - - "~>"
74
+ - !ruby/object:Gem::Version
75
+ version: '13.0'
76
+ type: :development
77
+ prerelease: false
78
+ version_requirements: !ruby/object:Gem::Requirement
79
+ requirements:
80
+ - - "~>"
81
+ - !ruby/object:Gem::Version
82
+ version: '13.0'
83
+ description: TON SDK client library written in Ruby and to be used as a Ruby gem,
84
+ for tonlabs.io
85
+ email: alex@serendipia.email
86
+ executables: []
87
+ extensions: []
88
+ extra_rdoc_files:
89
+ - README.md
90
+ - LICENSE
91
+ files:
92
+ - CHANGELOG.md
93
+ - LICENSE
94
+ - README.md
95
+ - lib/ton_sdk_client.rb
96
+ - lib/ton_sdk_client/abi.rb
97
+ - lib/ton_sdk_client/boc.rb
98
+ - lib/ton_sdk_client/client.rb
99
+ - lib/ton_sdk_client/client_context.rb
100
+ - lib/ton_sdk_client/config.rb
101
+ - lib/ton_sdk_client/crypto.rb
102
+ - lib/ton_sdk_client/debot.rb
103
+ - lib/ton_sdk_client/helper.rb
104
+ - lib/ton_sdk_client/interop.rb
105
+ - lib/ton_sdk_client/net.rb
106
+ - lib/ton_sdk_client/processing.rb
107
+ - lib/ton_sdk_client/tvm.rb
108
+ - lib/ton_sdk_client/types.rb
109
+ - lib/ton_sdk_client/utils.rb
110
+ - lib/ton_sdk_client/version.rb
111
+ homepage: https://github.com/radianceteam/ton-client-ruby
112
+ licenses:
113
+ - MIT
114
+ metadata: {}
115
+ post_install_message:
116
+ rdoc_options: []
117
+ require_paths:
118
+ - lib
119
+ required_ruby_version: !ruby/object:Gem::Requirement
120
+ requirements:
121
+ - - ">="
122
+ - !ruby/object:Gem::Version
123
+ version: '3.0'
124
+ required_rubygems_version: !ruby/object:Gem::Requirement
125
+ requirements:
126
+ - - ">="
127
+ - !ruby/object:Gem::Version
128
+ version: '0'
129
+ requirements: []
130
+ rubygems_version: 3.2.3
131
+ signing_key:
132
+ specification_version: 4
133
+ summary: TON SDK client library, in Ruby and for Ruby
134
+ test_files: []