everscale-client-ruby 1.1.50 → 1.1.60
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.
- checksums.yaml +4 -4
- data/lib/code_generator/api.json +13 -6
- data/lib/code_generator/code_generator.rb +26 -9
- data/lib/everscale-client-ruby/Binding/binding.rb +72 -63
- data/lib/everscale-client-ruby/Binding/struct.rb +13 -0
- data/lib/everscale-client-ruby/Client/Abi.rb +108 -17
- data/lib/everscale-client-ruby/Client/Boc.rb +136 -21
- data/lib/everscale-client-ruby/Client/Client.rb +50 -18
- data/lib/everscale-client-ruby/Client/Crypto.rb +360 -53
- data/lib/everscale-client-ruby/Client/Debot.rb +45 -8
- data/lib/everscale-client-ruby/Client/Net.rb +157 -24
- data/lib/everscale-client-ruby/Client/Processing.rb +24 -5
- data/lib/everscale-client-ruby/Client/Proofs.rb +24 -5
- data/lib/everscale-client-ruby/Client/Tvm.rb +24 -5
- data/lib/everscale-client-ruby/Client/Utils.rb +38 -7
- data/lib/everscale-client-ruby/Helpers/CommonHelpers.rb +38 -1
- data/lib/everscale-client-ruby/version.rb +1 -1
- data/lib/everscale-client-ruby.rb +1 -1
- metadata +6 -20
@@ -3,45 +3,70 @@ module TonClient
|
|
3
3
|
class Boc
|
4
4
|
include CommonInstanceHelpers
|
5
5
|
|
6
|
-
attr_reader :context, :request_id, :requests
|
6
|
+
attr_reader :context, :request_id, :requests, :monitor
|
7
7
|
MODULE = self.to_s.downcase.gsub(/^(.+::|)(\w+)$/, '\2').freeze
|
8
8
|
|
9
|
-
def initialize(context: nil, request_id: nil, requests: nil)
|
9
|
+
def initialize(context: nil, request_id: nil, requests: nil, monitor: nil)
|
10
10
|
@context = context
|
11
11
|
@request_id = request_id
|
12
12
|
@requests = requests
|
13
|
+
@monitor = monitor
|
13
14
|
end
|
14
15
|
|
15
16
|
# INPUT: ParamsOfParse
|
16
17
|
# boc: String - # # BOC encoded as base64
|
17
18
|
# RESPONSE: ResultOfParse
|
18
19
|
# parsed: Value - # # JSON containing parsed BOC
|
20
|
+
# Async
|
19
21
|
def parse_message(payload, &block)
|
20
|
-
TonBinding.requestLibrary(context: context, request_id: request_id, requests: requests, method_name: full_method_name(MODULE, __method__.to_s), payload: payload, &block)
|
22
|
+
TonBinding.requestLibrary(context: context, request_id: request_id, requests: requests, monitor: monitor, method_name: full_method_name(MODULE, __method__.to_s), payload: payload, &block)
|
23
|
+
end
|
24
|
+
|
25
|
+
# Sync
|
26
|
+
def parse_message_sync(payload)
|
27
|
+
TonBinding.send_request_sync(context: context, method_name: full_method_name(MODULE, __method__.to_s).sub(/_sync$/, ''), payload: payload)
|
21
28
|
end
|
22
29
|
|
23
30
|
# INPUT: ParamsOfParse
|
24
31
|
# boc: String - # # BOC encoded as base64
|
25
32
|
# RESPONSE: ResultOfParse
|
26
33
|
# parsed: Value - # # JSON containing parsed BOC
|
34
|
+
# Async
|
27
35
|
def parse_transaction(payload, &block)
|
28
|
-
TonBinding.requestLibrary(context: context, request_id: request_id, requests: requests, method_name: full_method_name(MODULE, __method__.to_s), payload: payload, &block)
|
36
|
+
TonBinding.requestLibrary(context: context, request_id: request_id, requests: requests, monitor: monitor, method_name: full_method_name(MODULE, __method__.to_s), payload: payload, &block)
|
37
|
+
end
|
38
|
+
|
39
|
+
# Sync
|
40
|
+
def parse_transaction_sync(payload)
|
41
|
+
TonBinding.send_request_sync(context: context, method_name: full_method_name(MODULE, __method__.to_s).sub(/_sync$/, ''), payload: payload)
|
29
42
|
end
|
30
43
|
|
31
44
|
# INPUT: ParamsOfParse
|
32
45
|
# boc: String - # # BOC encoded as base64
|
33
46
|
# RESPONSE: ResultOfParse
|
34
47
|
# parsed: Value - # # JSON containing parsed BOC
|
48
|
+
# Async
|
35
49
|
def parse_account(payload, &block)
|
36
|
-
TonBinding.requestLibrary(context: context, request_id: request_id, requests: requests, method_name: full_method_name(MODULE, __method__.to_s), payload: payload, &block)
|
50
|
+
TonBinding.requestLibrary(context: context, request_id: request_id, requests: requests, monitor: monitor, method_name: full_method_name(MODULE, __method__.to_s), payload: payload, &block)
|
51
|
+
end
|
52
|
+
|
53
|
+
# Sync
|
54
|
+
def parse_account_sync(payload)
|
55
|
+
TonBinding.send_request_sync(context: context, method_name: full_method_name(MODULE, __method__.to_s).sub(/_sync$/, ''), payload: payload)
|
37
56
|
end
|
38
57
|
|
39
58
|
# INPUT: ParamsOfParse
|
40
59
|
# boc: String - # # BOC encoded as base64
|
41
60
|
# RESPONSE: ResultOfParse
|
42
61
|
# parsed: Value - # # JSON containing parsed BOC
|
62
|
+
# Async
|
43
63
|
def parse_block(payload, &block)
|
44
|
-
TonBinding.requestLibrary(context: context, request_id: request_id, requests: requests, method_name: full_method_name(MODULE, __method__.to_s), payload: payload, &block)
|
64
|
+
TonBinding.requestLibrary(context: context, request_id: request_id, requests: requests, monitor: monitor, method_name: full_method_name(MODULE, __method__.to_s), payload: payload, &block)
|
65
|
+
end
|
66
|
+
|
67
|
+
# Sync
|
68
|
+
def parse_block_sync(payload)
|
69
|
+
TonBinding.send_request_sync(context: context, method_name: full_method_name(MODULE, __method__.to_s).sub(/_sync$/, ''), payload: payload)
|
45
70
|
end
|
46
71
|
|
47
72
|
# INPUT: ParamsOfParseShardstate
|
@@ -50,48 +75,84 @@ module TonClient
|
|
50
75
|
# workchain_id: Number - # # Workchain shardstate belongs to
|
51
76
|
# RESPONSE: ResultOfParse
|
52
77
|
# parsed: Value - # # JSON containing parsed BOC
|
78
|
+
# Async
|
53
79
|
def parse_shardstate(payload, &block)
|
54
|
-
TonBinding.requestLibrary(context: context, request_id: request_id, requests: requests, method_name: full_method_name(MODULE, __method__.to_s), payload: payload, &block)
|
80
|
+
TonBinding.requestLibrary(context: context, request_id: request_id, requests: requests, monitor: monitor, method_name: full_method_name(MODULE, __method__.to_s), payload: payload, &block)
|
81
|
+
end
|
82
|
+
|
83
|
+
# Sync
|
84
|
+
def parse_shardstate_sync(payload)
|
85
|
+
TonBinding.send_request_sync(context: context, method_name: full_method_name(MODULE, __method__.to_s).sub(/_sync$/, ''), payload: payload)
|
55
86
|
end
|
56
87
|
|
57
88
|
# INPUT: ParamsOfGetBlockchainConfig
|
58
89
|
# block_boc: String - # # Key block BOC or zerostate BOC encoded as base64
|
59
90
|
# RESPONSE: ResultOfGetBlockchainConfig
|
60
91
|
# config_boc: String - # # Blockchain config BOC encoded as base64
|
92
|
+
# Async
|
61
93
|
def get_blockchain_config(payload, &block)
|
62
|
-
TonBinding.requestLibrary(context: context, request_id: request_id, requests: requests, method_name: full_method_name(MODULE, __method__.to_s), payload: payload, &block)
|
94
|
+
TonBinding.requestLibrary(context: context, request_id: request_id, requests: requests, monitor: monitor, method_name: full_method_name(MODULE, __method__.to_s), payload: payload, &block)
|
95
|
+
end
|
96
|
+
|
97
|
+
# Sync
|
98
|
+
def get_blockchain_config_sync(payload)
|
99
|
+
TonBinding.send_request_sync(context: context, method_name: full_method_name(MODULE, __method__.to_s).sub(/_sync$/, ''), payload: payload)
|
63
100
|
end
|
64
101
|
|
65
102
|
# INPUT: ParamsOfGetBocHash
|
66
103
|
# boc: String - # # BOC encoded as base64 or BOC handle
|
67
104
|
# RESPONSE: ResultOfGetBocHash
|
68
105
|
# hash: String - # # BOC root hash encoded with hex
|
106
|
+
# Async
|
69
107
|
def get_boc_hash(payload, &block)
|
70
|
-
TonBinding.requestLibrary(context: context, request_id: request_id, requests: requests, method_name: full_method_name(MODULE, __method__.to_s), payload: payload, &block)
|
108
|
+
TonBinding.requestLibrary(context: context, request_id: request_id, requests: requests, monitor: monitor, method_name: full_method_name(MODULE, __method__.to_s), payload: payload, &block)
|
109
|
+
end
|
110
|
+
|
111
|
+
# Sync
|
112
|
+
def get_boc_hash_sync(payload)
|
113
|
+
TonBinding.send_request_sync(context: context, method_name: full_method_name(MODULE, __method__.to_s).sub(/_sync$/, ''), payload: payload)
|
71
114
|
end
|
72
115
|
|
73
116
|
# INPUT: ParamsOfGetBocDepth
|
74
117
|
# boc: String - # # BOC encoded as base64 or BOC handle
|
75
118
|
# RESPONSE: ResultOfGetBocDepth
|
76
119
|
# depth: Number - # # BOC root cell depth
|
120
|
+
# Async
|
77
121
|
def get_boc_depth(payload, &block)
|
78
|
-
TonBinding.requestLibrary(context: context, request_id: request_id, requests: requests, method_name: full_method_name(MODULE, __method__.to_s), payload: payload, &block)
|
122
|
+
TonBinding.requestLibrary(context: context, request_id: request_id, requests: requests, monitor: monitor, method_name: full_method_name(MODULE, __method__.to_s), payload: payload, &block)
|
123
|
+
end
|
124
|
+
|
125
|
+
# Sync
|
126
|
+
def get_boc_depth_sync(payload)
|
127
|
+
TonBinding.send_request_sync(context: context, method_name: full_method_name(MODULE, __method__.to_s).sub(/_sync$/, ''), payload: payload)
|
79
128
|
end
|
80
129
|
|
81
130
|
# INPUT: ParamsOfGetCodeFromTvc
|
82
131
|
# tvc: String - # # Contract TVC image or image BOC handle
|
83
132
|
# RESPONSE: ResultOfGetCodeFromTvc
|
84
133
|
# code: String - # # Contract code encoded as base64
|
134
|
+
# Async
|
85
135
|
def get_code_from_tvc(payload, &block)
|
86
|
-
TonBinding.requestLibrary(context: context, request_id: request_id, requests: requests, method_name: full_method_name(MODULE, __method__.to_s), payload: payload, &block)
|
136
|
+
TonBinding.requestLibrary(context: context, request_id: request_id, requests: requests, monitor: monitor, method_name: full_method_name(MODULE, __method__.to_s), payload: payload, &block)
|
137
|
+
end
|
138
|
+
|
139
|
+
# Sync
|
140
|
+
def get_code_from_tvc_sync(payload)
|
141
|
+
TonBinding.send_request_sync(context: context, method_name: full_method_name(MODULE, __method__.to_s).sub(/_sync$/, ''), payload: payload)
|
87
142
|
end
|
88
143
|
|
89
144
|
# INPUT: ParamsOfBocCacheGet
|
90
145
|
# boc_ref: String - # # Reference to the cached BOC
|
91
146
|
# RESPONSE: ResultOfBocCacheGet
|
92
147
|
# boc: String<Optional> - # # BOC encoded as base64.
|
148
|
+
# Async
|
93
149
|
def cache_get(payload, &block)
|
94
|
-
TonBinding.requestLibrary(context: context, request_id: request_id, requests: requests, method_name: full_method_name(MODULE, __method__.to_s), payload: payload, &block)
|
150
|
+
TonBinding.requestLibrary(context: context, request_id: request_id, requests: requests, monitor: monitor, method_name: full_method_name(MODULE, __method__.to_s), payload: payload, &block)
|
151
|
+
end
|
152
|
+
|
153
|
+
# Sync
|
154
|
+
def cache_get_sync(payload)
|
155
|
+
TonBinding.send_request_sync(context: context, method_name: full_method_name(MODULE, __method__.to_s).sub(/_sync$/, ''), payload: payload)
|
95
156
|
end
|
96
157
|
|
97
158
|
# INPUT: ParamsOfBocCacheSet
|
@@ -99,15 +160,27 @@ module TonClient
|
|
99
160
|
# cache_type: BocCacheType - # # Cache type
|
100
161
|
# RESPONSE: ResultOfBocCacheSet
|
101
162
|
# boc_ref: String - # # Reference to the cached BOC
|
163
|
+
# Async
|
102
164
|
def cache_set(payload, &block)
|
103
|
-
TonBinding.requestLibrary(context: context, request_id: request_id, requests: requests, method_name: full_method_name(MODULE, __method__.to_s), payload: payload, &block)
|
165
|
+
TonBinding.requestLibrary(context: context, request_id: request_id, requests: requests, monitor: monitor, method_name: full_method_name(MODULE, __method__.to_s), payload: payload, &block)
|
166
|
+
end
|
167
|
+
|
168
|
+
# Sync
|
169
|
+
def cache_set_sync(payload)
|
170
|
+
TonBinding.send_request_sync(context: context, method_name: full_method_name(MODULE, __method__.to_s).sub(/_sync$/, ''), payload: payload)
|
104
171
|
end
|
105
172
|
|
106
173
|
# INPUT: ParamsOfBocCacheUnpin
|
107
174
|
# pin: String - # # Pinned name
|
108
175
|
# boc_ref: String<Optional> - # # Reference to the cached BOC. # # If it is provided then only referenced BOC is unpinned
|
176
|
+
# Async
|
109
177
|
def cache_unpin(payload, &block)
|
110
|
-
TonBinding.requestLibrary(context: context, request_id: request_id, requests: requests, method_name: full_method_name(MODULE, __method__.to_s), payload: payload, &block)
|
178
|
+
TonBinding.requestLibrary(context: context, request_id: request_id, requests: requests, monitor: monitor, method_name: full_method_name(MODULE, __method__.to_s), payload: payload, &block)
|
179
|
+
end
|
180
|
+
|
181
|
+
# Sync
|
182
|
+
def cache_unpin_sync(payload)
|
183
|
+
TonBinding.send_request_sync(context: context, method_name: full_method_name(MODULE, __method__.to_s).sub(/_sync$/, ''), payload: payload)
|
111
184
|
end
|
112
185
|
|
113
186
|
# INPUT: ParamsOfEncodeBoc
|
@@ -115,8 +188,14 @@ module TonClient
|
|
115
188
|
# boc_cache: BocCacheType<Optional> - # # Cache type to put the result. The BOC itself returned if no cache type provided.
|
116
189
|
# RESPONSE: ResultOfEncodeBoc
|
117
190
|
# boc: String - # # Encoded cell BOC or BOC cache key.
|
191
|
+
# Async
|
118
192
|
def encode_boc(payload, &block)
|
119
|
-
TonBinding.requestLibrary(context: context, request_id: request_id, requests: requests, method_name: full_method_name(MODULE, __method__.to_s), payload: payload, &block)
|
193
|
+
TonBinding.requestLibrary(context: context, request_id: request_id, requests: requests, monitor: monitor, method_name: full_method_name(MODULE, __method__.to_s), payload: payload, &block)
|
194
|
+
end
|
195
|
+
|
196
|
+
# Sync
|
197
|
+
def encode_boc_sync(payload)
|
198
|
+
TonBinding.send_request_sync(context: context, method_name: full_method_name(MODULE, __method__.to_s).sub(/_sync$/, ''), payload: payload)
|
120
199
|
end
|
121
200
|
|
122
201
|
# INPUT: ParamsOfGetCodeSalt
|
@@ -124,8 +203,14 @@ module TonClient
|
|
124
203
|
# boc_cache: BocCacheType<Optional> - # # Cache type to put the result. The BOC itself returned if no cache type provided.
|
125
204
|
# RESPONSE: ResultOfGetCodeSalt
|
126
205
|
# salt: String<Optional> - # # Contract code salt if present. # # BOC encoded as base64 or BOC handle
|
206
|
+
# Async
|
127
207
|
def get_code_salt(payload, &block)
|
128
|
-
TonBinding.requestLibrary(context: context, request_id: request_id, requests: requests, method_name: full_method_name(MODULE, __method__.to_s), payload: payload, &block)
|
208
|
+
TonBinding.requestLibrary(context: context, request_id: request_id, requests: requests, monitor: monitor, method_name: full_method_name(MODULE, __method__.to_s), payload: payload, &block)
|
209
|
+
end
|
210
|
+
|
211
|
+
# Sync
|
212
|
+
def get_code_salt_sync(payload)
|
213
|
+
TonBinding.send_request_sync(context: context, method_name: full_method_name(MODULE, __method__.to_s).sub(/_sync$/, ''), payload: payload)
|
129
214
|
end
|
130
215
|
|
131
216
|
# INPUT: ParamsOfSetCodeSalt
|
@@ -134,8 +219,14 @@ module TonClient
|
|
134
219
|
# boc_cache: BocCacheType<Optional> - # # Cache type to put the result. The BOC itself returned if no cache type provided.
|
135
220
|
# RESPONSE: ResultOfSetCodeSalt
|
136
221
|
# code: String - # # Contract code with salt set. # # BOC encoded as base64 or BOC handle
|
222
|
+
# Async
|
137
223
|
def set_code_salt(payload, &block)
|
138
|
-
TonBinding.requestLibrary(context: context, request_id: request_id, requests: requests, method_name: full_method_name(MODULE, __method__.to_s), payload: payload, &block)
|
224
|
+
TonBinding.requestLibrary(context: context, request_id: request_id, requests: requests, monitor: monitor, method_name: full_method_name(MODULE, __method__.to_s), payload: payload, &block)
|
225
|
+
end
|
226
|
+
|
227
|
+
# Sync
|
228
|
+
def set_code_salt_sync(payload)
|
229
|
+
TonBinding.send_request_sync(context: context, method_name: full_method_name(MODULE, __method__.to_s).sub(/_sync$/, ''), payload: payload)
|
139
230
|
end
|
140
231
|
|
141
232
|
# INPUT: ParamsOfDecodeTvc
|
@@ -153,8 +244,14 @@ module TonClient
|
|
153
244
|
# tock: Boolean<Optional> - # # `special.tock` field. # # Specifies the contract ability to handle tock transactions
|
154
245
|
# split_depth: Number<Optional> - # # Is present and non-zero only in instances of large smart contracts
|
155
246
|
# compiler_version: String<Optional> - # # Compiler version, for example 'sol 0.49.0'
|
247
|
+
# Async
|
156
248
|
def decode_tvc(payload, &block)
|
157
|
-
TonBinding.requestLibrary(context: context, request_id: request_id, requests: requests, method_name: full_method_name(MODULE, __method__.to_s), payload: payload, &block)
|
249
|
+
TonBinding.requestLibrary(context: context, request_id: request_id, requests: requests, monitor: monitor, method_name: full_method_name(MODULE, __method__.to_s), payload: payload, &block)
|
250
|
+
end
|
251
|
+
|
252
|
+
# Sync
|
253
|
+
def decode_tvc_sync(payload)
|
254
|
+
TonBinding.send_request_sync(context: context, method_name: full_method_name(MODULE, __method__.to_s).sub(/_sync$/, ''), payload: payload)
|
158
255
|
end
|
159
256
|
|
160
257
|
# INPUT: ParamsOfEncodeTvc
|
@@ -167,8 +264,14 @@ module TonClient
|
|
167
264
|
# boc_cache: BocCacheType<Optional> - # # Cache type to put the result. The BOC itself returned if no cache type provided.
|
168
265
|
# RESPONSE: ResultOfEncodeTvc
|
169
266
|
# tvc: String - # # Contract TVC image BOC encoded as base64 or BOC handle of boc_cache parameter was specified
|
267
|
+
# Async
|
170
268
|
def encode_tvc(payload, &block)
|
171
|
-
TonBinding.requestLibrary(context: context, request_id: request_id, requests: requests, method_name: full_method_name(MODULE, __method__.to_s), payload: payload, &block)
|
269
|
+
TonBinding.requestLibrary(context: context, request_id: request_id, requests: requests, monitor: monitor, method_name: full_method_name(MODULE, __method__.to_s), payload: payload, &block)
|
270
|
+
end
|
271
|
+
|
272
|
+
# Sync
|
273
|
+
def encode_tvc_sync(payload)
|
274
|
+
TonBinding.send_request_sync(context: context, method_name: full_method_name(MODULE, __method__.to_s).sub(/_sync$/, ''), payload: payload)
|
172
275
|
end
|
173
276
|
|
174
277
|
# INPUT: ParamsOfEncodeExternalInMessage
|
@@ -180,16 +283,28 @@ module TonClient
|
|
180
283
|
# RESPONSE: ResultOfEncodeExternalInMessage
|
181
284
|
# message: String - # # Message BOC encoded with `base64`.
|
182
285
|
# message_id: String - # # Message id.
|
286
|
+
# Async
|
183
287
|
def encode_external_in_message(payload, &block)
|
184
|
-
TonBinding.requestLibrary(context: context, request_id: request_id, requests: requests, method_name: full_method_name(MODULE, __method__.to_s), payload: payload, &block)
|
288
|
+
TonBinding.requestLibrary(context: context, request_id: request_id, requests: requests, monitor: monitor, method_name: full_method_name(MODULE, __method__.to_s), payload: payload, &block)
|
289
|
+
end
|
290
|
+
|
291
|
+
# Sync
|
292
|
+
def encode_external_in_message_sync(payload)
|
293
|
+
TonBinding.send_request_sync(context: context, method_name: full_method_name(MODULE, __method__.to_s).sub(/_sync$/, ''), payload: payload)
|
185
294
|
end
|
186
295
|
|
187
296
|
# INPUT: ParamsOfGetCompilerVersion
|
188
297
|
# code: String - # # Contract code BOC encoded as base64 or code BOC handle
|
189
298
|
# RESPONSE: ResultOfGetCompilerVersion
|
190
299
|
# version: String<Optional> - # # Compiler version, for example 'sol 0.49.0'
|
300
|
+
# Async
|
191
301
|
def get_compiler_version(payload, &block)
|
192
|
-
TonBinding.requestLibrary(context: context, request_id: request_id, requests: requests, method_name: full_method_name(MODULE, __method__.to_s), payload: payload, &block)
|
302
|
+
TonBinding.requestLibrary(context: context, request_id: request_id, requests: requests, monitor: monitor, method_name: full_method_name(MODULE, __method__.to_s), payload: payload, &block)
|
303
|
+
end
|
304
|
+
|
305
|
+
# Sync
|
306
|
+
def get_compiler_version_sync(payload)
|
307
|
+
TonBinding.send_request_sync(context: context, method_name: full_method_name(MODULE, __method__.to_s).sub(/_sync$/, ''), payload: payload)
|
193
308
|
end
|
194
309
|
|
195
310
|
end
|
@@ -3,17 +3,19 @@ module TonClient
|
|
3
3
|
class Client
|
4
4
|
include CommonInstanceHelpers
|
5
5
|
|
6
|
-
attr_reader :context, :context_config, :request_id, :requests
|
6
|
+
attr_reader :context, :context_config, :request_id, :requests, :monitor
|
7
7
|
private_accessor :_crypto, :_abi, :_boc, :_processing, :_utils, :_tvm, :_net, :_debot, :_proofs
|
8
8
|
MODULE = self.to_s.downcase.gsub(/^(.+::|)(\w+)$/, '\2').freeze
|
9
9
|
|
10
10
|
def initialize(context_config: {})
|
11
11
|
@context_config = context_config
|
12
|
-
@request_id =
|
13
|
-
@requests =
|
12
|
+
@request_id = RequestId.new
|
13
|
+
@requests = Requests.new
|
14
|
+
@monitor = Monitor.new
|
14
15
|
config = TonBinding.make_string(context_config.to_json)
|
15
16
|
context_ptr = TonBinding.tc_create_context(config)
|
16
|
-
|
17
|
+
context_response = TonBinding.read_string_data_ref(context_ptr)
|
18
|
+
@context = TonBinding.read_string_to_hash(context_response)['result']
|
17
19
|
ObjectSpace.define_finalizer(self, self.class.finalize(@context))
|
18
20
|
end
|
19
21
|
|
@@ -26,51 +28,63 @@ module TonClient
|
|
26
28
|
end
|
27
29
|
|
28
30
|
def crypto
|
29
|
-
_crypto ||= Crypto.new(context: context, request_id: request_id, requests: requests)
|
31
|
+
_crypto ||= Crypto.new(context: context, request_id: request_id, requests: requests, monitor: monitor)
|
30
32
|
end
|
31
33
|
|
32
34
|
def abi
|
33
|
-
_abi ||= Abi.new(context: context, request_id: request_id, requests: requests)
|
35
|
+
_abi ||= Abi.new(context: context, request_id: request_id, requests: requests, monitor: monitor)
|
34
36
|
end
|
35
37
|
|
36
38
|
def boc
|
37
|
-
_boc ||= Boc.new(context: context, request_id: request_id, requests: requests)
|
39
|
+
_boc ||= Boc.new(context: context, request_id: request_id, requests: requests, monitor: monitor)
|
38
40
|
end
|
39
41
|
|
40
42
|
def processing
|
41
|
-
_processing ||= Processing.new(context: context, request_id: request_id, requests: requests)
|
43
|
+
_processing ||= Processing.new(context: context, request_id: request_id, requests: requests, monitor: monitor)
|
42
44
|
end
|
43
45
|
|
44
46
|
def utils
|
45
|
-
_utils ||= Utils.new(context: context, request_id: request_id, requests: requests)
|
47
|
+
_utils ||= Utils.new(context: context, request_id: request_id, requests: requests, monitor: monitor)
|
46
48
|
end
|
47
49
|
|
48
50
|
def tvm
|
49
|
-
_tvm ||= Tvm.new(context: context, request_id: request_id, requests: requests)
|
51
|
+
_tvm ||= Tvm.new(context: context, request_id: request_id, requests: requests, monitor: monitor)
|
50
52
|
end
|
51
53
|
|
52
54
|
def net
|
53
|
-
_net ||= Net.new(context: context, request_id: request_id, requests: requests)
|
55
|
+
_net ||= Net.new(context: context, request_id: request_id, requests: requests, monitor: monitor)
|
54
56
|
end
|
55
57
|
|
56
58
|
def debot
|
57
|
-
_debot ||= Debot.new(context: context, request_id: request_id, requests: requests)
|
59
|
+
_debot ||= Debot.new(context: context, request_id: request_id, requests: requests, monitor: monitor)
|
58
60
|
end
|
59
61
|
|
60
62
|
def proofs
|
61
|
-
_proofs ||= Proofs.new(context: context, request_id: request_id, requests: requests)
|
63
|
+
_proofs ||= Proofs.new(context: context, request_id: request_id, requests: requests, monitor: monitor)
|
62
64
|
end
|
63
65
|
|
64
66
|
# RESPONSE: ResultOfGetApiReference
|
65
67
|
# api: Value -
|
68
|
+
# Async
|
66
69
|
def get_api_reference(&block)
|
67
|
-
TonBinding.requestLibrary(context: context, request_id: request_id, requests: requests, method_name: full_method_name(MODULE, __method__.to_s), payload: {}, &block)
|
70
|
+
TonBinding.requestLibrary(context: context, request_id: request_id, requests: requests, monitor: monitor, method_name: full_method_name(MODULE, __method__.to_s), payload: {}, &block)
|
71
|
+
end
|
72
|
+
|
73
|
+
# Sync
|
74
|
+
def get_api_reference_sync()
|
75
|
+
TonBinding.send_request_sync(context: context, method_name: full_method_name(MODULE, __method__.to_s).sub(/_sync$/, ''), payload: {})
|
68
76
|
end
|
69
77
|
|
70
78
|
# RESPONSE: ResultOfVersion
|
71
79
|
# version: String - # # Core Library version
|
80
|
+
# Async
|
72
81
|
def version(&block)
|
73
|
-
TonBinding.requestLibrary(context: context, request_id: request_id, requests: requests, method_name: full_method_name(MODULE, __method__.to_s), payload: {}, &block)
|
82
|
+
TonBinding.requestLibrary(context: context, request_id: request_id, requests: requests, monitor: monitor, method_name: full_method_name(MODULE, __method__.to_s), payload: {}, &block)
|
83
|
+
end
|
84
|
+
|
85
|
+
# Sync
|
86
|
+
def version_sync()
|
87
|
+
TonBinding.send_request_sync(context: context, method_name: full_method_name(MODULE, __method__.to_s).sub(/_sync$/, ''), payload: {})
|
74
88
|
end
|
75
89
|
|
76
90
|
# RESPONSE: ClientConfig
|
@@ -80,22 +94,40 @@ module TonClient
|
|
80
94
|
# boc: BocConfig<Optional> -
|
81
95
|
# proofs: ProofsConfig<Optional> -
|
82
96
|
# local_storage_path: String<Optional> - # # For file based storage is a folder name where SDK will store its data. For browser based is a browser async storage key prefix. Default (recommended) value is "~/.tonclient" for native environments and ".tonclient" for web-browser.
|
97
|
+
# Async
|
83
98
|
def config(&block)
|
84
|
-
TonBinding.requestLibrary(context: context, request_id: request_id, requests: requests, method_name: full_method_name(MODULE, __method__.to_s), payload: {}, &block)
|
99
|
+
TonBinding.requestLibrary(context: context, request_id: request_id, requests: requests, monitor: monitor, method_name: full_method_name(MODULE, __method__.to_s), payload: {}, &block)
|
100
|
+
end
|
101
|
+
|
102
|
+
# Sync
|
103
|
+
def config_sync()
|
104
|
+
TonBinding.send_request_sync(context: context, method_name: full_method_name(MODULE, __method__.to_s).sub(/_sync$/, ''), payload: {})
|
85
105
|
end
|
86
106
|
|
87
107
|
# RESPONSE: ResultOfBuildInfo
|
88
108
|
# build_number: Number - # # Build number assigned to this build by the CI.
|
89
109
|
# dependencies: Array - # # Fingerprint of the most important dependencies.
|
110
|
+
# Async
|
90
111
|
def build_info(&block)
|
91
|
-
TonBinding.requestLibrary(context: context, request_id: request_id, requests: requests, method_name: full_method_name(MODULE, __method__.to_s), payload: {}, &block)
|
112
|
+
TonBinding.requestLibrary(context: context, request_id: request_id, requests: requests, monitor: monitor, method_name: full_method_name(MODULE, __method__.to_s), payload: {}, &block)
|
113
|
+
end
|
114
|
+
|
115
|
+
# Sync
|
116
|
+
def build_info_sync()
|
117
|
+
TonBinding.send_request_sync(context: context, method_name: full_method_name(MODULE, __method__.to_s).sub(/_sync$/, ''), payload: {})
|
92
118
|
end
|
93
119
|
|
94
120
|
# INPUT: ParamsOfResolveAppRequest
|
95
121
|
# app_request_id: Number - # # Request ID received from SDK
|
96
122
|
# result: AppRequestResult - # # Result of request processing
|
123
|
+
# Async
|
97
124
|
def resolve_app_request(payload, &block)
|
98
|
-
TonBinding.requestLibrary(context: context, request_id: request_id, requests: requests, method_name: full_method_name(MODULE, __method__.to_s), payload: payload, &block)
|
125
|
+
TonBinding.requestLibrary(context: context, request_id: request_id, requests: requests, monitor: monitor, method_name: full_method_name(MODULE, __method__.to_s), payload: payload, &block)
|
126
|
+
end
|
127
|
+
|
128
|
+
# Sync
|
129
|
+
def resolve_app_request_sync(payload)
|
130
|
+
TonBinding.send_request_sync(context: context, method_name: full_method_name(MODULE, __method__.to_s).sub(/_sync$/, ''), payload: payload)
|
99
131
|
end
|
100
132
|
|
101
133
|
end
|