ton_sdk_client 1.7.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -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: []