diff --git a/tl/generate/scheme/lite_api.tl b/tl/generate/scheme/lite_api.tl index ce4d27316..b5087ba0a 100644 --- a/tl/generate/scheme/lite_api.tl +++ b/tl/generate/scheme/lite_api.tl @@ -4,87 +4,87 @@ double ? = Double; string ? = String; object ? = Object; function ? = Function; -bytes data:string = Bytes; -true = True; -boolTrue = Bool; -boolFalse = Bool; +bytes#184614d1 data:string = Bytes; +true#3fedd339 = True; +boolTrue#997275b5 = Bool; +boolFalse#bc799737 = Bool; -vector {t:Type} # [ t ] = Vector t; +vector#1cb5c415 {t:Type} # [ t ] = Vector t; -int128 4*[ int ] = Int128; -int256 8*[ int ] = Int256; +int128#84ccf7b7 4*[ int ] = Int128; +int256#7bedeb5b 8*[ int ] = Int256; -tonNode.blockId workchain:int shard:long seqno:int = tonNode.BlockId; -tonNode.blockIdExt workchain:int shard:long seqno:int root_hash:int256 file_hash:int256 = tonNode.BlockIdExt; -tonNode.zeroStateIdExt workchain:int root_hash:int256 file_hash:int256 = tonNode.ZeroStateIdExt; +tonNode.blockId#b7cdb167 workchain:int shard:long seqno:int = tonNode.BlockId; +tonNode.blockIdExt#6752eb78 workchain:int shard:long seqno:int root_hash:int256 file_hash:int256 = tonNode.BlockIdExt; +tonNode.zeroStateIdExt#1d7235ae workchain:int root_hash:int256 file_hash:int256 = tonNode.ZeroStateIdExt; -adnl.message.query query_id:int256 query:bytes = adnl.Message; -adnl.message.answer query_id:int256 answer:bytes = adnl.Message; +adnl.message.query#b48bf97a query_id:int256 query:bytes = adnl.Message; +adnl.message.answer#0fac8416 query_id:int256 answer:bytes = adnl.Message; -liteServer.error code:int message:string = liteServer.Error; +liteServer.error#bba9e148 code:int message:string = liteServer.Error; -liteServer.accountId workchain:int id:int256 = liteServer.AccountId; -liteServer.libraryEntry hash:int256 data:bytes = liteServer.LibraryEntry; +liteServer.accountId#75a0e2c5 workchain:int id:int256 = liteServer.AccountId; +liteServer.libraryEntry#8aff2446 hash:int256 data:bytes = liteServer.LibraryEntry; -liteServer.masterchainInfo last:tonNode.blockIdExt state_root_hash:int256 init:tonNode.zeroStateIdExt = liteServer.MasterchainInfo; -liteServer.masterchainInfoExt mode:# version:int capabilities:long last:tonNode.blockIdExt last_utime:int now:int state_root_hash:int256 init:tonNode.zeroStateIdExt = liteServer.MasterchainInfoExt; -liteServer.currentTime now:int = liteServer.CurrentTime; -liteServer.version mode:# version:int capabilities:long now:int = liteServer.Version; -liteServer.blockData id:tonNode.blockIdExt data:bytes = liteServer.BlockData; -liteServer.blockState id:tonNode.blockIdExt root_hash:int256 file_hash:int256 data:bytes = liteServer.BlockState; -liteServer.blockHeader id:tonNode.blockIdExt mode:# header_proof:bytes = liteServer.BlockHeader; -liteServer.sendMsgStatus status:int = liteServer.SendMsgStatus; -liteServer.accountState id:tonNode.blockIdExt shardblk:tonNode.blockIdExt shard_proof:bytes proof:bytes state:bytes = liteServer.AccountState; -liteServer.runMethodResult mode:# id:tonNode.blockIdExt shardblk:tonNode.blockIdExt shard_proof:mode.0?bytes proof:mode.0?bytes state_proof:mode.1?bytes init_c7:mode.3?bytes lib_extras:mode.4?bytes exit_code:int result:mode.2?bytes = liteServer.RunMethodResult; -liteServer.shardInfo id:tonNode.blockIdExt shardblk:tonNode.blockIdExt shard_proof:bytes shard_descr:bytes = liteServer.ShardInfo; -liteServer.allShardsInfo id:tonNode.blockIdExt proof:bytes data:bytes = liteServer.AllShardsInfo; -liteServer.transactionInfo id:tonNode.blockIdExt proof:bytes transaction:bytes = liteServer.TransactionInfo; -liteServer.transactionList ids:(vector tonNode.blockIdExt) transactions:bytes = liteServer.TransactionList; -liteServer.transactionId mode:# account:mode.0?int256 lt:mode.1?long hash:mode.2?int256 = liteServer.TransactionId; -liteServer.transactionId3 account:int256 lt:long = liteServer.TransactionId3; -liteServer.blockTransactions id:tonNode.blockIdExt req_count:# incomplete:Bool ids:(vector liteServer.transactionId) proof:bytes = liteServer.BlockTransactions; -liteServer.blockTransactionsExt id:tonNode.blockIdExt req_count:# incomplete:Bool transactions:bytes proof:bytes = liteServer.BlockTransactionsExt; -liteServer.signature node_id_short:int256 signature:bytes = liteServer.Signature; -liteServer.signatureSet validator_set_hash:int catchain_seqno:int signatures:(vector liteServer.signature) = liteServer.SignatureSet; -liteServer.blockLinkBack to_key_block:Bool from:tonNode.blockIdExt to:tonNode.blockIdExt dest_proof:bytes proof:bytes state_proof:bytes = liteServer.BlockLink; -liteServer.blockLinkForward to_key_block:Bool from:tonNode.blockIdExt to:tonNode.blockIdExt dest_proof:bytes config_proof:bytes signatures:liteServer.SignatureSet = liteServer.BlockLink; -liteServer.partialBlockProof complete:Bool from:tonNode.blockIdExt to:tonNode.blockIdExt steps:(vector liteServer.BlockLink) = liteServer.PartialBlockProof; -liteServer.configInfo mode:# id:tonNode.blockIdExt state_proof:bytes config_proof:bytes = liteServer.ConfigInfo; -liteServer.validatorStats mode:# id:tonNode.blockIdExt count:int complete:Bool state_proof:bytes data_proof:bytes = liteServer.ValidatorStats; -liteServer.libraryResult result:(vector liteServer.libraryEntry) = liteServer.LibraryResult; -liteServer.shardBlockLink id:tonNode.blockIdExt proof:bytes = liteServer.ShardBlockLink; -liteServer.shardBlockProof masterchain_id:tonNode.blockIdExt links:(vector liteServer.shardBlockLink) = liteServer.ShardBlockProof; +liteServer.masterchainInfo#85832881 last:tonNode.blockIdExt state_root_hash:int256 init:tonNode.zeroStateIdExt = liteServer.MasterchainInfo; +liteServer.masterchainInfoExt#a8cce0f5 mode:# version:int capabilities:long last:tonNode.blockIdExt last_utime:int now:int state_root_hash:int256 init:tonNode.zeroStateIdExt = liteServer.MasterchainInfoExt; +liteServer.currentTime#e953000d now:int = liteServer.CurrentTime; +liteServer.version#5a0491e5 mode:# version:int capabilities:long now:int = liteServer.Version; +liteServer.blockData#a574ed6c id:tonNode.blockIdExt data:bytes = liteServer.BlockData; +liteServer.blockState#abaddc0c id:tonNode.blockIdExt root_hash:int256 file_hash:int256 data:bytes = liteServer.BlockState; +liteServer.blockHeader#752d8219 id:tonNode.blockIdExt mode:# header_proof:bytes = liteServer.BlockHeader; +liteServer.sendMsgStatus#3950e597 status:int = liteServer.SendMsgStatus; +liteServer.accountState#7079c751 id:tonNode.blockIdExt shardblk:tonNode.blockIdExt shard_proof:bytes proof:bytes state:bytes = liteServer.AccountState; +liteServer.runMethodResult#a39a616b mode:# id:tonNode.blockIdExt shardblk:tonNode.blockIdExt shard_proof:mode.0?bytes proof:mode.0?bytes state_proof:mode.1?bytes init_c7:mode.3?bytes lib_extras:mode.4?bytes exit_code:int result:mode.2?bytes = liteServer.RunMethodResult; +liteServer.shardInfo#9fe6cd84 id:tonNode.blockIdExt shardblk:tonNode.blockIdExt shard_proof:bytes shard_descr:bytes = liteServer.ShardInfo; +liteServer.allShardsInfo#098fe72d id:tonNode.blockIdExt proof:bytes data:bytes = liteServer.AllShardsInfo; +liteServer.transactionInfo#0edeed47 id:tonNode.blockIdExt proof:bytes transaction:bytes = liteServer.TransactionInfo; +liteServer.transactionList#6f26c60b ids:(vector tonNode.blockIdExt) transactions:bytes = liteServer.TransactionList; +liteServer.transactionId#b12f65af mode:# account:mode.0?int256 lt:mode.1?long hash:mode.2?int256 = liteServer.TransactionId; +liteServer.transactionId3#2c81da77 account:int256 lt:long = liteServer.TransactionId3; +liteServer.blockTransactions#bd8cad2b id:tonNode.blockIdExt req_count:# incomplete:Bool ids:(vector liteServer.transactionId) proof:bytes = liteServer.BlockTransactions; +liteServer.blockTransactionsExt#fb8ffce4 id:tonNode.blockIdExt req_count:# incomplete:Bool transactions:bytes proof:bytes = liteServer.BlockTransactionsExt; +liteServer.signature#a3def855 node_id_short:int256 signature:bytes = liteServer.Signature; +liteServer.signatureSet#f644a6e6 validator_set_hash:int catchain_seqno:int signatures:(vector liteServer.signature) = liteServer.SignatureSet; +liteServer.blockLinkBack#ef7e1bef to_key_block:Bool from:tonNode.blockIdExt to:tonNode.blockIdExt dest_proof:bytes proof:bytes state_proof:bytes = liteServer.BlockLink; +liteServer.blockLinkForward#520fce1c to_key_block:Bool from:tonNode.blockIdExt to:tonNode.blockIdExt dest_proof:bytes config_proof:bytes signatures:liteServer.SignatureSet = liteServer.BlockLink; +liteServer.partialBlockProof#8ed0d2c1 complete:Bool from:tonNode.blockIdExt to:tonNode.blockIdExt steps:(vector liteServer.BlockLink) = liteServer.PartialBlockProof; +liteServer.configInfo#ae7b272f mode:# id:tonNode.blockIdExt state_proof:bytes config_proof:bytes = liteServer.ConfigInfo; +liteServer.validatorStats#b9f796d8 mode:# id:tonNode.blockIdExt count:int complete:Bool state_proof:bytes data_proof:bytes = liteServer.ValidatorStats; +liteServer.libraryResult#117ab96b result:(vector liteServer.libraryEntry) = liteServer.LibraryResult; +liteServer.shardBlockLink#d30dcf72 id:tonNode.blockIdExt proof:bytes = liteServer.ShardBlockLink; +liteServer.shardBlockProof#1d62a07a masterchain_id:tonNode.blockIdExt links:(vector liteServer.shardBlockLink) = liteServer.ShardBlockProof; -liteServer.debug.verbosity value:int = liteServer.debug.Verbosity; +liteServer.debug.verbosity#5d404733 value:int = liteServer.debug.Verbosity; ---functions--- -liteServer.getMasterchainInfo = liteServer.MasterchainInfo; -liteServer.getMasterchainInfoExt mode:# = liteServer.MasterchainInfoExt; -liteServer.getTime = liteServer.CurrentTime; -liteServer.getVersion = liteServer.Version; -liteServer.getBlock id:tonNode.blockIdExt = liteServer.BlockData; -liteServer.getState id:tonNode.blockIdExt = liteServer.BlockState; -liteServer.getBlockHeader id:tonNode.blockIdExt mode:# = liteServer.BlockHeader; -liteServer.sendMessage body:bytes = liteServer.SendMsgStatus; -liteServer.getAccountState id:tonNode.blockIdExt account:liteServer.accountId = liteServer.AccountState; -liteServer.getAccountStatePrunned id:tonNode.blockIdExt account:liteServer.accountId = liteServer.AccountState; -liteServer.runSmcMethod mode:# id:tonNode.blockIdExt account:liteServer.accountId method_id:long params:bytes = liteServer.RunMethodResult; -liteServer.getShardInfo id:tonNode.blockIdExt workchain:int shard:long exact:Bool = liteServer.ShardInfo; -liteServer.getAllShardsInfo id:tonNode.blockIdExt = liteServer.AllShardsInfo; -liteServer.getOneTransaction id:tonNode.blockIdExt account:liteServer.accountId lt:long = liteServer.TransactionInfo; -liteServer.getTransactions count:# account:liteServer.accountId lt:long hash:int256 = liteServer.TransactionList; -liteServer.lookupBlock mode:# id:tonNode.blockId lt:mode.1?long utime:mode.2?int = liteServer.BlockHeader; -liteServer.listBlockTransactions id:tonNode.blockIdExt mode:# count:# after:mode.7?liteServer.transactionId3 reverse_order:mode.6?true want_proof:mode.5?true = liteServer.BlockTransactions; -liteServer.listBlockTransactionsExt id:tonNode.blockIdExt mode:# count:# after:mode.7?liteServer.transactionId3 reverse_order:mode.6?true want_proof:mode.5?true = liteServer.BlockTransactionsExt; -liteServer.getBlockProof mode:# known_block:tonNode.blockIdExt target_block:mode.0?tonNode.blockIdExt = liteServer.PartialBlockProof; -liteServer.getConfigAll mode:# id:tonNode.blockIdExt = liteServer.ConfigInfo; -liteServer.getConfigParams mode:# id:tonNode.blockIdExt param_list:(vector int) = liteServer.ConfigInfo; +liteServer.getMasterchainInfo#89b5e62e = liteServer.MasterchainInfo; +liteServer.getMasterchainInfoExt#70a671df mode:# = liteServer.MasterchainInfoExt; +liteServer.getTime#16ad5a34 = liteServer.CurrentTime; +liteServer.getVersion#232b940b = liteServer.Version; +liteServer.getBlock#6377cf0d id:tonNode.blockIdExt = liteServer.BlockData; +liteServer.getState#ba6e2eb6 id:tonNode.blockIdExt = liteServer.BlockState; +liteServer.getBlockHeader#21ec069e id:tonNode.blockIdExt mode:# = liteServer.BlockHeader; +liteServer.sendMessage#690ad482 body:bytes = liteServer.SendMsgStatus; +liteServer.getAccountState#6b890e25 id:tonNode.blockIdExt account:liteServer.accountId = liteServer.AccountState; +liteServer.getAccountStatePrunned#5a698507 id:tonNode.blockIdExt account:liteServer.accountId = liteServer.AccountState; +liteServer.runSmcMethod#5cc65dd2 mode:# id:tonNode.blockIdExt account:liteServer.accountId method_id:long params:bytes = liteServer.RunMethodResult; +liteServer.getShardInfo#46a2f425 id:tonNode.blockIdExt workchain:int shard:long exact:Bool = liteServer.ShardInfo; +liteServer.getAllShardsInfo#74d3fd6b id:tonNode.blockIdExt = liteServer.AllShardsInfo; +liteServer.getOneTransaction#d40f24ea id:tonNode.blockIdExt account:liteServer.accountId lt:long = liteServer.TransactionInfo; +liteServer.getTransactions#1c40e7a1 count:# account:liteServer.accountId lt:long hash:int256 = liteServer.TransactionList; +liteServer.lookupBlock#fac8f71e mode:# id:tonNode.blockId lt:mode.1?long utime:mode.2?int = liteServer.BlockHeader; +liteServer.listBlockTransactions#adfcc7da id:tonNode.blockIdExt mode:# count:# after:mode.7?liteServer.transactionId3 reverse_order:mode.6?true want_proof:mode.5?true = liteServer.BlockTransactions; +liteServer.listBlockTransactionsExt#0079dd5c id:tonNode.blockIdExt mode:# count:# after:mode.7?liteServer.transactionId3 reverse_order:mode.6?true want_proof:mode.5?true = liteServer.BlockTransactionsExt; +liteServer.getBlockProof#8aea9c44 mode:# known_block:tonNode.blockIdExt target_block:mode.0?tonNode.blockIdExt = liteServer.PartialBlockProof; +liteServer.getConfigAll#911b26b7 mode:# id:tonNode.blockIdExt = liteServer.ConfigInfo; +liteServer.getConfigParams#2a111c19 mode:# id:tonNode.blockIdExt param_list:(vector int) = liteServer.ConfigInfo; liteServer.getValidatorStats#091a58bc mode:# id:tonNode.blockIdExt limit:int start_after:mode.0?int256 modified_after:mode.2?int = liteServer.ValidatorStats; -liteServer.getLibraries library_list:(vector int256) = liteServer.LibraryResult; -liteServer.getShardBlockProof id:tonNode.blockIdExt = liteServer.ShardBlockProof; +liteServer.getLibraries#d122b662 library_list:(vector int256) = liteServer.LibraryResult; +liteServer.getShardBlockProof#4ca60350 id:tonNode.blockIdExt = liteServer.ShardBlockProof; -liteServer.queryPrefix = Object; -liteServer.query data:bytes = Object; -liteServer.waitMasterchainSeqno seqno:int timeout_ms:int = Object; // query prefix +liteServer.queryPrefix#72d3e686 = Object; +liteServer.query#798c06df data:bytes = Object; +liteServer.waitMasterchainSeqno#baeab892 seqno:int timeout_ms:int = Object; // query prefix diff --git a/tl/generate/scheme/ton_api.tl b/tl/generate/scheme/ton_api.tl index 346d91522..28a4a4e16 100644 --- a/tl/generate/scheme/ton_api.tl +++ b/tl/generate/scheme/ton_api.tl @@ -4,82 +4,82 @@ double ? = Double; string ? = String; object ? = Object; function ? = Function; -bytes data:string = Bytes; -true = True; -boolTrue = Bool; -boolFalse = Bool; +bytes#184614d1 data:string = Bytes; +true#3fedd339 = True; +boolTrue#997275b5 = Bool; +boolFalse#bc799737 = Bool; -vector {t:Type} # [ t ] = Vector t; +vector#1cb5c415 {t:Type} # [ t ] = Vector t; -int128 4*[ int ] = Int128; -int256 8*[ int ] = Int256; +int128#84ccf7b7 4*[ int ] = Int128; +int256#7bedeb5b 8*[ int ] = Int256; -testObject value:int o:object f:function = TestObject; -testString value:string = TestObject; -testInt value:int = TestObject; -testVectorBytes value:(vector bytes) = TestObject; +testObject#a557498a value:int o:object f:function = TestObject; +testString#c84571c9 value:string = TestObject; +testInt#2b9651d1 value:int = TestObject; +testVectorBytes#4b8b1bd3 value:(vector bytes) = TestObject; -tcp.pong random_id:long = tcp.Pong; +tcp.pong#dc69fb03 random_id:long = tcp.Pong; -tcp.authentificate nonce:bytes = tcp.Message; -tcp.authentificationNonce nonce:bytes = tcp.Message; -tcp.authentificationComplete key:PublicKey signature:bytes = tcp.Message; +tcp.authentificate#445bab12 nonce:bytes = tcp.Message; +tcp.authentificationNonce#e35d4ab6 nonce:bytes = tcp.Message; +tcp.authentificationComplete#f7ad9ea6 key:PublicKey signature:bytes = tcp.Message; -fec.raptorQ data_size:int symbol_size:int symbols_count:int = fec.Type; -fec.roundRobin data_size:int symbol_size:int symbols_count:int = fec.Type; -fec.online data_size:int symbol_size:int symbols_count:int = fec.Type; +fec.raptorQ#8b93a7e0 data_size:int symbol_size:int symbols_count:int = fec.Type; +fec.roundRobin#32f528e4 data_size:int symbol_size:int symbols_count:int = fec.Type; +fec.online#0127660c data_size:int symbol_size:int symbols_count:int = fec.Type; ---functions--- -tcp.ping random_id:long = tcp.Pong; +tcp.ping#4d082b9a random_id:long = tcp.Pong; -getTestObject = TestObject; +getTestObject#0bbfa683 = TestObject; ---types--- -pk.unenc data:bytes = PrivateKey; -pk.ed25519 key:int256 = PrivateKey; -pk.aes key:int256 = PrivateKey; -pk.overlay name:bytes = PrivateKey; +pk.unenc#b1db9b30 data:bytes = PrivateKey; +pk.ed25519#49682317 key:int256 = PrivateKey; +pk.aes#a5e85137 key:int256 = PrivateKey; +pk.overlay#37a5f65b name:bytes = PrivateKey; -pub.unenc data:bytes = PublicKey; -pub.ed25519 key:int256 = PublicKey; -pub.aes key:int256 = PublicKey; -pub.overlay name:bytes = PublicKey; +pub.unenc#b61f450a data:bytes = PublicKey; +pub.ed25519#4813b4c6 key:int256 = PublicKey; +pub.aes#2dbcadd4 key:int256 = PublicKey; +pub.overlay#34ba45cb name:bytes = PublicKey; ---functions--- ---types--- -adnl.id.short id:int256 = adnl.id.Short; +adnl.id.short#3e3f654f id:int256 = adnl.id.Short; -adnl.proxyToFastHash ip:int port:int date:int data_hash:int256 shared_secret:int256 = adnl.ProxyTo; -adnl.proxyToFast ip:int port:int date:int signature:int256 = adnl.ProxyToSign; +adnl.proxyToFastHash#ddbdf85e ip:int port:int date:int data_hash:int256 shared_secret:int256 = adnl.ProxyTo; +adnl.proxyToFast#b4ee21d6 ip:int port:int date:int signature:int256 = adnl.ProxyToSign; -adnl.proxy.none id:int256 = adnl.Proxy; -adnl.proxy.fast id:int256 shared_secret:bytes = adnl.Proxy; +adnl.proxy.none#3532487b id:int256 = adnl.Proxy; +adnl.proxy.fast#3a8b45b5 id:int256 shared_secret:bytes = adnl.Proxy; -adnl.address.udp ip:int port:int = adnl.Address; -adnl.address.udp6 ip:int128 port:int = adnl.Address; +adnl.address.udp#670da6e7 ip:int port:int = adnl.Address; +adnl.address.udp6#e31d63fa ip:int128 port:int = adnl.Address; //adnl.address.tcp ip:int port:int = adnl.Address; //adnl.address.tcp6 ip:int128 port:int = adnl.Address; -adnl.address.tunnel to:int256 pubkey:PublicKey = adnl.Address; -adnl.address.reverse = adnl.Address; +adnl.address.tunnel#092b02eb to:int256 pubkey:PublicKey = adnl.Address; +adnl.address.reverse#27795286 = adnl.Address; -adnl.addressList addrs:(vector adnl.Address) version:int reinit_date:int priority:int expire_at:int = adnl.AddressList; +adnl.addressList#2227e658 addrs:(vector adnl.Address) version:int reinit_date:int priority:int expire_at:int = adnl.AddressList; -adnl.node id:PublicKey addr_list:adnl.addressList = adnl.Node; -adnl.nodes nodes:(vector adnl.node) = adnl.Nodes; +adnl.node#6b561285 id:PublicKey addr_list:adnl.addressList = adnl.Node; +adnl.nodes#a209db56 nodes:(vector adnl.node) = adnl.Nodes; ---functions--- ---types--- -adnl.packetContents +adnl.packetContents#d142cd89 rand1:bytes flags:# from:flags.0?PublicKey @@ -98,7 +98,7 @@ adnl.packetContents rand2:bytes = adnl.PacketContents; -adnl.tunnelPacketContents +adnl.tunnelPacketContents#c59138b4 rand1:bytes flags:# from_ip:flags.0?int @@ -112,7 +112,7 @@ adnl.tunnelPacketContents // flag 16 - packet is outbound // flag 17 - control packet -adnl.proxyPacketHeader +adnl.proxyPacketHeader#08693c78 proxy_id:int256 flags:# ip:flags.0?int @@ -122,332 +122,332 @@ adnl.proxyPacketHeader date:flags.3?int signature:int256 = adnl.ProxyPacketHeader; -adnl.proxyControlPacketPing id:int256 = adnl.ProxyControlPacket; -adnl.proxyControlPacketPong id:int256 = adnl.ProxyControlPacket; -adnl.proxyControlPacketRegister ip:int port:int = adnl.ProxyControlPacket; +adnl.proxyControlPacketPing#3796e44b id:int256 = adnl.ProxyControlPacket; +adnl.proxyControlPacketPong#4bd1dbfc id:int256 = adnl.ProxyControlPacket; +adnl.proxyControlPacketRegister#c309b23f ip:int port:int = adnl.ProxyControlPacket; -adnl.message.createChannel key:int256 date:int = adnl.Message; -adnl.message.confirmChannel key:int256 peer_key:int256 date:int = adnl.Message; +adnl.message.createChannel#e673c3bb key:int256 date:int = adnl.Message; +adnl.message.confirmChannel#60dd1d69 key:int256 peer_key:int256 date:int = adnl.Message; -adnl.message.custom data:bytes = adnl.Message; +adnl.message.custom#204818f5 data:bytes = adnl.Message; -adnl.message.nop = adnl.Message; -adnl.message.reinit date:int = adnl.Message; +adnl.message.nop#17f8dfda = adnl.Message; +adnl.message.reinit#10c20520 date:int = adnl.Message; -adnl.message.query query_id:int256 query:bytes = adnl.Message; -adnl.message.answer query_id:int256 answer:bytes = adnl.Message; +adnl.message.query#b48bf97a query_id:int256 query:bytes = adnl.Message; +adnl.message.answer#0fac8416 query_id:int256 answer:bytes = adnl.Message; -adnl.message.part hash:int256 total_size:int offset:int data:bytes = adnl.Message; +adnl.message.part#fd452d39 hash:int256 total_size:int offset:int data:bytes = adnl.Message; ---functions--- ---types--- -adnl.db.node.key local_id:int256 peer_id:int256 = adnl.db.Key; -adnl.db.node.value date:int id:PublicKey addr_list:adnl.addressList priority_addr_list:adnl.addressList = adnl.db.node.Value; +adnl.db.node.key#c5a3e42e local_id:int256 peer_id:int256 = adnl.db.Key; +adnl.db.node.value#545d2707 date:int id:PublicKey addr_list:adnl.addressList priority_addr_list:adnl.addressList = adnl.db.node.Value; ---functions--- ---types--- -rldp2.messagePart transfer_id:int256 fec_type:fec.Type part:int total_size:long seqno:int data:bytes = rldp2.MessagePart; -rldp2.confirm transfer_id:int256 part:int max_seqno:int received_mask:int received_count:int = rldp2.MessagePart; -rldp2.complete transfer_id:int256 part:int = rldp2.MessagePart; +rldp2.messagePart#11480b6e transfer_id:int256 fec_type:fec.Type part:int total_size:long seqno:int data:bytes = rldp2.MessagePart; +rldp2.confirm#23e69945 transfer_id:int256 part:int max_seqno:int received_mask:int received_count:int = rldp2.MessagePart; +rldp2.complete#36b9081f transfer_id:int256 part:int = rldp2.MessagePart; -rldp.messagePart transfer_id:int256 fec_type:fec.Type part:int total_size:long seqno:int data:bytes = rldp.MessagePart; -rldp.confirm transfer_id:int256 part:int seqno:int = rldp.MessagePart; -rldp.complete transfer_id:int256 part:int = rldp.MessagePart; +rldp.messagePart#185c22cc transfer_id:int256 fec_type:fec.Type part:int total_size:long seqno:int data:bytes = rldp.MessagePart; +rldp.confirm#f582dc58 transfer_id:int256 part:int seqno:int = rldp.MessagePart; +rldp.complete#bc0cb2bf transfer_id:int256 part:int = rldp.MessagePart; -rldp.message id:int256 data:bytes = rldp.Message; -rldp.query query_id:int256 max_answer_size:long timeout:int data:bytes = rldp.Message; -rldp.answer query_id:int256 data:bytes = rldp.Message; +rldp.message#7d1bcd1e id:int256 data:bytes = rldp.Message; +rldp.query#8a794d69 query_id:int256 max_answer_size:long timeout:int data:bytes = rldp.Message; +rldp.answer#a3fc5c03 query_id:int256 data:bytes = rldp.Message; ---functions--- ---types--- -dht.node id:PublicKey addr_list:adnl.addressList version:int signature:bytes = dht.Node; -dht.nodes nodes:(vector dht.node) = dht.Nodes; +dht.node#84533248 id:PublicKey addr_list:adnl.addressList version:int signature:bytes = dht.Node; +dht.nodes#7974a0be nodes:(vector dht.node) = dht.Nodes; -dht.key id:int256 name:bytes idx:int = dht.Key; +dht.key#f667de8f id:int256 name:bytes idx:int = dht.Key; -dht.updateRule.signature = dht.UpdateRule; -dht.updateRule.anybody = dht.UpdateRule; -dht.updateRule.overlayNodes = dht.UpdateRule; +dht.updateRule.signature#cc9f31f7 = dht.UpdateRule; +dht.updateRule.anybody#61578e14 = dht.UpdateRule; +dht.updateRule.overlayNodes#26779383 = dht.UpdateRule; -dht.keyDescription key:dht.key id:PublicKey update_rule:dht.UpdateRule signature:bytes = dht.KeyDescription; +dht.keyDescription#281d4e05 key:dht.key id:PublicKey update_rule:dht.UpdateRule signature:bytes = dht.KeyDescription; -dht.value key:dht.keyDescription value:bytes ttl:int signature:bytes = dht.Value; +dht.value#90ad27cb key:dht.keyDescription value:bytes ttl:int signature:bytes = dht.Value; -dht.pong random_id:long = dht.Pong; +dht.pong#5a8aef81 random_id:long = dht.Pong; -dht.valueNotFound nodes:dht.nodes = dht.ValueResult; -dht.valueFound value:dht.Value = dht.ValueResult; +dht.valueNotFound#a2620568 nodes:dht.nodes = dht.ValueResult; +dht.valueFound#e40cf774 value:dht.Value = dht.ValueResult; -dht.clientNotFound nodes:dht.nodes = dht.ReversePingResult; -dht.reversePingOk = dht.ReversePingResult; +dht.clientNotFound#2d1c7e6f nodes:dht.nodes = dht.ReversePingResult; +dht.reversePingOk#204030a2 = dht.ReversePingResult; -dht.stored = dht.Stored; -dht.message node:dht.node = dht.Message; -dht.requestReversePingCont target:adnl.Node signature:bytes client:int256 = dht.RequestReversePingCont; +dht.stored#7026fb08 = dht.Stored; +dht.message#bc0cdb8e node:dht.node = dht.Message; +dht.requestReversePingCont#dbadc105 target:adnl.Node signature:bytes client:int256 = dht.RequestReversePingCont; -dht.db.bucket nodes:dht.nodes = dht.db.Bucket; -dht.db.key.bucket id:int = dht.db.Key; +dht.db.bucket#b39cfa6c nodes:dht.nodes = dht.db.Bucket; +dht.db.key.bucket#a368ae4c id:int = dht.db.Key; ---functions--- -dht.ping random_id:long = dht.Pong; -dht.store value:dht.value = dht.Stored; -dht.findNode key:int256 k:int = dht.Nodes; -dht.findValue key:int256 k:int = dht.ValueResult; -dht.getSignedAddressList = dht.Node; -dht.registerReverseConnection node:PublicKey ttl:int signature:bytes = dht.Stored; -dht.requestReversePing target:adnl.Node signature:bytes client:int256 k:int = dht.ReversePingResult; +dht.ping#cbeb3f18 random_id:long = dht.Pong; +dht.store#34934212 value:dht.value = dht.Stored; +dht.findNode#6ce2ce6b key:int256 k:int = dht.Nodes; +dht.findValue#ae4b6011 key:int256 k:int = dht.ValueResult; +dht.getSignedAddressList#a97948ed = dht.Node; +dht.registerReverseConnection#222cbc61 node:PublicKey ttl:int signature:bytes = dht.Stored; +dht.requestReversePing#0b94a40a target:adnl.Node signature:bytes client:int256 k:int = dht.ReversePingResult; -dht.query node:dht.node = True; +dht.query#7d530769 node:dht.node = True; ---types--- -overlay.node.toSign id:adnl.id.short overlay:int256 version:int = overlay.node.ToSign; -overlay.node id:PublicKey overlay:int256 version:int signature:bytes = overlay.Node; -overlay.nodes nodes:(vector overlay.node) = overlay.Nodes; +overlay.node.toSign#03d8a8e1 id:adnl.id.short overlay:int256 version:int = overlay.node.ToSign; +overlay.node#b86b8a83 id:PublicKey overlay:int256 version:int signature:bytes = overlay.Node; +overlay.nodes#e487290e nodes:(vector overlay.node) = overlay.Nodes; -overlay.message overlay:int256 = overlay.Message; +overlay.message#75252420 overlay:int256 = overlay.Message; //overlay.randomPeers peers:(vector adnl.node) = overlay.RandomPeers; -overlay.broadcastList hashes:(vector int256) = overlay.BroadcastList; +overlay.broadcastList#18d1dedf hashes:(vector int256) = overlay.BroadcastList; -overlay.fec.received hash:int256 = overlay.Broadcast; -overlay.fec.completed hash:int256 = overlay.Broadcast; +overlay.fec.received#d55c14ec hash:int256 = overlay.Broadcast; +overlay.fec.completed#09d76914 hash:int256 = overlay.Broadcast; -overlay.broadcast.id src:int256 data_hash:int256 flags:int = overlay.broadcast.Id; -overlay.broadcastFec.id src:int256 type:int256 data_hash:int256 size:int flags:int = overlay.broadcastFec.Id; -overlay.broadcastFec.partId broadcast_hash:int256 data_hash:int256 seqno:int = overlay.broadcastFec.PartId; +overlay.broadcast.id#51fd789a src:int256 data_hash:int256 flags:int = overlay.broadcast.Id; +overlay.broadcastFec.id#fb3155a6 src:int256 type:int256 data_hash:int256 size:int flags:int = overlay.broadcastFec.Id; +overlay.broadcastFec.partId#a46962d0 broadcast_hash:int256 data_hash:int256 seqno:int = overlay.broadcastFec.PartId; -overlay.broadcast.toSign hash:int256 date:int = overlay.broadcast.ToSign; +overlay.broadcast.toSign#fa374e7c hash:int256 date:int = overlay.broadcast.ToSign; -overlay.certificate issued_by:PublicKey expire_at:int max_size:int signature:bytes = overlay.Certificate; -overlay.certificateV2 issued_by:PublicKey expire_at:int max_size:int flags:int signature:bytes = overlay.Certificate; -overlay.emptyCertificate = overlay.Certificate; +overlay.certificate#e09ed731 issued_by:PublicKey expire_at:int max_size:int signature:bytes = overlay.Certificate; +overlay.certificateV2#b43f9c83 issued_by:PublicKey expire_at:int max_size:int flags:int signature:bytes = overlay.Certificate; +overlay.emptyCertificate#32dabccf = overlay.Certificate; -overlay.certificateId overlay_id:int256 node:int256 expire_at:int max_size:int = overlay.CertificateId; -overlay.certificateIdV2 overlay_id:int256 node:int256 expire_at:int max_size:int flags:int = overlay.CertificateId; +overlay.certificateId#8fae60b9 overlay_id:int256 node:int256 expire_at:int max_size:int = overlay.CertificateId; +overlay.certificateIdV2#fc6cd2a7 overlay_id:int256 node:int256 expire_at:int max_size:int flags:int = overlay.CertificateId; -overlay.unicast data:bytes = overlay.Broadcast; -overlay.broadcast src:PublicKey certificate:overlay.Certificate flags:int data:bytes date:int signature:bytes = overlay.Broadcast; -overlay.broadcastFec src:PublicKey certificate:overlay.Certificate data_hash:int256 data_size:int flags:int +overlay.unicast#33534e24 data:bytes = overlay.Broadcast; +overlay.broadcast#b15a2b6b src:PublicKey certificate:overlay.Certificate flags:int data:bytes date:int signature:bytes = overlay.Broadcast; +overlay.broadcastFec#bad7c36a src:PublicKey certificate:overlay.Certificate data_hash:int256 data_size:int flags:int data:bytes seqno:int fec:fec.Type date:int signature:bytes = overlay.Broadcast; -overlay.broadcastFecShort src:PublicKey certificate:overlay.Certificate broadcast_hash:int256 part_data_hash:int256 seqno:int signature:bytes = overlay.Broadcast; -overlay.broadcastNotFound = overlay.Broadcast; +overlay.broadcastFecShort#f1881342 src:PublicKey certificate:overlay.Certificate broadcast_hash:int256 part_data_hash:int256 seqno:int signature:bytes = overlay.Broadcast; +overlay.broadcastNotFound#95863624 = overlay.Broadcast; ---functions--- -overlay.getRandomPeers peers:overlay.nodes = overlay.Nodes; +overlay.getRandomPeers#48ee64ab peers:overlay.nodes = overlay.Nodes; -overlay.query overlay:int256 = True; -overlay.getBroadcast hash:int256 = overlay.Broadcast; -overlay.getBroadcastList list:overlay.broadcastList = overlay.BroadcastList; +overlay.query#ccfd8443 overlay:int256 = True; +overlay.getBroadcast#2d35f2a0 hash:int256 = overlay.Broadcast; +overlay.getBroadcastList#421c283a list:overlay.broadcastList = overlay.BroadcastList; ---types--- -overlay.db.nodes nodes:overlay.nodes = overlay.db.Nodes; -overlay.db.key.nodes local_id:int256 overlay:int256 = overlay.db.Key; +overlay.db.nodes#d588ce1a nodes:overlay.nodes = overlay.db.Nodes; +overlay.db.key.nodes#c4d07316 local_id:int256 overlay:int256 = overlay.db.Key; ---functions--- ---types--- -catchain.block.id incarnation:int256 src:int256 height:int data_hash:int256 = catchain.block.Id; -catchain.block.dep src:int height:int data_hash:int256 signature:bytes = catchain.block.Dep; -catchain.block.data prev:catchain.block.dep deps:(vector catchain.block.dep) = catchain.block.Data; -catchain.block incarnation:int256 src:int height:int data:catchain.block.data signature:bytes = catchain.Block; -catchain.blocks blocks:(vector catchain.block) = catchain.Blocks; -catchain.blockUpdate block:catchain.block = catchain.Update; +catchain.block.id#24fe98ba incarnation:int256 src:int256 height:int data_hash:int256 = catchain.block.Id; +catchain.block.dep#5a1ad14f src:int height:int data_hash:int256 signature:bytes = catchain.block.Dep; +catchain.block.data#f8aca620 prev:catchain.block.dep deps:(vector catchain.block.dep) = catchain.block.Data; +catchain.block#d6554174 incarnation:int256 src:int height:int data:catchain.block.data signature:bytes = catchain.Block; +catchain.blocks#50ecd1c1 blocks:(vector catchain.block) = catchain.Blocks; +catchain.blockUpdate#236758c4 block:catchain.block = catchain.Update; -catchain.block.data.badBlock block:catchain.block = catchain.block.inner.Data; -catchain.block.data.fork left:catchain.block.Dep right:catchain.block.Dep = catchain.block.inner.Data; -catchain.block.data.nop = catchain.block.inner.Data; +catchain.block.data.badBlock#b6025a56 block:catchain.block = catchain.block.inner.Data; +catchain.block.data.fork#647a3a52 left:catchain.block.Dep right:catchain.block.Dep = catchain.block.inner.Data; +catchain.block.data.nop#5482b4d0 = catchain.block.inner.Data; //catchain.block.data.vector msgs:(vector bytes) = catchain.block.inner.Data; //catchain.block.data.custom = catchain.block.inner.Data; -catchain.firstblock unique_hash:int256 nodes:(vector int256) = catchain.FirstBlock; +catchain.firstblock#10c904fb unique_hash:int256 nodes:(vector int256) = catchain.FirstBlock; -catchain.difference sent_upto:(vector int) = catchain.Difference; -catchain.differenceFork left:catchain.block.dep right:catchain.block.dep = catchain.Difference; +catchain.difference#1415d1ca sent_upto:(vector int) = catchain.Difference; +catchain.differenceFork#4927c06f left:catchain.block.dep right:catchain.block.dep = catchain.Difference; -catchain.blockNotFound = catchain.BlockResult; -catchain.blockResult block:catchain.block = catchain.BlockResult; +catchain.blockNotFound#b6110884 = catchain.BlockResult; +catchain.blockResult#9d2a3047 block:catchain.block = catchain.BlockResult; ---functions--- -catchain.getBlock block:int256 = catchain.BlockResult; -catchain.getDifference rt:(vector int) = catchain.Difference; +catchain.getBlock#093ddd78 block:int256 = catchain.BlockResult; +catchain.getDifference#d06cced8 rt:(vector int) = catchain.Difference; //catchain.getForkDifference src:int fork:catchain.fork = catchain.ForkDifference; ---types--- -validatorSession.round.id session:int256 height:long prev_block:int256 seqno:int = validatorSession.round.Id; +validatorSession.round.id#0025cfa5 session:int256 height:long prev_block:int256 seqno:int = validatorSession.round.Id; -validatorSession.candidate.id round:int256 block_hash:int256 = validatorSession.tempBlock.Id; +validatorSession.candidate.id#bcd74139 round:int256 block_hash:int256 = validatorSession.tempBlock.Id; -validatorSession.message.startSession = validatorSession.Message; -validatorSession.message.finishSession = validatorSession.Message; +validatorSession.message.startSession#96a166d1 = validatorSession.Message; +validatorSession.message.finishSession#cb9b22e3 = validatorSession.Message; -validatorSession.message.submittedBlock round:int root_hash:int256 file_hash:int256 +validatorSession.message.submittedBlock#127624b6 round:int root_hash:int256 file_hash:int256 collated_data_file_hash:int256 = validatorSession.round.Message; -validatorSession.message.approvedBlock round:int candidate:int256 signature:bytes = validatorSession.round.Message; -validatorSession.message.rejectedBlock round:int candidate:int256 reason:bytes = validatorSession.round.Message; -validatorSession.message.commit round:int candidate:int256 signature:bytes = validatorSession.round.Message; +validatorSession.message.approvedBlock#04a5b581 round:int candidate:int256 signature:bytes = validatorSession.round.Message; +validatorSession.message.rejectedBlock#95884e6b round:int candidate:int256 reason:bytes = validatorSession.round.Message; +validatorSession.message.commit#ac129ef5 round:int candidate:int256 signature:bytes = validatorSession.round.Message; -validatorSession.message.vote round:int attempt:int candidate:int256 = validatorSession.round.Message; -validatorSession.message.voteFor round:int attempt:int candidate:int256 = validatorSession.round.Message; -validatorSession.message.precommit round:int attempt:int candidate:int256 = validatorSession.round.Message; -validatorSession.message.empty round:int attempt:int = validatorSession.round.Message; +validatorSession.message.vote#9a3251c7 round:int attempt:int candidate:int256 = validatorSession.round.Message; +validatorSession.message.voteFor#61f0fe2f round:int attempt:int candidate:int256 = validatorSession.round.Message; +validatorSession.message.precommit#a854b552 round:int attempt:int candidate:int256 = validatorSession.round.Message; +validatorSession.message.empty#4a201fa9 round:int attempt:int = validatorSession.round.Message; -validatorSession.pong hash:long = validatorSession.Pong; +validatorSession.pong#dcc6376d hash:long = validatorSession.Pong; -validatorSession.candidateId src:int256 root_hash:int256 file_hash:int256 collated_data_file_hash:int256 = validatorSession.CandidateId; +validatorSession.candidateId#19fee56c src:int256 root_hash:int256 file_hash:int256 collated_data_file_hash:int256 = validatorSession.CandidateId; -validatorSession.blockUpdate ts:long actions:(vector validatorSession.round.Message) state:int = validatorSession.BlockUpdate; -validatorSession.candidate src:int256 round:int root_hash:int256 data:bytes collated_data:bytes = validatorSession.Candidate; +validatorSession.blockUpdate#9283ce37 ts:long actions:(vector validatorSession.round.Message) state:int = validatorSession.BlockUpdate; +validatorSession.candidate#7d337845 src:int256 round:int root_hash:int256 data:bytes collated_data:bytes = validatorSession.Candidate; -validatorSession.config catchain_idle_timeout:double catchain_max_deps:int round_candidates:int next_candidate_delay:double round_attempt_duration:int +validatorSession.config#b661fdc3 catchain_idle_timeout:double catchain_max_deps:int round_candidates:int next_candidate_delay:double round_attempt_duration:int max_round_attempts:int max_block_size:int max_collated_data_size:int = validatorSession.Config; -validatorSession.configNew catchain_idle_timeout:double catchain_max_deps:int round_candidates:int next_candidate_delay:double round_attempt_duration:int +validatorSession.configNew#f7afa99c catchain_idle_timeout:double catchain_max_deps:int round_candidates:int next_candidate_delay:double round_attempt_duration:int max_round_attempts:int max_block_size:int max_collated_data_size:int new_catchain_ids:Bool = validatorSession.Config; -validatorSession.configVersioned catchain_idle_timeout:double catchain_max_deps:int round_candidates:int next_candidate_delay:double round_attempt_duration:int +validatorSession.configVersioned#402a9703 catchain_idle_timeout:double catchain_max_deps:int round_candidates:int next_candidate_delay:double round_attempt_duration:int max_round_attempts:int max_block_size:int max_collated_data_size:int version:int = validatorSession.Config; -validatorSession.catchainOptions idle_timeout:double max_deps:int max_block_size:int block_hash_covers_data:Bool +validatorSession.catchainOptions#70e249e6 idle_timeout:double max_deps:int max_block_size:int block_hash_covers_data:Bool max_block_height_ceoff:int debug_disable_db:Bool = validatorSession.CatChainOptions; -validatorSession.configVersionedV2 catchain_opts:validatorSession.CatChainOptions round_candidates:int next_candidate_delay:double +validatorSession.configVersionedV2#a97b11af catchain_opts:validatorSession.CatChainOptions round_candidates:int next_candidate_delay:double round_attempt_duration:int max_round_attempts:int max_block_size:int max_collated_data_size:int version:int = validatorSession.Config; ---functions--- -validatorSession.ping hash:long = validatorSession.Pong; -validatorSession.downloadCandidate round:int id:validatorSession.candidateId = validatorSession.Candidate; +validatorSession.ping#680449ad hash:long = validatorSession.Pong; +validatorSession.downloadCandidate#e0fd3df5 round:int id:validatorSession.candidateId = validatorSession.Candidate; ---types--- -hashable.bool value:Bool = Hashable; -hashable.int32 value:int = Hashable; -hashable.int64 value:long = Hashable; -hashable.int256 value:int256 = Hashable; -hashable.bytes value:bytes = Hashable; -hashable.pair left:int right:int = Hashable; -hashable.vector value:(vector int) = Hashable; -hashable.validatorSessionOldRound seqno:int block:int signatures:int approve_signatures:int = Hashable; -hashable.validatorSessionRoundAttempt seqno:int votes:int precommitted:int vote_for_inited:int vote_for:int = Hashable; -hashable.validatorSessionRound locked_round:int locked_block:int seqno:int precommitted:Bool +hashable.bool#cf61441c value:Bool = Hashable; +hashable.int32#d3b59356 value:int = Hashable; +hashable.int64#e7da8e42 value:long = Hashable; +hashable.int256#3a2313cf value:int256 = Hashable; +hashable.bytes#0713de12 value:bytes = Hashable; +hashable.pair#c7e56895 left:int right:int = Hashable; +hashable.vector#df34c36d value:(vector int) = Hashable; +hashable.validatorSessionOldRound#478b67a9 seqno:int block:int signatures:int approve_signatures:int = Hashable; +hashable.validatorSessionRoundAttempt#4c11ffad seqno:int votes:int precommitted:int vote_for_inited:int vote_for:int = Hashable; +hashable.validatorSessionRound#35774fe3 locked_round:int locked_block:int seqno:int precommitted:Bool first_attempt:int approved_blocks:int signatures:int attempts:int = Hashable; -hashable.blockSignature signature:int = Hashable; -hashable.sentBlock src:int root_hash:int file_hash:int collated_data_file_hash:int = Hashable; -hashable.sentBlockEmpty = Hashable; -hashable.vote block:int node:int = Hashable; -hashable.blockCandidate block:int approved:int = Hashable; -hashable.blockVoteCandidate block:int approved:int = Hashable; -hashable.blockCandidateAttempt block:int votes:int = Hashable; +hashable.blockSignature#37e192a2 signature:int = Hashable; +hashable.sentBlock#bdb9952b src:int root_hash:int file_hash:int collated_data_file_hash:int = Hashable; +hashable.sentBlockEmpty#9ef246af = Hashable; +hashable.vote#aebf2bc5 block:int node:int = Hashable; +hashable.blockCandidate#0ba9b10d block:int approved:int = Hashable; +hashable.blockVoteCandidate#cf0d6fe5 block:int approved:int = Hashable; +hashable.blockCandidateAttempt#3f5c7d0b block:int votes:int = Hashable; -hashable.cntVector data:int = Hashable; -hashable.cntSortedVector data:int = Hashable; +hashable.cntVector#0b286f38 data:int = Hashable; +hashable.cntSortedVector#7b964659 data:int = Hashable; -hashable.validatorSession ts:int old_rounds:int cur_round:int = Hashable; +hashable.validatorSession#681263d5 ts:int old_rounds:int cur_round:int = Hashable; ---functions--- ---types--- -tonNode.sessionId workchain:int shard:long cc_seqno:int opts_hash:int256 = tonNode.SessionId; +tonNode.sessionId#7a9236ba workchain:int shard:long cc_seqno:int opts_hash:int256 = tonNode.SessionId; -tonNode.blockSignature who:int256 signature:bytes = tonNode.BlockSignature; +tonNode.blockSignature#50f03c33 who:int256 signature:bytes = tonNode.BlockSignature; -tonNode.blockId workchain:int shard:long seqno:int = tonNode.BlockId; -tonNode.blockIdExt workchain:int shard:long seqno:int root_hash:int256 file_hash:int256 = tonNode.BlockIdExt; -tonNode.zeroStateIdExt workchain:int root_hash:int256 file_hash:int256 = tonNode.ZeroStateIdExt; +tonNode.blockId#b7cdb167 workchain:int shard:long seqno:int = tonNode.BlockId; +tonNode.blockIdExt#6752eb78 workchain:int shard:long seqno:int root_hash:int256 file_hash:int256 = tonNode.BlockIdExt; +tonNode.zeroStateIdExt#1d7235ae workchain:int root_hash:int256 file_hash:int256 = tonNode.ZeroStateIdExt; -tonNode.blockDescriptionEmpty = tonNode.BlockDescription; -tonNode.blockDescription id:tonNode.blockIdExt = tonNode.BlockDescription; -tonNode.blocksDescription ids:(vector tonNode.blockIdExt) incomplete:Bool = tonNode.BlocksDescription; -tonNode.preparedProofEmpty = tonNode.PreparedProof; -tonNode.preparedProof = tonNode.PreparedProof; -tonNode.preparedProofLink = tonNode.PreparedProof; -tonNode.preparedState = tonNode.PreparedState; -tonNode.notFoundState = tonNode.PreparedState; -tonNode.prepared = tonNode.Prepared; -tonNode.notFound = tonNode.Prepared; -tonNode.data data:bytes = tonNode.Data; +tonNode.blockDescriptionEmpty#8384ae95 = tonNode.BlockDescription; +tonNode.blockDescription#46a1d088 id:tonNode.blockIdExt = tonNode.BlockDescription; +tonNode.blocksDescription#d62a612c ids:(vector tonNode.blockIdExt) incomplete:Bool = tonNode.BlocksDescription; +tonNode.preparedProofEmpty#c769c17a = tonNode.PreparedProof; +tonNode.preparedProof#899f9a4b = tonNode.PreparedProof; +tonNode.preparedProofLink#3dff328d = tonNode.PreparedProof; +tonNode.preparedState#375bcb6d = tonNode.PreparedState; +tonNode.notFoundState#32390a51 = tonNode.PreparedState; +tonNode.prepared#eac4bbcd = tonNode.Prepared; +tonNode.notFound#e2c33da6 = tonNode.Prepared; +tonNode.data#560a2484 data:bytes = tonNode.Data; //tonNode.preparedKeyBlockProofEmpty = tonNode.PreparedKeyBlockProof; //tonNode.preparedKeyBlockProof block_id:tonNode.blockIdExt = tonNode.PreparedKeyBlockProof; -tonNode.ihrMessage data:bytes = tonNode.IhrMessage; -tonNode.externalMessage data:bytes = tonNode.ExternalMessage; +tonNode.ihrMessage#4534c307 data:bytes = tonNode.IhrMessage; +tonNode.externalMessage#dc75a209 data:bytes = tonNode.ExternalMessage; -tonNode.newShardBlock block:tonNode.blockIdExt cc_seqno:int data:bytes = tonNode.NewShardBlock; +tonNode.newShardBlock#a49dc229 block:tonNode.blockIdExt cc_seqno:int data:bytes = tonNode.NewShardBlock; -tonNode.blockBroadcast id:tonNode.blockIdExt catchain_seqno:int validator_set_hash:int +tonNode.blockBroadcast#ae2e1105 id:tonNode.blockIdExt catchain_seqno:int validator_set_hash:int signatures:(vector tonNode.blockSignature) proof:bytes data:bytes = tonNode.Broadcast; -tonNode.ihrMessageBroadcast message:tonNode.ihrMessage = tonNode.Broadcast; -tonNode.externalMessageBroadcast message:tonNode.externalMessage = tonNode.Broadcast; -tonNode.newShardBlockBroadcast block:tonNode.newShardBlock = tonNode.Broadcast; +tonNode.ihrMessageBroadcast#525da4b3 message:tonNode.ihrMessage = tonNode.Broadcast; +tonNode.externalMessageBroadcast#3d1b1867 message:tonNode.externalMessage = tonNode.Broadcast; +tonNode.newShardBlockBroadcast#0af2fabc block:tonNode.newShardBlock = tonNode.Broadcast; -tonNode.shardPublicOverlayId workchain:int shard:long zero_state_file_hash:int256 = tonNode.ShardPublicOverlayId; +tonNode.shardPublicOverlayId#4d9ed329 workchain:int shard:long zero_state_file_hash:int256 = tonNode.ShardPublicOverlayId; -tonNode.keyBlocks blocks:(vector tonNode.blockIdExt) incomplete:Bool error:Bool = tonNode.KeyBlocks; +tonNode.keyBlocks#07664d59 blocks:(vector tonNode.blockIdExt) incomplete:Bool error:Bool = tonNode.KeyBlocks; -ton.blockId root_cell_hash:int256 file_hash:int256 = ton.BlockId; -ton.blockIdApprove root_cell_hash:int256 file_hash:int256 = ton.BlockId; +ton.blockId#c50b6e70 root_cell_hash:int256 file_hash:int256 = ton.BlockId; +ton.blockIdApprove#2dd44a49 root_cell_hash:int256 file_hash:int256 = ton.BlockId; -tonNode.dataList data:(vector bytes) = tonNode.DataList; +tonNode.dataList#14f43313 data:(vector bytes) = tonNode.DataList; -tonNode.dataFull id:tonNode.blockIdExt proof:bytes block:bytes is_link:Bool = tonNode.DataFull; -tonNode.dataFullEmpty = tonNode.DataFull; +tonNode.dataFull#be589f93 id:tonNode.blockIdExt proof:bytes block:bytes is_link:Bool = tonNode.DataFull; +tonNode.dataFullEmpty#576e85ca = tonNode.DataFull; -tonNode.capabilities version:int capabilities:long = tonNode.Capabilities; +tonNode.capabilities#f5bf60c0 version:int capabilities:long = tonNode.Capabilities; -tonNode.success = tonNode.Success; +tonNode.success#c096244f = tonNode.Success; -tonNode.archiveNotFound = tonNode.ArchiveInfo; -tonNode.archiveInfo id:long = tonNode.ArchiveInfo; +tonNode.archiveNotFound#99291683 = tonNode.ArchiveInfo; +tonNode.archiveInfo#19efff8c id:long = tonNode.ArchiveInfo; ---functions--- -tonNode.getNextBlockDescription prev_block:tonNode.blockIdExt = tonNode.BlockDescription; -tonNode.getNextBlocksDescription prev_block:tonNode.blockIdExt limit:int = tonNode.BlocksDescription; -tonNode.getPrevBlocksDescription next_block:tonNode.blockIdExt limit:int cutoff_seqno:int = tonNode.BlocksDescription; -tonNode.prepareBlockProof block:tonNode.blockIdExt allow_partial:Bool = tonNode.PreparedProof; -tonNode.prepareKeyBlockProof block:tonNode.blockIdExt allow_partial:Bool = tonNode.PreparedProof; -tonNode.prepareBlockProofs blocks:(vector tonNode.blockIdExt) allow_partial:Bool = tonNode.PreparedProof; -tonNode.prepareKeyBlockProofs blocks:(vector tonNode.blockIdExt) allow_partial:Bool = tonNode.PreparedProof; -tonNode.prepareBlock block:tonNode.blockIdExt = tonNode.Prepared; -tonNode.prepareBlocks blocks:(vector tonNode.blockIdExt) = tonNode.Prepared; -tonNode.preparePersistentState block:tonNode.blockIdExt masterchain_block:tonNode.blockIdExt = tonNode.PreparedState; -tonNode.prepareZeroState block:tonNode.blockIdExt = tonNode.PreparedState; -tonNode.getNextKeyBlockIds block:tonNode.blockIdExt max_size:int = tonNode.KeyBlocks; -tonNode.downloadNextBlockFull prev_block:tonNode.blockIdExt = tonNode.DataFull; -tonNode.downloadBlockFull block:tonNode.blockIdExt = tonNode.DataFull; -tonNode.downloadBlock block:tonNode.blockIdExt = tonNode.Data; -tonNode.downloadBlocks blocks:(vector tonNode.blockIdExt) = tonNode.DataList; -tonNode.downloadPersistentState block:tonNode.blockIdExt masterchain_block:tonNode.blockIdExt = tonNode.Data; -tonNode.downloadPersistentStateSlice block:tonNode.blockIdExt masterchain_block:tonNode.blockIdExt offset:long max_size:long = tonNode.Data; -tonNode.downloadZeroState block:tonNode.blockIdExt = tonNode.Data; -tonNode.downloadBlockProof block:tonNode.blockIdExt = tonNode.Data; -tonNode.downloadKeyBlockProof block:tonNode.blockIdExt = tonNode.Data; -tonNode.downloadBlockProofs blocks:(vector tonNode.blockIdExt) = tonNode.DataList; -tonNode.downloadKeyBlockProofs blocks:(vector tonNode.blockIdExt) = tonNode.DataList; -tonNode.downloadBlockProofLink block:tonNode.blockIdExt = tonNode.Data; -tonNode.downloadKeyBlockProofLink block:tonNode.blockIdExt = tonNode.Data; -tonNode.downloadBlockProofLinks blocks:(vector tonNode.blockIdExt) = tonNode.DataList; -tonNode.downloadKeyBlockProofLinks blocks:(vector tonNode.blockIdExt) = tonNode.DataList; -tonNode.getArchiveInfo masterchain_seqno:int = tonNode.ArchiveInfo; -tonNode.getArchiveSlice archive_id:long offset:long max_size:int = tonNode.Data; - -tonNode.getCapabilities = tonNode.Capabilities; - -tonNode.slave.sendExtMessage message:tonNode.externalMessage = tonNode.Success; - -tonNode.query = Object; +tonNode.getNextBlockDescription#1455b0f3 prev_block:tonNode.blockIdExt = tonNode.BlockDescription; +tonNode.getNextBlocksDescription#3f2812c4 prev_block:tonNode.blockIdExt limit:int = tonNode.BlocksDescription; +tonNode.getPrevBlocksDescription#5c6d6cc9 next_block:tonNode.blockIdExt limit:int cutoff_seqno:int = tonNode.BlocksDescription; +tonNode.prepareBlockProof#875c3308 block:tonNode.blockIdExt allow_partial:Bool = tonNode.PreparedProof; +tonNode.prepareKeyBlockProof#77364c38 block:tonNode.blockIdExt allow_partial:Bool = tonNode.PreparedProof; +tonNode.prepareBlockProofs#ed79b2b8 blocks:(vector tonNode.blockIdExt) allow_partial:Bool = tonNode.PreparedProof; +tonNode.prepareKeyBlockProofs#8c6cfbe4 blocks:(vector tonNode.blockIdExt) allow_partial:Bool = tonNode.PreparedProof; +tonNode.prepareBlock#75a37f4e block:tonNode.blockIdExt = tonNode.Prepared; +tonNode.prepareBlocks#6affabfc blocks:(vector tonNode.blockIdExt) = tonNode.Prepared; +tonNode.preparePersistentState#feea269e block:tonNode.blockIdExt masterchain_block:tonNode.blockIdExt = tonNode.PreparedState; +tonNode.prepareZeroState#41ce0825 block:tonNode.blockIdExt = tonNode.PreparedState; +tonNode.getNextKeyBlockIds#f2e7cfbb block:tonNode.blockIdExt max_size:int = tonNode.KeyBlocks; +tonNode.downloadNextBlockFull#6ea0374a prev_block:tonNode.blockIdExt = tonNode.DataFull; +tonNode.downloadBlockFull#6a27c49d block:tonNode.blockIdExt = tonNode.DataFull; +tonNode.downloadBlock#e27279c3 block:tonNode.blockIdExt = tonNode.Data; +tonNode.downloadBlocks#7659c57d blocks:(vector tonNode.blockIdExt) = tonNode.DataList; +tonNode.downloadPersistentState#7f99e3b8 block:tonNode.blockIdExt masterchain_block:tonNode.blockIdExt = tonNode.Data; +tonNode.downloadPersistentStateSlice#f5e9e6e3 block:tonNode.blockIdExt masterchain_block:tonNode.blockIdExt offset:long max_size:long = tonNode.Data; +tonNode.downloadZeroState#adcc1e5a block:tonNode.blockIdExt = tonNode.Data; +tonNode.downloadBlockProof#4bd6478a block:tonNode.blockIdExt = tonNode.Data; +tonNode.downloadKeyBlockProof#ec23483a block:tonNode.blockIdExt = tonNode.Data; +tonNode.downloadBlockProofs#a5b053f5 blocks:(vector tonNode.blockIdExt) = tonNode.DataList; +tonNode.downloadKeyBlockProofs#c327de3a blocks:(vector tonNode.blockIdExt) = tonNode.DataList; +tonNode.downloadBlockProofLink#25b300c6 block:tonNode.blockIdExt = tonNode.Data; +tonNode.downloadKeyBlockProofLink#12e42ad2 block:tonNode.blockIdExt = tonNode.Data; +tonNode.downloadBlockProofLinks#28d12b63 blocks:(vector tonNode.blockIdExt) = tonNode.DataList; +tonNode.downloadKeyBlockProofLinks#75c38550 blocks:(vector tonNode.blockIdExt) = tonNode.DataList; +tonNode.getArchiveInfo#7b2dd941 masterchain_seqno:int = tonNode.ArchiveInfo; +tonNode.getArchiveSlice#203b5168 archive_id:long offset:long max_size:int = tonNode.Data; + +tonNode.getCapabilities#dee618f8 = tonNode.Capabilities; + +tonNode.slave.sendExtMessage#0376f2a9 message:tonNode.externalMessage = tonNode.Success; + +tonNode.query#69f324d3 = Object; ---types--- @@ -457,16 +457,16 @@ tonNode.query = Object; // bit 3 - archived // bit 4 - disabled -db.root.dbDescription version:int first_masterchain_block_id:tonNode.blockIdExt flags:int = db.root.DbDescription; +db.root.dbDescription#b41873f3 version:int first_masterchain_block_id:tonNode.blockIdExt flags:int = db.root.DbDescription; -db.root.key.cellDb version:int = db.root.Key; -db.root.key.blockDb version:int = db.root.Key; +db.root.key.cellDb#72f9b33e version:int = db.root.Key; +db.root.key.blockDb#3012bf40 version:int = db.root.Key; -db.root.config celldb_version:int blockdb_version:int = db.root.Config; -db.root.key.config = db.root.Key; +db.root.config#d61182a1 celldb_version:int blockdb_version:int = db.root.Config; +db.root.key.config#13c33284 = db.root.Key; -db.celldb.value block_id:tonNode.blockIdExt prev:int256 next:int256 root_hash:int256 = db.celldb.Value; -db.celldb.key.value hash:int256 = db.celldb.key.Value; +db.celldb.value#e6101440 block_id:tonNode.blockIdExt prev:int256 next:int256 root_hash:int256 = db.celldb.Value; +db.celldb.key.value#5bb13923 hash:int256 = db.celldb.key.Value; db.block.info#4ac6e727 id:tonNode.blockIdExt flags:# prev_left:flags.1?tonNode.blockIdExt prev_right:flags.2?tonNode.blockIdExt @@ -476,70 +476,70 @@ db.block.info#4ac6e727 id:tonNode.blockIdExt flags:# prev_left:flags.1?tonNode.b ts:flags.14?int state:flags.17?int256 masterchain_ref_seqno:flags.23?int = db.block.Info; -db.block.packedInfo id:tonNode.blockIdExt unixtime:int offset:long = db.block.Info; -db.block.archivedInfo id:tonNode.blockIdExt flags:# next:flags.0?tonNode.blockIdExt = db.block.Info; - -db.blockdb.value next:tonNode.blockIdExt data:bytes = db.blockdb.Value; -db.blockdb.lru id:tonNode.blockIdExt prev:int256 next:int256 = db.blockdb.Lru; -db.blockdb.key.lru id:tonNode.blockIdExt = db.blockdb.Key; -db.blockdb.key.value id:tonNode.blockIdExt = db.blockdb.Key; - -db.candidate source:PublicKey id:tonNode.blockIdExt data:bytes collated_data:bytes = db.Candidate; -db.candidate.id source:PublicKey id:tonNode.blockIdExt collated_data_file_hash:int256 = db.candidate.Id; - -db.filedb.key.empty = db.filedb.Key; -db.filedb.key.blockFile block_id:tonNode.blockIdExt = db.filedb.Key; -db.filedb.key.zeroStateFile block_id:tonNode.blockIdExt = db.filedb.Key; -db.filedb.key.persistentStateFile block_id:tonNode.blockIdExt masterchain_block_id:tonNode.blockIdExt = db.filedb.Key; -db.filedb.key.proof block_id:tonNode.blockIdExt = db.filedb.Key; -db.filedb.key.proofLink block_id:tonNode.blockIdExt = db.filedb.Key; -db.filedb.key.signatures block_id:tonNode.blockIdExt = db.filedb.Key; -db.filedb.key.candidate id:db.candidate.id = db.filedb.Key; -db.filedb.key.blockInfo block_id:tonNode.blockIdExt = db.filedb.Key; - -db.filedb.value key:db.filedb.Key prev:int256 next:int256 file_hash:int256 = db.filedb.Value; - -db.state.destroyedSessions sessions:(vector int256) = db.state.DestroyedSessions; -db.state.initBlockId block:tonNode.blockIdExt = db.state.InitBlockId; -db.state.gcBlockId block:tonNode.blockIdExt = db.state.GcBlockId; -db.state.shardClient block:tonNode.blockIdExt = db.state.ShardClient; -db.state.asyncSerializer block:tonNode.blockIdExt last:tonNode.blockIdExt last_ts:int = db.state.AsyncSerializer; -db.state.hardforks blocks:(vector tonNode.blockIdExt) = db.state.Hardforks; -db.state.dbVersion version:int = db.state.DbVersion; - -db.state.key.destroyedSessions = db.state.Key; -db.state.key.initBlockId = db.state.Key; -db.state.key.gcBlockId = db.state.Key; -db.state.key.shardClient = db.state.Key; -db.state.key.asyncSerializer = db.state.Key; -db.state.key.hardforks = db.state.Key; -db.state.key.dbVersion = db.state.Key; - -db.lt.el.key workchain:int shard:long idx:int = db.lt.Key; -db.lt.desc.key workchain:int shard:long = db.lt.Key; -db.lt.shard.key idx:int = db.lt.Key; -db.lt.status.key = db.lt.Key; -db.lt.el.value id:tonNode.blockIdExt lt:long ts:int = db.lt.el.Value; -db.lt.desc.value first_idx:int last_idx:int last_seqno:int last_lt:long last_ts:int = db.lt.desc.Value; -db.lt.shard.value workchain:int shard:long = db.lt.shard.Value; -db.lt.status.value total_shards:int = db.lt.status.Value; - -db.files.index.key = db.files.Key; -db.files.package.key package_id:int key:Bool temp:Bool = db.files.Key; - -db.files.index.value packages:(vector int) key_packages:(vector int) temp_packages:(vector int) = db.files.index.Value; -db.files.package.firstBlock workchain:int shard:long seqno:int unixtime:int lt:long = db.files.package.FirstBlock; -db.files.package.value package_id:int key:Bool temp:Bool firstblocks:(vector db.files.package.firstBlock) deleted:Bool - = db.files.package.Value; +db.block.packedInfo#46bb9192 id:tonNode.blockIdExt unixtime:int offset:long = db.block.Info; +db.block.archivedInfo#205f7a51 id:tonNode.blockIdExt flags:# next:flags.0?tonNode.blockIdExt = db.block.Info; + +db.blockdb.value#b28ec42d next:tonNode.blockIdExt data:bytes = db.blockdb.Value; +db.blockdb.lru#c11655b3 id:tonNode.blockIdExt prev:int256 next:int256 = db.blockdb.Lru; +db.blockdb.key.lru#50bc963a id:tonNode.blockIdExt = db.blockdb.Key; +db.blockdb.key.value#7f57d173 id:tonNode.blockIdExt = db.blockdb.Key; + +db.candidate#65d96ada source:PublicKey id:tonNode.blockIdExt data:bytes collated_data:bytes = db.Candidate; +db.candidate.id#37c0b287 source:PublicKey id:tonNode.blockIdExt collated_data_file_hash:int256 = db.candidate.Id; + +db.filedb.key.empty#7bff274b = db.filedb.Key; +db.filedb.key.blockFile#b0eae471 block_id:tonNode.blockIdExt = db.filedb.Key; +db.filedb.key.zeroStateFile#1252863d block_id:tonNode.blockIdExt = db.filedb.Key; +db.filedb.key.persistentStateFile#afb6764c block_id:tonNode.blockIdExt masterchain_block_id:tonNode.blockIdExt = db.filedb.Key; +db.filedb.key.proof#da954dec block_id:tonNode.blockIdExt = db.filedb.Key; +db.filedb.key.proofLink#98fbc5ce block_id:tonNode.blockIdExt = db.filedb.Key; +db.filedb.key.signatures#d7290d0b block_id:tonNode.blockIdExt = db.filedb.Key; +db.filedb.key.candidate#e28a0ab9 id:db.candidate.id = db.filedb.Key; +db.filedb.key.blockInfo#c499d4fc block_id:tonNode.blockIdExt = db.filedb.Key; + +db.filedb.value#f2dd1a2d key:db.filedb.Key prev:int256 next:int256 file_hash:int256 = db.filedb.Value; + +db.state.destroyedSessions#ada8d984 sessions:(vector int256) = db.state.DestroyedSessions; +db.state.initBlockId#732c9cf5 block:tonNode.blockIdExt = db.state.InitBlockId; +db.state.gcBlockId#df30bd4f block:tonNode.blockIdExt = db.state.GcBlockId; +db.state.shardClient#0b16a69d block:tonNode.blockIdExt = db.state.ShardClient; +db.state.asyncSerializer#d32f29a1 block:tonNode.blockIdExt last:tonNode.blockIdExt last_ts:int = db.state.AsyncSerializer; +db.state.hardforks#85f30d04 blocks:(vector tonNode.blockIdExt) = db.state.Hardforks; +db.state.dbVersion#d93720f7 version:int = db.state.DbVersion; + +db.state.key.destroyedSessions#e8f7f159 = db.state.Key; +db.state.key.initBlockId#758278e3 = db.state.Key; +db.state.key.gcBlockId#c379f3de = db.state.Key; +db.state.key.shardClient#c99b3187 = db.state.Key; +db.state.key.asyncSerializer#29ae8a1f = db.state.Key; +db.state.key.hardforks#e6f427ba = db.state.Key; +db.state.key.dbVersion#724f2154 = db.state.Key; + +db.lt.el.key#a5321ae2 workchain:int shard:long idx:int = db.lt.Key; +db.lt.desc.key#f1e3e791 workchain:int shard:long = db.lt.Key; +db.lt.shard.key#50a6f90f idx:int = db.lt.Key; +db.lt.status.key#776c6057 = db.lt.Key; +db.lt.el.value#95e65f64 id:tonNode.blockIdExt lt:long ts:int = db.lt.el.Value; +db.lt.desc.value#71af51b4 first_idx:int last_idx:int last_seqno:int last_lt:long last_ts:int = db.lt.desc.Value; +db.lt.shard.value#3c739a7b workchain:int shard:long = db.lt.shard.Value; +db.lt.status.value#fabeed39 total_shards:int = db.lt.status.Value; + +db.files.index.key#7dc40502 = db.files.Key; +db.files.package.key#a504033e package_id:int key:Bool temp:Bool = db.files.Key; + +db.files.index.value#a2b1dafc packages:(vector int) key_packages:(vector int) temp_packages:(vector int) = db.files.index.Value; +db.files.package.firstBlock#701269e7 workchain:int shard:long seqno:int unixtime:int lt:long = db.files.package.FirstBlock; +db.files.package.value#e44cd52b package_id:int key:Bool temp:Bool firstblocks:(vector db.files.package.firstBlock) deleted:Bool + = db.files.package.Value; ---functions--- ---types--- -validator.groupMember public_key_hash:int256 adnl:int256 weight:long = engine.validator.GroupMember; -validator.group workchain:int shard:long catchain_seqno:int config_hash:int256 members:(vector validator.groupMember) = validator.Group; -validator.groupEx workchain:int shard:long vertical_seqno:int catchain_seqno:int config_hash:int256 members:(vector validator.groupMember) = validator.Group; -validator.groupNew workchain:int shard:long vertical_seqno:int last_key_block_seqno:int catchain_seqno:int config_hash:int256 members:(vector validator.groupMember) = validator.Group; +validator.groupMember#8b9465e4 public_key_hash:int256 adnl:int256 weight:long = engine.validator.GroupMember; +validator.group#f8d87ea1 workchain:int shard:long catchain_seqno:int config_hash:int256 members:(vector validator.groupMember) = validator.Group; +validator.groupEx#1c924dfe workchain:int shard:long vertical_seqno:int catchain_seqno:int config_hash:int256 members:(vector validator.groupMember) = validator.Group; +validator.groupNew#9843a14d workchain:int shard:long vertical_seqno:int last_key_block_seqno:int catchain_seqno:int config_hash:int256 members:(vector validator.groupMember) = validator.Group; ---functions--- @@ -547,45 +547,45 @@ validator.groupNew workchain:int shard:long vertical_seqno:int last_key_block_se ---types--- -id.config.local id:PrivateKey = id.config.Local; -dht.config.local id:adnl.id.short = dht.config.Local; -dht.config.random.local cnt:int = dht.config.Local; -liteserver.config.local id:PrivateKey port:int = liteserver.config.Local; -liteserver.config.random.local port:int = liteserver.config.Local; -validator.config.local id:adnl.id.short = validator.config.Local; -validator.config.random.local addr_list:adnl.addressList = validator.config.Local; -control.config.local priv:PrivateKey pub:int256 port:int = control.config.Local; -config.local local_ids:(vector id.config.local) dht:(vector dht.config.Local) validators:(vector validator.config.Local) liteservers:(vector liteserver.config.Local) control:(vector control.config.local) = config.Local; - -dht.config.global static_nodes:dht.nodes k:int a:int = dht.config.Global; -dht.config.global_v2 static_nodes:dht.nodes k:int a:int network_id:int = dht.config.Global; -adnl.config.global static_nodes:adnl.nodes = adnl.config.Global; -catchain.config.global tag:int256 nodes:(vector PublicKey) = catchain.config.Global; -dummyworkchain0.config.global zero_state_hash:int256 = dummyworkchain0.config.Global; -validator.config.global zero_state:tonNode.blockIdExt init_block:tonNode.blockIdExt hardforks:(vector tonNode.blockIdExt) = validator.config.Global; -config.global adnl:adnl.config.global dht:dht.config.Global validator:validator.config.global = config.Global; - -liteserver.desc id:PublicKey ip:int port:int = liteserver.Desc; -liteclient.config.global liteservers:(vector liteserver.desc) validator:validator.config.global = liteclient.config.Global; - -engine.adnl id:int256 category:int = engine.Adnl; -engine.addr ip:int port:int categories:(vector int) priority_categories:(vector int) = engine.Addr; -engine.addrProxy in_ip:int in_port:int out_ip:int out_port:int +id.config.local#92a9c78e id:PrivateKey = id.config.Local; +dht.config.local#76204a6f id:adnl.id.short = dht.config.Local; +dht.config.random.local#9beb2577 cnt:int = dht.config.Local; +liteserver.config.local#4673eb8f id:PrivateKey port:int = liteserver.config.Local; +liteserver.config.random.local#7cc9453b port:int = liteserver.config.Local; +validator.config.local#664bff68 id:adnl.id.short = validator.config.Local; +validator.config.random.local#59839462 addr_list:adnl.addressList = validator.config.Local; +control.config.local#751deced priv:PrivateKey pub:int256 port:int = control.config.Local; +config.local#789e915c local_ids:(vector id.config.local) dht:(vector dht.config.Local) validators:(vector validator.config.Local) liteservers:(vector liteserver.config.Local) control:(vector control.config.local) = config.Local; + +dht.config.global#84ceca07 static_nodes:dht.nodes k:int a:int = dht.config.Global; +dht.config.global_v2#69638427 static_nodes:dht.nodes k:int a:int network_id:int = dht.config.Global; +adnl.config.global#be6f80d0 static_nodes:adnl.nodes = adnl.config.Global; +catchain.config.global#68c7b651 tag:int256 nodes:(vector PublicKey) = catchain.config.Global; +dummyworkchain0.config.global#da616ed3 zero_state_hash:int256 = dummyworkchain0.config.Global; +validator.config.global#867dff6a zero_state:tonNode.blockIdExt init_block:tonNode.blockIdExt hardforks:(vector tonNode.blockIdExt) = validator.config.Global; +config.global#f066e9b0 adnl:adnl.config.global dht:dht.config.Global validator:validator.config.global = config.Global; + +liteserver.desc#c449a474 id:PublicKey ip:int port:int = liteserver.Desc; +liteclient.config.global#088dc0f8 liteservers:(vector liteserver.desc) validator:validator.config.global = liteclient.config.Global; + +engine.adnl#62d76550 id:int256 category:int = engine.Adnl; +engine.addr#ef311fec ip:int port:int categories:(vector int) priority_categories:(vector int) = engine.Addr; +engine.addrProxy#8adf6549 in_ip:int in_port:int out_ip:int out_port:int proxy_type:adnl.Proxy categories:(vector int) priority_categories:(vector int) = engine.Addr; -engine.dht id:int256 = engine.Dht; -engine.validatorTempKey key:int256 expire_at:int = engine.ValidatorTempKey; -engine.validatorAdnlAddress id:int256 expire_at:int = engine.ValidatorAdnlAddress; -engine.validator id:int256 temp_keys:(vector engine.validatorTempKey) adnl_addrs:(vector engine.validatorAdnlAddress) election_date:int expire_at:int = engine.Validator; -engine.liteServer id:int256 port:int = engine.LiteServer; -engine.controlProcess id:int256 permissions:int = engine.ControlProcess; -engine.controlInterface id:int256 port:int allowed:(vector engine.controlProcess) = engine.ControlInterface; -engine.gc ids:(vector int256) = engine.Gc; - -engine.dht.config dht:(vector engine.dht) gc:engine.gc = engine.dht.Config; -engine.validator.fullNodeMaster port:int adnl:int256 = engine.validator.FullNodeMaster; -engine.validator.fullNodeSlave ip:int port:int adnl:PublicKey = engine.validator.FullNodeSlave; -engine.validator.fullNodeConfig ext_messages_broadcast_disabled:Bool = engine.validator.FullNodeConfig; -engine.validator.config out_port:int addrs:(vector engine.Addr) adnl:(vector engine.adnl) +engine.dht#5de9f2fa id:int256 = engine.Dht; +engine.validatorTempKey#5e4ad6de key:int256 expire_at:int = engine.ValidatorTempKey; +engine.validatorAdnlAddress#d34545be id:int256 expire_at:int = engine.ValidatorAdnlAddress; +engine.validator#885fea29 id:int256 temp_keys:(vector engine.validatorTempKey) adnl_addrs:(vector engine.validatorAdnlAddress) election_date:int expire_at:int = engine.Validator; +engine.liteServer#bb708efe id:int256 port:int = engine.LiteServer; +engine.controlProcess#6ac04817 id:int256 permissions:int = engine.ControlProcess; +engine.controlInterface#31816fab id:int256 port:int allowed:(vector engine.controlProcess) = engine.ControlInterface; +engine.gc#bfbd987b ids:(vector int256) = engine.Gc; + +engine.dht.config#f43d80c6 dht:(vector engine.dht) gc:engine.gc = engine.dht.Config; +engine.validator.fullNodeMaster#8485f668 port:int adnl:int256 = engine.validator.FullNodeMaster; +engine.validator.fullNodeSlave#88256b79 ip:int port:int adnl:PublicKey = engine.validator.FullNodeSlave; +engine.validator.fullNodeConfig#29feb114 ext_messages_broadcast_disabled:Bool = engine.validator.FullNodeConfig; +engine.validator.config#e81f1ed0 out_port:int addrs:(vector engine.Addr) adnl:(vector engine.adnl) dht:(vector engine.dht) validators:(vector engine.validator) fullnode:int256 fullnodeslaves:(vector engine.validator.fullNodeSlave) fullnodemasters:(vector engine.validator.fullNodeMaster) @@ -596,157 +596,157 @@ engine.validator.config out_port:int addrs:(vector engine.Addr) adnl:(vector eng ---functions--- ---types--- -engine.adnlProxy.port in_port:int out_port:int dst_ip:int dst_port:int proxy_type:adnl.Proxy = engine.adnlProxy.Port; +engine.adnlProxy.port#f901754a in_port:int out_port:int dst_ip:int dst_port:int proxy_type:adnl.Proxy = engine.adnlProxy.Port; -engine.adnlProxy.config ports:(vector engine.adnlProxy.port) = engine.adnlProxy.Config; +engine.adnlProxy.config#6e264101 ports:(vector engine.adnlProxy.port) = engine.adnlProxy.Config; ---functions--- ---types--- -adnl.pong value:long = adnl.Pong; +adnl.pong#20747c0e value:long = adnl.Pong; ---functions--- -adnl.ping value:long = adnl.Pong; +adnl.ping#1faaa1bf value:long = adnl.Pong; ---types--- -engine.validator.keyHash key_hash:int256 = engine.validator.KeyHash; -engine.validator.signature signature:bytes = engine.validator.Signature; +engine.validator.keyHash#c2c6a54e key_hash:int256 = engine.validator.KeyHash; +engine.validator.signature#fb6c4328 signature:bytes = engine.validator.Signature; -engine.validator.oneStat key:string value:string = engine.validator.OneStat; -engine.validator.stats stats:(vector engine.validator.oneStat) = engine.validator.Stats; +engine.validator.oneStat#a4983aed key:string value:string = engine.validator.OneStat; +engine.validator.stats#5d49d36f stats:(vector engine.validator.oneStat) = engine.validator.Stats; -engine.validator.controlQueryError code:int message:string = engine.validator.ControlQueryError; +engine.validator.controlQueryError#77269a1f code:int message:string = engine.validator.ControlQueryError; -engine.validator.time time:int = engine.validator.Time; -engine.validator.success = engine.validator.Success; +engine.validator.time#df5fa1fe time:int = engine.validator.Time; +engine.validator.success#b3e4a68b = engine.validator.Success; -engine.validator.jsonConfig data:string = engine.validator.JsonConfig; +engine.validator.jsonConfig#132d920b data:string = engine.validator.JsonConfig; -engine.validator.electionBid election_date:int perm_key:int256 adnl_addr:int256 to_send_payload:bytes = engine.validator.ElectionBid; -engine.validator.proposalVote perm_key:int256 to_send:bytes = engine.validator.ProposalVote; +engine.validator.electionBid#23b27a3d election_date:int perm_key:int256 adnl_addr:int256 to_send_payload:bytes = engine.validator.ElectionBid; +engine.validator.proposalVote#7f6626ed perm_key:int256 to_send:bytes = engine.validator.ProposalVote; -engine.validator.dhtServerStatus id:int256 status:int = engine.validator.DhtServerStatus; -engine.validator.dhtServersStatus servers:(vector engine.validator.dhtServerStatus) = engine.validator.DhtServersStatus; +engine.validator.dhtServerStatus#b11de75e id:int256 status:int = engine.validator.DhtServerStatus; +engine.validator.dhtServersStatus#2b38fd28 servers:(vector engine.validator.dhtServerStatus) = engine.validator.DhtServersStatus; -engine.validator.overlayStatsNode adnl_id:int256 ip_addr:string bdcst_errors:int fec_bdcst_errors:int last_in_query:int last_out_query:int t_out_bytes:int t_in_bytes:int t_out_pckts:int t_in_pckts:int = engine.validator.OverlayStatsNode; +engine.validator.overlayStatsNode#f97220d9 adnl_id:int256 ip_addr:string bdcst_errors:int fec_bdcst_errors:int last_in_query:int last_out_query:int t_out_bytes:int t_in_bytes:int t_out_pckts:int t_in_pckts:int = engine.validator.OverlayStatsNode; -engine.validator.overlayStats overlay_id:int256 overlay_id_full:PublicKey adnl_id:int256 scope:string nodes:(vector engine.validator.overlayStatsNode) stats:(vector engine.validator.oneStat) = engine.validator.OverlayStats; -engine.validator.overlaysStats overlays:(vector engine.validator.overlayStats) = engine.validator.OverlaysStats; +engine.validator.overlayStats#dfa0faf9 overlay_id:int256 overlay_id_full:PublicKey adnl_id:int256 scope:string nodes:(vector engine.validator.overlayStatsNode) stats:(vector engine.validator.oneStat) = engine.validator.OverlayStats; +engine.validator.overlaysStats#9c09267f overlays:(vector engine.validator.overlayStats) = engine.validator.OverlaysStats; -engine.validator.onePerfTimerStat time:int min:double avg:double max:double = engine.validator.OnePerfTimerStat; -engine.validator.perfTimerStatsByName name:string stats:(vector engine.validator.OnePerfTimerStat) = engine.validator.PerfTimerStatsByName; -engine.validator.perfTimerStats stats:(vector engine.validator.PerfTimerStatsByName) = engine.validator.PerfTimerStats; +engine.validator.onePerfTimerStat#9123a368 time:int min:double avg:double max:double = engine.validator.OnePerfTimerStat; +engine.validator.perfTimerStatsByName#82bacde4 name:string stats:(vector engine.validator.OnePerfTimerStat) = engine.validator.PerfTimerStatsByName; +engine.validator.perfTimerStats#5fd0551b stats:(vector engine.validator.PerfTimerStatsByName) = engine.validator.PerfTimerStats; -engine.validator.shardOutQueueSize size:int = engine.validator.ShardOutQueueSize; +engine.validator.shardOutQueueSize#0fdba45d size:int = engine.validator.ShardOutQueueSize; ---functions--- -engine.validator.getTime = engine.validator.Time; -engine.validator.importPrivateKey key:PrivateKey = engine.validator.KeyHash; -engine.validator.exportPrivateKey key_hash:int256 = PrivateKey; -engine.validator.exportPublicKey key_hash:int256 = PublicKey; -engine.validator.generateKeyPair = engine.validator.KeyHash; -engine.validator.addAdnlId key_hash:int256 category:int = engine.validator.Success; -engine.validator.addDhtId key_hash:int256 = engine.validator.Success; -engine.validator.addValidatorPermanentKey key_hash:int256 election_date:int ttl:int = engine.validator.Success; -engine.validator.addValidatorTempKey permanent_key_hash:int256 key_hash:int256 ttl:int = engine.validator.Success; -engine.validator.addValidatorAdnlAddress permanent_key_hash:int256 key_hash:int256 ttl:int = engine.validator.Success; -engine.validator.changeFullNodeAdnlAddress adnl_id:int256 = engine.validator.Success; -engine.validator.addLiteserver key_hash:int256 port:int = engine.validator.Success; -engine.validator.addControlInterface key_hash:int256 port:int = engine.validator.Success; -engine.validator.addControlProcess key_hash:int256 port:int peer_key:int256 permissions:int = engine.validator.Success; +engine.validator.getTime#e140bed1 = engine.validator.Time; +engine.validator.importPrivateKey#15807ac7 key:PrivateKey = engine.validator.KeyHash; +engine.validator.exportPrivateKey#cc728048 key_hash:int256 = PrivateKey; +engine.validator.exportPublicKey#6234a8b9 key_hash:int256 = PublicKey; +engine.validator.generateKeyPair#eb25607b = engine.validator.KeyHash; +engine.validator.addAdnlId#ed8554ab key_hash:int256 category:int = engine.validator.Success; +engine.validator.addDhtId#f50c1e8c key_hash:int256 = engine.validator.Success; +engine.validator.addValidatorPermanentKey#92150578 key_hash:int256 election_date:int ttl:int = engine.validator.Success; +engine.validator.addValidatorTempKey#8d336f32 permanent_key_hash:int256 key_hash:int256 ttl:int = engine.validator.Success; +engine.validator.addValidatorAdnlAddress#dacba682 permanent_key_hash:int256 key_hash:int256 ttl:int = engine.validator.Success; +engine.validator.changeFullNodeAdnlAddress#bec6c985 adnl_id:int256 = engine.validator.Success; +engine.validator.addLiteserver#f08a0f47 key_hash:int256 port:int = engine.validator.Success; +engine.validator.addControlInterface#348bf3fc key_hash:int256 port:int = engine.validator.Success; +engine.validator.addControlProcess#5ae0f750 key_hash:int256 port:int peer_key:int256 permissions:int = engine.validator.Success; -engine.validator.delAdnlId key_hash:int256 = engine.validator.Success; -engine.validator.delDhtId key_hash:int256 = engine.validator.Success; -engine.validator.delValidatorPermanentKey key_hash:int256 = engine.validator.Success; -engine.validator.delValidatorTempKey permanent_key_hash:int256 key_hash:int256 = engine.validator.Success; -engine.validator.delValidatorAdnlAddress permanent_key_hash:int256 key_hash:int256 = engine.validator.Success; +engine.validator.delAdnlId#293a74f2 key_hash:int256 = engine.validator.Success; +engine.validator.delDhtId#84fd5b3e key_hash:int256 = engine.validator.Success; +engine.validator.delValidatorPermanentKey#174ac8fa key_hash:int256 = engine.validator.Success; +engine.validator.delValidatorTempKey#a0e6e0d1 permanent_key_hash:int256 key_hash:int256 = engine.validator.Success; +engine.validator.delValidatorAdnlAddress#f708435a permanent_key_hash:int256 key_hash:int256 = engine.validator.Success; -engine.validator.addListeningPort ip:int port:int categories:(vector int) priority_categories:(vector int) = engine.validator.Success; -engine.validator.addProxy in_ip:int in_port:int out_ip:int out_port:int proxy:adnl.Proxy categories:(vector int) priority_categories:(vector int) = engine.validator.Success; -engine.validator.delListeningPort ip:int port:int categories:(vector int) priority_categories:(vector int) = engine.validator.Success; -engine.validator.delProxy out_ip:int out_port:int categories:(vector int) priority_categories:(vector int) = engine.validator.Success; +engine.validator.addListeningPort#ea6b89b5 ip:int port:int categories:(vector int) priority_categories:(vector int) = engine.validator.Success; +engine.validator.addProxy#f6fd33f5 in_ip:int in_port:int out_ip:int out_port:int proxy:adnl.Proxy categories:(vector int) priority_categories:(vector int) = engine.validator.Success; +engine.validator.delListeningPort#315bb84f ip:int port:int categories:(vector int) priority_categories:(vector int) = engine.validator.Success; +engine.validator.delProxy#7578cc7d out_ip:int out_port:int categories:(vector int) priority_categories:(vector int) = engine.validator.Success; -engine.validator.sign key_hash:int256 data:bytes = engine.validator.Signature; +engine.validator.sign#1aea1a28 key_hash:int256 data:bytes = engine.validator.Signature; -engine.validator.getStats = engine.validator.Stats; -engine.validator.getConfig = engine.validator.JsonConfig; +engine.validator.getStats#52d5c311 = engine.validator.Stats; +engine.validator.getConfig#59ad2225 = engine.validator.JsonConfig; -engine.validator.setVerbosity verbosity:int = engine.validator.Success; +engine.validator.setVerbosity#b1825e82 verbosity:int = engine.validator.Success; -engine.validator.createElectionBid election_date:int election_addr:string wallet:string = engine.validator.ElectionBid; -engine.validator.createProposalVote vote:bytes = engine.validator.ProposalVote; -engine.validator.createComplaintVote election_id:int vote:bytes = engine.validator.ProposalVote; +engine.validator.createElectionBid#e51db145 election_date:int election_addr:string wallet:string = engine.validator.ElectionBid; +engine.validator.createProposalVote#1db3216d vote:bytes = engine.validator.ProposalVote; +engine.validator.createComplaintVote#b083ff2a election_id:int vote:bytes = engine.validator.ProposalVote; -engine.validator.checkDhtServers id:int256 = engine.validator.DhtServersStatus; +engine.validator.checkDhtServers#d1e420ca id:int256 = engine.validator.DhtServersStatus; -engine.validator.getOverlaysStats = engine.validator.OverlaysStats; +engine.validator.getOverlaysStats#fcd8acce = engine.validator.OverlaysStats; -engine.validator.controlQuery data:bytes = Object; +engine.validator.controlQuery#a476bdc0 data:bytes = Object; -engine.validator.importCertificate overlay_id:int256 local_id:adnl.id.short signed_key:engine.validator.KeyHash cert:overlay.Certificate = engine.validator.Success; -engine.validator.signShardOverlayCertificate workchain:int shard:long signed_key:engine.validator.KeyHash expire_at:int max_size:int = overlay.Certificate; -engine.validator.importShardOverlayCertificate workchain:int shard:long signed_key:engine.validator.KeyHash cert:overlay.Certificate = engine.validator.Success; +engine.validator.importCertificate#3c82c0cf overlay_id:int256 local_id:adnl.id.short signed_key:engine.validator.KeyHash cert:overlay.Certificate = engine.validator.Success; +engine.validator.signShardOverlayCertificate#5c973c56 workchain:int shard:long signed_key:engine.validator.KeyHash expire_at:int max_size:int = overlay.Certificate; +engine.validator.importShardOverlayCertificate#1ac30a58 workchain:int shard:long signed_key:engine.validator.KeyHash cert:overlay.Certificate = engine.validator.Success; -engine.validator.getPerfTimerStats name:string = engine.validator.PerfTimerStats; -engine.validator.getShardOutQueueSize flags:# block_id:tonNode.blockId dest_wc:flags.0?int dest_shard:flags.0?long = engine.validator.ShardOutQueueSize; -engine.validator.setExtMessagesBroadcastDisabled disabled:Bool = engine.validator.Success; +engine.validator.getPerfTimerStats#ea42f8ef name:string = engine.validator.PerfTimerStats; +engine.validator.getShardOutQueueSize#5ba15c50 flags:# block_id:tonNode.blockId dest_wc:flags.0?int dest_shard:flags.0?long = engine.validator.ShardOutQueueSize; +engine.validator.setExtMessagesBroadcastDisabled#8a9109da disabled:Bool = engine.validator.Success; ---types--- -storage.pong = storage.Pong; -storage.ok = Ok; +storage.pong#6cf5c6a5 = storage.Pong; +storage.ok#c32b1c05 = Ok; -storage.state will_upload:Bool want_download:Bool = storage.State; -storage.piece proof:bytes data:bytes = storage.Piece; -storage.torrentInfo data:bytes = storage.TorrentInfo; +storage.state#3313708a will_upload:Bool want_download:Bool = storage.State; +storage.piece#80b4fa0d proof:bytes data:bytes = storage.Piece; +storage.torrentInfo#14ced0ee data:bytes = storage.TorrentInfo; -storage.updateInit have_pieces:bytes have_pieces_offset:int state:storage.State = storage.Update; -storage.updateHavePieces piece_id:(vector int) = storage.Update; -storage.updateState state:storage.State = storage.Update; +storage.updateInit#ce33e0b6 have_pieces:bytes have_pieces_offset:int state:storage.State = storage.Update; +storage.updateHavePieces#3bf82049 piece_id:(vector int) = storage.Update; +storage.updateState#05b034b5 state:storage.State = storage.Update; ---functions--- -storage.ping session_id:long = storage.Pong; -storage.addUpdate session_id:long seqno:int update:storage.Update = Ok; +storage.ping#44f3f211 session_id:long = storage.Pong; +storage.addUpdate#4d3135d2 session_id:long seqno:int update:storage.Update = Ok; -storage.getTorrentInfo = storage.TorrentInfo; -storage.getPiece piece_id:int = storage.Piece; +storage.getTorrentInfo#91c4962a = storage.TorrentInfo; +storage.getPiece#807ae660 piece_id:int = storage.Piece; ---types--- -http.header name:string value:string = http.Header; -http.payloadPart data:bytes trailer:(vector http.header) last:Bool = http.PayloadPart; -http.response http_version:string status_code:int reason:string headers:(vector http.header) no_payload:Bool = http.Response; -http.proxy.capabilities capabilities:long = http.proxy.Capabilities; +http.header#8e9be511 name:string value:string = http.Header; +http.payloadPart#295ad764 data:bytes trailer:(vector http.header) last:Bool = http.PayloadPart; +http.response#ca48a74a http_version:string status_code:int reason:string headers:(vector http.header) no_payload:Bool = http.Response; +http.proxy.capabilities#31926c11 capabilities:long = http.proxy.Capabilities; ---functions--- -http.request id:int256 method:string url:string http_version:string headers:(vector http.header) = http.Response; -http.getNextPayloadPart id:int256 seqno:int max_chunk_size:int = http.PayloadPart; -http.proxy.getCapabilities capabilities:long = http.proxy.Capabilities; +http.request#61b191e1 id:int256 method:string url:string http_version:string headers:(vector http.header) = http.Response; +http.getNextPayloadPart#90745d0c id:int256 seqno:int max_chunk_size:int = http.PayloadPart; +http.proxy.getCapabilities#db721f89 capabilities:long = http.proxy.Capabilities; ---types--- -http.server.dnsEntry domain:string addr:adnl.id.short = http.server.DnsEntry; -http.server.host domains:(vector string) ip:int port:int adnl_id:adnl.id.short = http.server.Host; +http.server.dnsEntry#d8726096 domain:string addr:adnl.id.short = http.server.DnsEntry; +http.server.host#c57de2a7 domains:(vector string) ip:int port:int adnl_id:adnl.id.short = http.server.Host; -http.server.config dhs:(vector http.server.dnsEntry) local_hosts:(vector http.server.host) = http.server.Config; +http.server.config#3a1477fc dhs:(vector http.server.dnsEntry) local_hosts:(vector http.server.host) = http.server.Config; ---functions--- ---types--- -validatorSession.statsProducer id:int256 block_status:int block_timestamp:long = validatorSession.StatsProducer; +validatorSession.statsProducer#8dfba60d id:int256 block_status:int block_timestamp:long = validatorSession.StatsProducer; -validatorSession.statsRound timestamp:long producers:(vector validatorSession.statsProducer) = validatorSession.StatsRound; +validatorSession.statsRound#a32fdf66 timestamp:long producers:(vector validatorSession.statsProducer) = validatorSession.StatsRound; -validatorSession.stats id:tonNode.blockId timestamp:long self:int256 creator:int256 total_validators:int total_weight:long +validatorSession.stats#684d5a8f id:tonNode.blockId timestamp:long self:int256 creator:int256 total_validators:int total_weight:long signatures:int signatures_weight:long approve_signatures:int approve_signatures_weight:long first_round:int rounds:(vector validatorSession.statsRound) = validatorSession.Stats; @@ -754,47 +754,47 @@ validatorSession.stats id:tonNode.blockId timestamp:long self:int256 creator:int ---types--- -storage.db.key.torrentList = storage.db.key.TorrentList; -storage.db.key.torrent hash:int256 = storage.db.key.TorrentShort; -storage.db.key.torrentMeta hash:int256 = storage.db.key.TorrentMeta; -storage.db.key.priorities hash:int256 = storage.db.key.Priorities; -storage.db.key.piecesInDb hash:int256 = storage.db.key.PiecesInDb; -storage.db.key.pieceInDb hash:int256 idx:long = storage.db.key.PieceInDb; -storage.db.key.config = storage.db.key.Config; +storage.db.key.torrentList#cbc6e856 = storage.db.key.TorrentList; +storage.db.key.torrent#b988122f hash:int256 = storage.db.key.TorrentShort; +storage.db.key.torrentMeta#62239d66 hash:int256 = storage.db.key.TorrentMeta; +storage.db.key.priorities#b5f1ca6d hash:int256 = storage.db.key.Priorities; +storage.db.key.piecesInDb#dbe8c9e3 hash:int256 = storage.db.key.PiecesInDb; +storage.db.key.pieceInDb#c40aedcd hash:int256 idx:long = storage.db.key.PieceInDb; +storage.db.key.config#dd983407 = storage.db.key.Config; -storage.db.config flags:# download_speed_limit:double upload_speed_limit:double = storage.db.Config; -storage.db.torrentList torrents:(vector int256) = storage.db.TorrentList; -storage.db.torrent root_dir:string active_download:Bool active_upload:Bool = storage.db.TorrentShort; -storage.db.torrentV2 flags:# root_dir:string added_at:int active_download:Bool active_upload:Bool = storage.db.TorrentShort; -storage.db.priorities actions:(vector storage.PriorityAction) = storage.db.Priorities; -storage.db.piecesInDb pieces:(vector long) = storage.db.PiecesInDb; +storage.db.config#5d904d28 flags:# download_speed_limit:double upload_speed_limit:double = storage.db.Config; +storage.db.torrentList#59efe381 torrents:(vector int256) = storage.db.TorrentList; +storage.db.torrent#ad2d379a root_dir:string active_download:Bool active_upload:Bool = storage.db.TorrentShort; +storage.db.torrentV2#89ecf89b flags:# root_dir:string added_at:int active_download:Bool active_upload:Bool = storage.db.TorrentShort; +storage.db.priorities#3929eb4e actions:(vector storage.PriorityAction) = storage.db.Priorities; +storage.db.piecesInDb#0619b43c pieces:(vector long) = storage.db.PiecesInDb; -storage.priorityAction.all priority:int = storage.PriorityAction; -storage.priorityAction.idx idx:long priority:int = storage.PriorityAction; -storage.priorityAction.name name:string priority:int = storage.PriorityAction; +storage.priorityAction.all#fe238940 priority:int = storage.PriorityAction; +storage.priorityAction.idx#950fb728 idx:long priority:int = storage.PriorityAction; +storage.priorityAction.name#0124d1c0 name:string priority:int = storage.PriorityAction; -storage.daemon.config server_key:PublicKey cli_key_hash:int256 provider_address:string adnl_id:PublicKey dht_id:PublicKey = storage.daemon.provider.Config; +storage.daemon.config#f0c694b7 server_key:PublicKey cli_key_hash:int256 provider_address:string adnl_id:PublicKey dht_id:PublicKey = storage.daemon.provider.Config; -storage.daemon.provider.params accept_new_contracts:Bool rate_per_mb_day:string max_span:int +storage.daemon.provider.params#ac736e07 accept_new_contracts:Bool rate_per_mb_day:string max_span:int minimal_file_size:long maximal_file_size:long = storage.daemon.provider.Params; -storage.provider.db.key.state = storage.provider.db.key.State; -storage.provider.db.key.contractList = storage.provider.db.key.ContractList; -storage.provider.db.key.storageContract wc:int addr:int256 = storage.provider.db.key.StorageContract; -storage.provider.db.key.microchunkTree wc:int addr:int256 = storage.provider.db.key.MicrochunkTree; -storage.provider.db.key.providerConfig = storage.provider.db.key.ProviderConfig; +storage.provider.db.key.state#f420cfa2 = storage.provider.db.key.State; +storage.provider.db.key.contractList#5592cc46 = storage.provider.db.key.ContractList; +storage.provider.db.key.storageContract#cc5ecb1e wc:int addr:int256 = storage.provider.db.key.StorageContract; +storage.provider.db.key.microchunkTree#2998ea79 wc:int addr:int256 = storage.provider.db.key.MicrochunkTree; +storage.provider.db.key.providerConfig#e7e80932 = storage.provider.db.key.ProviderConfig; -storage.provider.db.state last_processed_lt:long = storage.provider.db.State; -storage.provider.db.contractAddress wc:int addr:int256 = storage.db.ContractAddress; -storage.provider.db.contractList contracts:(vector storage.provider.db.contractAddress) = storage.db.ContractList; -storage.provider.db.storageContract torrent_hash:int256 microchunk_hash:int256 created_time:int state:int file_size:long +storage.provider.db.state#01a955f3 last_processed_lt:long = storage.provider.db.State; +storage.provider.db.contractAddress#e258ecfd wc:int addr:int256 = storage.db.ContractAddress; +storage.provider.db.contractList#da38e717 contracts:(vector storage.provider.db.contractAddress) = storage.db.ContractList; +storage.provider.db.storageContract#eeb3a732 torrent_hash:int256 microchunk_hash:int256 created_time:int state:int file_size:long rate:string max_span:int = storage.provider.db.StorageContract; -storage.provider.db.microchunkTree data:bytes = storage.provider.db.MicrochunkTree; +storage.provider.db.microchunkTree#c2ca0f42 data:bytes = storage.provider.db.MicrochunkTree; -storage.daemon.queryError message:string = storage.daemon.QueryError; -storage.daemon.success = storage.daemon.Success; +storage.daemon.queryError#04bdbac4 message:string = storage.daemon.QueryError; +storage.daemon.success#b3aeef1c = storage.daemon.Success; -storage.daemon.torrent +storage.daemon.torrent#15b30b67 hash:int256 flags:# // 0 - info ready // 1 - header ready @@ -807,83 +807,83 @@ storage.daemon.torrent fatal_error:flags.2?string = storage.daemon.Torrent; -storage.daemon.fileInfo +storage.daemon.fileInfo#7177dbfe name:string size:long flags:# priority:int downloaded_size:long = storage.daemon.FileInfo; -storage.daemon.torrentFull torrent:storage.daemon.torrent files:(vector storage.daemon.fileInfo) = storage.daemon.TorrentFull; -storage.daemon.torrentList torrents:(vector storage.daemon.torrent) = storage.daemon.TorrentList; -storage.daemon.torrentMeta meta:bytes = storage.daemon.TorrentMeta; +storage.daemon.torrentFull#5fa88c27 torrent:storage.daemon.torrent files:(vector storage.daemon.fileInfo) = storage.daemon.TorrentFull; +storage.daemon.torrentList#4f1c1842 torrents:(vector storage.daemon.torrent) = storage.daemon.TorrentList; +storage.daemon.torrentMeta#d4be1ee8 meta:bytes = storage.daemon.TorrentMeta; -storage.daemon.filePiecesInfo name:string range_l:long range_r:long = storage.daemon.FilePiecesInfo; -storage.daemon.torrentPiecesInfo +storage.daemon.filePiecesInfo#03553543 name:string range_l:long range_r:long = storage.daemon.FilePiecesInfo; +storage.daemon.torrentPiecesInfo#091cab91 flags:# // 0 - with file ranges total_pieces:long piece_size:int range_l:long range_r:long piece_ready_bitset:bytes files:flags.0?(vector storage.daemon.filePiecesInfo) // files[0] is header = storage.daemon.TorrentPiecesInfo; -storage.daemon.newContractParams rate:string max_span:int = storage.daemon.NewContractParams; -storage.daemon.newContractParamsAuto provider_address:string = storage.daemon.NewContractParams; -storage.daemon.newContractMessage body:bytes rate:string max_span:int = storage.daemon.NewContractMessage; +storage.daemon.newContractParams#555b0884 rate:string max_span:int = storage.daemon.NewContractParams; +storage.daemon.newContractParamsAuto#af7767ad provider_address:string = storage.daemon.NewContractParams; +storage.daemon.newContractMessage#f589adf6 body:bytes rate:string max_span:int = storage.daemon.NewContractMessage; -storage.daemon.peer adnl_id:int256 ip_str:string download_speed:double upload_speed:double ready_parts:long = storage.daemon.Peer; -storage.daemon.peerList peers:(vector storage.daemon.peer) download_speed:double upload_speed:double total_parts:long = storage.daemon.PeerList; +storage.daemon.peer#bd345034 adnl_id:int256 ip_str:string download_speed:double upload_speed:double ready_parts:long = storage.daemon.Peer; +storage.daemon.peerList#a5de3815 peers:(vector storage.daemon.peer) download_speed:double upload_speed:double total_parts:long = storage.daemon.PeerList; -storage.daemon.prioritySet = storage.daemon.SetPriorityStatus; -storage.daemon.priorityPending = storage.daemon.SetPriorityStatus; +storage.daemon.prioritySet#b6e89fd7 = storage.daemon.SetPriorityStatus; +storage.daemon.priorityPending#840961a6 = storage.daemon.SetPriorityStatus; -storage.daemon.keyHash key_hash:int256 = storage.daemon.KeyHash; +storage.daemon.keyHash#85b562dc key_hash:int256 = storage.daemon.KeyHash; -storage.daemon.speedLimits download:double upload:double = storage.daemon.SpeedLimits; +storage.daemon.speedLimits#feb0e919 download:double upload:double = storage.daemon.SpeedLimits; -storage.daemon.providerConfig max_contracts:int max_total_size:long = storage.daemon.ProviderConfig; -storage.daemon.contractInfo address:string state:int torrent:int256 created_time:int file_size:long downloaded_size:long +storage.daemon.providerConfig#7dad0a94 max_contracts:int max_total_size:long = storage.daemon.ProviderConfig; +storage.daemon.contractInfo#d7744f09 address:string state:int torrent:int256 created_time:int file_size:long downloaded_size:long rate:string max_span:int client_balance:string contract_balance:string = storage.daemon.ContractInfo; -storage.daemon.providerInfo address:string balance:string config:storage.daemon.providerConfig +storage.daemon.providerInfo#e76b012d address:string balance:string config:storage.daemon.providerConfig contracts_count:int contracts_total_size:long contracts:(vector storage.daemon.contractInfo) = storage.daemon.ProviderInfo; -storage.daemon.providerAddress address:string = storage.daemon.ProviderAddress; +storage.daemon.providerAddress#885eb912 address:string = storage.daemon.ProviderAddress; ---functions--- -storage.daemon.setVerbosity verbosity:int = storage.daemon.Success; -storage.daemon.createTorrent path:string description:string allow_upload:Bool copy_inside:Bool flags:# = storage.daemon.TorrentFull; -storage.daemon.addByHash hash:int256 root_dir:string start_download:Bool allow_upload:Bool priorities:(vector storage.PriorityAction) flags:# = storage.daemon.TorrentFull; -storage.daemon.addByMeta meta:bytes root_dir:string start_download:Bool allow_upload:Bool priorities:(vector storage.PriorityAction) flags:# = storage.daemon.TorrentFull; -storage.daemon.setActiveDownload hash:int256 active:Bool = storage.daemon.Success; -storage.daemon.setActiveUpload hash:int256 active:Bool = storage.daemon.Success; - -storage.daemon.getTorrents flags:# = storage.daemon.TorrentList; -storage.daemon.getTorrentFull hash:int256 flags:# = storage.daemon.TorrentFull; -storage.daemon.getTorrentMeta hash:int256 flags:# = storage.daemon.TorrentMeta; -storage.daemon.getNewContractMessage hash:int256 query_id:long params:storage.daemon.NewContractParams = storage.daemon.NewContractMessage; -storage.daemon.getTorrentPeers hash:int256 flags:# = storage.daemon.PeerList; -storage.daemon.getTorrentPiecesInfo hash:int256 +storage.daemon.setVerbosity#26bcbb98 verbosity:int = storage.daemon.Success; +storage.daemon.createTorrent#9d99bc2b path:string description:string allow_upload:Bool copy_inside:Bool flags:# = storage.daemon.TorrentFull; +storage.daemon.addByHash#b535689e hash:int256 root_dir:string start_download:Bool allow_upload:Bool priorities:(vector storage.PriorityAction) flags:# = storage.daemon.TorrentFull; +storage.daemon.addByMeta#b659165e meta:bytes root_dir:string start_download:Bool allow_upload:Bool priorities:(vector storage.PriorityAction) flags:# = storage.daemon.TorrentFull; +storage.daemon.setActiveDownload#747a5d9d hash:int256 active:Bool = storage.daemon.Success; +storage.daemon.setActiveUpload#3baeb69b hash:int256 active:Bool = storage.daemon.Success; + +storage.daemon.getTorrents#2335fb5a flags:# = storage.daemon.TorrentList; +storage.daemon.getTorrentFull#5c9a4066 hash:int256 flags:# = storage.daemon.TorrentFull; +storage.daemon.getTorrentMeta#735d2df1 hash:int256 flags:# = storage.daemon.TorrentMeta; +storage.daemon.getNewContractMessage#e9abff94 hash:int256 query_id:long params:storage.daemon.NewContractParams = storage.daemon.NewContractMessage; +storage.daemon.getTorrentPeers#11b7d099 hash:int256 flags:# = storage.daemon.PeerList; +storage.daemon.getTorrentPiecesInfo#f3acb726 hash:int256 flags:# // 0 - with file ranges offset:long max_pieces:long = storage.daemon.TorrentPiecesInfo; -storage.daemon.setFilePriorityAll hash:int256 priority:int = storage.daemon.SetPriorityStatus; -storage.daemon.setFilePriorityByIdx hash:int256 idx:long priority:int = storage.daemon.SetPriorityStatus; -storage.daemon.setFilePriorityByName hash:int256 name:string priority:int = storage.daemon.SetPriorityStatus; +storage.daemon.setFilePriorityAll#8d7aa279 hash:int256 priority:int = storage.daemon.SetPriorityStatus; +storage.daemon.setFilePriorityByIdx#4397d69b hash:int256 idx:long priority:int = storage.daemon.SetPriorityStatus; +storage.daemon.setFilePriorityByName#de2d22c9 hash:int256 name:string priority:int = storage.daemon.SetPriorityStatus; -storage.daemon.removeTorrent hash:int256 remove_files:Bool = storage.daemon.Success; -storage.daemon.loadFrom hash:int256 meta:bytes path:string flags:# = storage.daemon.Torrent; +storage.daemon.removeTorrent#0a7a545b hash:int256 remove_files:Bool = storage.daemon.Success; +storage.daemon.loadFrom#c81fde27 hash:int256 meta:bytes path:string flags:# = storage.daemon.Torrent; -storage.daemon.getSpeedLimits flags:# = storage.daemon.SpeedLimits; -storage.daemon.setSpeedLimits flags:# download:flags.0?double upload:flags.1?double = storage.daemon.Success; +storage.daemon.getSpeedLimits#9aae907f flags:# = storage.daemon.SpeedLimits; +storage.daemon.setSpeedLimits#2ba1e7ea flags:# download:flags.0?double upload:flags.1?double = storage.daemon.Success; -storage.daemon.importPrivateKey key:PrivateKey = storage.daemon.KeyHash; -storage.daemon.initProvider account_address:string = storage.daemon.Success; -storage.daemon.deployProvider = storage.daemon.ProviderAddress; -storage.daemon.getProviderParams address:string = storage.daemon.provider.Params; -storage.daemon.setProviderParams params:storage.daemon.provider.params = storage.daemon.Success; -storage.daemon.getProviderInfo with_balances:Bool with_contracts:Bool = storage.daemon.ProviderInfo; -storage.daemon.setProviderConfig config:storage.daemon.providerConfig = storage.daemon.Success; -storage.daemon.withdraw contract:string = storage.daemon.Success; -storage.daemon.sendCoins address:string amount:string message:string = storage.daemon.Success; -storage.daemon.closeStorageContract address:string = storage.daemon.Success; -storage.daemon.removeStorageProvider = storage.daemon.Success; +storage.daemon.importPrivateKey#7fff7bfa key:PrivateKey = storage.daemon.KeyHash; +storage.daemon.initProvider#281f5acc account_address:string = storage.daemon.Success; +storage.daemon.deployProvider#7db1e7e5 = storage.daemon.ProviderAddress; +storage.daemon.getProviderParams#92cd9671 address:string = storage.daemon.provider.Params; +storage.daemon.setProviderParams#604f2d1c params:storage.daemon.provider.params = storage.daemon.Success; +storage.daemon.getProviderInfo#333d79db with_balances:Bool with_contracts:Bool = storage.daemon.ProviderInfo; +storage.daemon.setProviderConfig#8dacb78c config:storage.daemon.providerConfig = storage.daemon.Success; +storage.daemon.withdraw#fdbcbff1 contract:string = storage.daemon.Success; +storage.daemon.sendCoins#01457726 address:string amount:string message:string = storage.daemon.Success; +storage.daemon.closeStorageContract#f677ab10 address:string = storage.daemon.Success; +storage.daemon.removeStorageProvider#42db9f96 = storage.daemon.Success; diff --git a/tl/generate/scheme/tonlib_api.tl b/tl/generate/scheme/tonlib_api.tl index a6172376a..d6bfeef2f 100644 --- a/tl/generate/scheme/tonlib_api.tl +++ b/tl/generate/scheme/tonlib_api.tl @@ -4,275 +4,276 @@ string ? = String; int32 = Int32; int53 = Int53; int64 = Int64; -int256 8*[ int32 ] = Int256; +int256#9da18c3c 8*[ int32 ] = Int256; bytes = Bytes; -secureString = SecureString; -secureBytes = SecureBytes; +secureString#8ea8c283 = SecureString; +secureBytes#bad71dc7 = SecureBytes; object ? = Object; function ? = Function; -boolFalse = Bool; -boolTrue = Bool; +boolFalse#bc799737 = Bool; +boolTrue#997275b5 = Bool; -vector {t:Type} # [ t ] = Vector t; +vector#1cb5c415 {t:Type} # [ t ] = Vector t; -error code:int32 message:string = Error; -ok = Ok; +error#9bdd8f1a code:int32 message:string = Error; +ok#d4edbe69 = Ok; -keyStoreTypeDirectory directory:string = KeyStoreType; -keyStoreTypeInMemory = KeyStoreType; +keyStoreTypeDirectory#e969122a directory:string = KeyStoreType; +keyStoreTypeInMemory#826c09c7 = KeyStoreType; -config config:string blockchain_name:string use_callbacks_for_network:Bool ignore_cache:Bool = Config; +config#a44e0238 config:string blockchain_name:string use_callbacks_for_network:Bool ignore_cache:Bool = Config; -options config:config keystore_type:KeyStoreType = Options; -options.configInfo default_wallet_id:int64 default_rwallet_init_public_key:string = options.ConfigInfo; -options.info config_info:options.configInfo = options.Info; +options#8d4c29f9 config:config keystore_type:KeyStoreType = Options; +options.configInfo#07b75f16 default_wallet_id:int64 default_rwallet_init_public_key:string = options.ConfigInfo; +options.info#fc251c80 config_info:options.configInfo = options.Info; -key public_key:string secret:secureBytes = Key; -inputKeyRegular key:key local_password:secureBytes = InputKey; -inputKeyFake = InputKey; -exportedKey word_list:vector = ExportedKey; -exportedPemKey pem:secureString = ExportedPemKey; -exportedEncryptedKey data:secureBytes = ExportedEncryptedKey; -exportedUnencryptedKey data:secureBytes = ExportedUnencryptedKey; +key#8a1493d5 public_key:string secret:secureBytes = Key; +inputKeyRegular#dee5469e key:key local_password:secureBytes = InputKey; +inputKeyFake#bffb39be = InputKey; +exportedKey#a99e39d7 word_list:vector = ExportedKey; +exportedPemKey#54f700bd pem:secureString = ExportedPemKey; +exportedEncryptedKey#78a9fe54 data:secureBytes = ExportedEncryptedKey; +exportedUnencryptedKey#2b839ae8 data:secureBytes = ExportedUnencryptedKey; -bip39Hints words:vector = Bip39Hints; +bip39Hints#3c559c00 words:vector = Bip39Hints; -adnlAddress adnl_address:string = AdnlAddress; +adnlAddress#0431950c adnl_address:string = AdnlAddress; -accountAddress account_address:string = AccountAddress; +accountAddress#2d09bdab account_address:string = AccountAddress; -unpackedAccountAddress workchain_id:int32 bounceable:Bool testnet:Bool addr:bytes = UnpackedAccountAddress; +unpackedAccountAddress#70d41436 workchain_id:int32 bounceable:Bool testnet:Bool addr:bytes = UnpackedAccountAddress; -internal.transactionId lt:int64 hash:bytes = internal.TransactionId; +internal.transactionId#c5050322 lt:int64 hash:bytes = internal.TransactionId; -ton.blockId workchain:int32 shard:int64 seqno:int32 = internal.BlockId; -ton.blockIdExt workchain:int32 shard:int64 seqno:int32 root_hash:bytes file_hash:bytes = ton.BlockIdExt; +ton.blockId#b9587fa2 workchain:int32 shard:int64 seqno:int32 = internal.BlockId; +ton.blockIdExt#7910fc9a workchain:int32 shard:int64 seqno:int32 root_hash:bytes file_hash:bytes = ton.BlockIdExt; -raw.fullAccountState balance:int64 code:bytes data:bytes last_transaction_id:internal.transactionId block_id:ton.blockIdExt frozen_hash:bytes sync_utime:int53 = raw.FullAccountState; -raw.message source:accountAddress destination:accountAddress value:int64 fwd_fee:int64 ihr_fee:int64 created_lt:int64 body_hash:bytes msg_data:msg.Data = raw.Message; -raw.transaction address:accountAddress utime:int53 data:bytes transaction_id:internal.transactionId fee:int64 storage_fee:int64 other_fee:int64 in_msg:raw.message out_msgs:vector = raw.Transaction; -raw.transactions transactions:vector previous_transaction_id:internal.transactionId = raw.Transactions; +raw.fullAccountState#a8a7cb8f balance:int64 code:bytes data:bytes last_transaction_id:internal.transactionId block_id:ton.blockIdExt frozen_hash:bytes sync_utime:int53 = raw.FullAccountState; +raw.message#518b724f source:accountAddress destination:accountAddress value:int64 fwd_fee:int64 ihr_fee:int64 created_lt:int64 body_hash:bytes msg_data:msg.Data = raw.Message; +raw.transaction#8e689f5a address:accountAddress utime:int53 data:bytes transaction_id:internal.transactionId fee:int64 storage_fee:int64 other_fee:int64 in_msg:raw.message out_msgs:vector = raw.Transaction; +raw.transactions#84fae8ed transactions:vector previous_transaction_id:internal.transactionId = raw.Transactions; -raw.extMessageInfo hash:bytes = raw.ExtMessageInfo; +raw.extMessageInfo#34197fae hash:bytes = raw.ExtMessageInfo; -pchan.config alice_public_key:string alice_address:accountAddress bob_public_key:string bob_address:accountAddress init_timeout:int32 close_timeout:int32 channel_id:int64 = pchan.Config; +pchan.config#8486f436 alice_public_key:string alice_address:accountAddress bob_public_key:string bob_address:accountAddress init_timeout:int32 close_timeout:int32 channel_id:int64 = pchan.Config; -raw.initialAccountState code:bytes data:bytes = InitialAccountState; -wallet.v3.initialAccountState public_key:string wallet_id:int64 = InitialAccountState; -wallet.v4.initialAccountState public_key:string wallet_id:int64 = InitialAccountState; -wallet.highload.v1.initialAccountState public_key:string wallet_id:int64 = InitialAccountState; -wallet.highload.v2.initialAccountState public_key:string wallet_id:int64 = InitialAccountState; +raw.initialAccountState#ebdb5c47 code:bytes data:bytes = InitialAccountState; +wallet.v3.initialAccountState#f8f65540 public_key:string wallet_id:int64 = InitialAccountState; +wallet.v4.initialAccountState#d0e9c2c5 public_key:string wallet_id:int64 = InitialAccountState; +wallet.highload.v1.initialAccountState#ec749e46 public_key:string wallet_id:int64 = InitialAccountState; +wallet.highload.v2.initialAccountState#75347929 public_key:string wallet_id:int64 = InitialAccountState; -rwallet.limit seconds:int32 value:int64 = rwallet.Limit; -rwallet.config start_at:int53 limits:vector = rwallet.Config; -rwallet.initialAccountState init_public_key:string public_key:string wallet_id:int64 = InitialAccountState; +rwallet.limit#48def67e seconds:int32 value:int64 = rwallet.Limit; +rwallet.config#fae7849a start_at:int53 limits:vector = rwallet.Config; +rwallet.initialAccountState#45b90c14 init_public_key:string public_key:string wallet_id:int64 = InitialAccountState; -dns.initialAccountState public_key:string wallet_id:int64 = InitialAccountState; -pchan.initialAccountState config:pchan.config = InitialAccountState; +dns.initialAccountState#6dcba4bf public_key:string wallet_id:int64 = InitialAccountState; +pchan.initialAccountState#b23e1d44 config:pchan.config = InitialAccountState; -raw.accountState code:bytes data:bytes frozen_hash:bytes = AccountState; -wallet.v3.accountState wallet_id:int64 seqno:int32 = AccountState; -wallet.v4.accountState wallet_id:int64 seqno:int32 = AccountState; -wallet.highload.v1.accountState wallet_id:int64 seqno:int32 = AccountState; -wallet.highload.v2.accountState wallet_id:int64 = AccountState; -dns.accountState wallet_id:int64 = AccountState; -rwallet.accountState wallet_id:int64 seqno:int32 unlocked_balance:int64 config:rwallet.config = AccountState; -pchan.stateInit signed_A:Bool signed_B:Bool min_A:int64 min_B:int64 expire_at:int53 A:int64 B:int64 = pchan.State; -pchan.stateClose signed_A:Bool signed_B:Bool min_A:int64 min_B:int64 expire_at:int53 A:int64 B:int64 = pchan.State; -pchan.statePayout A:int64 B:int64 = pchan.State; +raw.accountState#e04b963a code:bytes data:bytes frozen_hash:bytes = AccountState; +wallet.v3.accountState#9f7aa84a wallet_id:int64 seqno:int32 = AccountState; +wallet.v4.accountState#d42e9776 wallet_id:int64 seqno:int32 = AccountState; +wallet.highload.v1.accountState#6057e4dc wallet_id:int64 seqno:int32 = AccountState; +wallet.highload.v2.accountState#947d5d4f wallet_id:int64 = AccountState; +dns.accountState#66fad86a wallet_id:int64 = AccountState; +rwallet.accountState#d3eb83d8 wallet_id:int64 seqno:int32 unlocked_balance:int64 config:rwallet.config = AccountState; -pchan.accountState config:pchan.config state:pchan.State description:string = AccountState; -uninited.accountState frozen_hash:bytes = AccountState; +pchan.stateInit#b92a0cf8 signed_A:Bool signed_B:Bool min_A:int64 min_B:int64 expire_at:int53 A:int64 B:int64 = pchan.State; +pchan.stateClose#34e201f3 signed_A:Bool signed_B:Bool min_A:int64 min_B:int64 expire_at:int53 A:int64 B:int64 = pchan.State; +pchan.statePayout#279e1447 A:int64 B:int64 = pchan.State; -fullAccountState address:accountAddress balance:int64 last_transaction_id:internal.transactionId block_id:ton.blockIdExt sync_utime:int53 account_state:AccountState revision:int32 = FullAccountState; +pchan.accountState#60226f78 config:pchan.config state:pchan.State description:string = AccountState; +uninited.accountState#5abd9708 frozen_hash:bytes = AccountState; -accountRevisionList revisions:vector = AccountRevisionList; -accountList accounts:vector = AccountList; +fullAccountState#56d23a49 address:accountAddress balance:int64 last_transaction_id:internal.transactionId block_id:ton.blockIdExt sync_utime:int53 account_state:AccountState revision:int32 = FullAccountState; -syncStateDone = SyncState; -syncStateInProgress from_seqno:int32 to_seqno:int32 current_seqno:int32 = SyncState; +accountRevisionList#1f6c64ca revisions:vector = AccountRevisionList; +accountList#783eb255 accounts:vector = AccountList; + +syncStateDone#53f33909 = SyncState; +syncStateInProgress#066bc4c7 from_seqno:int32 to_seqno:int32 current_seqno:int32 = SyncState; // // MSG // -msg.dataRaw body:bytes init_state:bytes = msg.Data; -msg.dataText text:bytes = msg.Data; -msg.dataDecryptedText text:bytes = msg.Data; -msg.dataEncryptedText text:bytes = msg.Data; +msg.dataRaw#8d065d76 body:bytes init_state:bytes = msg.Data; +msg.dataText#eba43290 text:bytes = msg.Data; +msg.dataDecryptedText#b32960b9 text:bytes = msg.Data; +msg.dataEncryptedText#ee520bda text:bytes = msg.Data; -msg.dataEncrypted source:accountAddress data:msg.Data = msg.DataEncrypted; -msg.dataDecrypted proof:bytes data:msg.Data = msg.DataDecrypted; +msg.dataEncrypted#21a13d51 source:accountAddress data:msg.Data = msg.DataEncrypted; +msg.dataDecrypted#0ba960e9 proof:bytes data:msg.Data = msg.DataDecrypted; -msg.dataEncryptedArray elements:vector = msg.DataEncryptedArray; -msg.dataDecryptedArray elements:vector = msg.DataDecryptedArray; +msg.dataEncryptedArray#244759b2 elements:vector = msg.DataEncryptedArray; +msg.dataDecryptedArray#e35c4709 elements:vector = msg.DataDecryptedArray; -msg.message destination:accountAddress public_key:string amount:int64 data:msg.Data send_mode:int32 = msg.Message; +msg.message#3027b074 destination:accountAddress public_key:string amount:int64 data:msg.Data send_mode:int32 = msg.Message; // // DNS // -dns.entryDataUnknown bytes:bytes = dns.EntryData; -dns.entryDataText text:string = dns.EntryData; -dns.entryDataNextResolver resolver:AccountAddress = dns.EntryData; -dns.entryDataSmcAddress smc_address:AccountAddress = dns.EntryData; -dns.entryDataAdnlAddress adnl_address:AdnlAddress = dns.EntryData; -dns.entryDataStorageAddress bag_id:int256 = dns.EntryData; +dns.entryDataUnknown#b35ad380 bytes:bytes = dns.EntryData; +dns.entryDataText#d0c3a112 text:string = dns.EntryData; +dns.entryDataNextResolver#13b13dc8 resolver:AccountAddress = dns.EntryData; +dns.entryDataSmcAddress#97197a42 smc_address:AccountAddress = dns.EntryData; +dns.entryDataAdnlAddress#bd98ba10 adnl_address:AdnlAddress = dns.EntryData; +dns.entryDataStorageAddress#97a0541c bag_id:int256 = dns.EntryData; -dns.entry name:string category:int256 entry:dns.EntryData = dns.Entry; +dns.entry#1e1b47a6 name:string category:int256 entry:dns.EntryData = dns.Entry; -dns.actionDeleteAll = dns.Action; +dns.actionDeleteAll#3f9e909e = dns.Action; // use category = 0 to delete all entries -dns.actionDelete name:string category:int256 = dns.Action; -dns.actionSet entry:dns.entry = dns.Action; +dns.actionDelete#44077f51 name:string category:int256 = dns.Action; +dns.actionSet#ae0bb1c3 entry:dns.entry = dns.Action; -dns.resolved entries:vector = dns.Resolved; +dns.resolved#7c970596 entries:vector = dns.Resolved; // // Payment channel // -pchan.promise signature:bytes promise_A:int64 promise_B:int64 channel_id:int64 = pchan.Promise; +pchan.promise#a20e945d signature:bytes promise_A:int64 promise_B:int64 channel_id:int64 = pchan.Promise; -pchan.actionInit inc_A:int64 inc_B:int64 min_A:int64 min_B:int64 = pchan.Action; -pchan.actionClose extra_A:int64 extra_B:int64 promise:pchan.promise = pchan.Action; -pchan.actionTimeout = pchan.Action; +pchan.actionInit#1a2bf68a inc_A:int64 inc_B:int64 min_A:int64 min_B:int64 = pchan.Action; +pchan.actionClose#639c4b16 extra_A:int64 extra_B:int64 promise:pchan.promise = pchan.Action; +pchan.actionTimeout#771e80f3 = pchan.Action; // // Restricted wallet initialization // -rwallet.actionInit config:rwallet.config = rwallet.Action; +rwallet.actionInit#2533bd6b config:rwallet.config = rwallet.Action; // // Actions // -actionNoop = Action; -actionMsg messages:vector allow_send_to_uninited:Bool = Action; -actionDns actions:vector = Action; -actionPchan action:pchan.Action = Action; -actionRwallet action:rwallet.actionInit = Action; +actionNoop#43b3ac9b = Action; +actionMsg#0eb67750 messages:vector allow_send_to_uninited:Bool = Action; +actionDns#47273021 actions:vector = Action; +actionPchan#a72dc5e1 action:pchan.Action = Action; +actionRwallet#f90237c5 action:rwallet.actionInit = Action; //actionMultisig actions:vector = Action; -fees in_fwd_fee:int53 storage_fee:int53 gas_fee:int53 fwd_fee:int53 = Fees; -query.fees source_fees:fees destination_fees:vector = query.Fees; +fees#63e9e6bc in_fwd_fee:int53 storage_fee:int53 gas_fee:int53 fwd_fee:int53 = Fees; +query.fees#603d17be source_fees:fees destination_fees:vector = query.Fees; // query.emulationResult exit_code:int32 fees:fees = query.EmulationResult; -query.info id:int53 valid_until:int53 body_hash:bytes body:bytes init_state:bytes = query.Info; +query.info#5689dc70 id:int53 valid_until:int53 body_hash:bytes body:bytes init_state:bytes = query.Info; -tvm.slice bytes:bytes = tvm.Slice; -tvm.cell bytes:bytes = tvm.Cell; -tvm.numberDecimal number:string = tvm.Number; -tvm.tuple elements:vector = tvm.Tuple; -tvm.list elements:vector = tvm.List; +tvm.slice#20068ae7 bytes:bytes = tvm.Slice; +tvm.cell#e75ba3a1 bytes:bytes = tvm.Cell; +tvm.numberDecimal#45e296b3 number:string = tvm.Number; +tvm.tuple#aeb3ba63 elements:vector = tvm.Tuple; +tvm.list#4bb78d08 elements:vector = tvm.List; -tvm.stackEntrySlice slice:tvm.slice = tvm.StackEntry; -tvm.stackEntryCell cell:tvm.cell = tvm.StackEntry; -tvm.stackEntryNumber number:tvm.Number = tvm.StackEntry; -tvm.stackEntryTuple tuple:tvm.Tuple = tvm.StackEntry; -tvm.stackEntryList list:tvm.List = tvm.StackEntry; -tvm.stackEntryUnsupported = tvm.StackEntry; +tvm.stackEntrySlice#532d6b25 slice:tvm.slice = tvm.StackEntry; +tvm.stackEntryCell#4db16f20 cell:tvm.cell = tvm.StackEntry; +tvm.stackEntryNumber#50fb3dbe number:tvm.Number = tvm.StackEntry; +tvm.stackEntryTuple#f69e63dc tuple:tvm.Tuple = tvm.StackEntry; +tvm.stackEntryList#b9442d8b list:tvm.List = tvm.StackEntry; +tvm.stackEntryUnsupported#169541f2 = tvm.StackEntry; -smc.info id:int53 = smc.Info; +smc.info#439b963c id:int53 = smc.Info; -smc.methodIdNumber number:int32 = smc.MethodId; -smc.methodIdName name:string = smc.MethodId; +smc.methodIdNumber#a423b9fc number:int32 = smc.MethodId; +smc.methodIdName#f127ff94 name:string = smc.MethodId; -smc.runResult gas_used:int53 stack:vector exit_code:int32 = smc.RunResult; +smc.runResult#5444f3f3 gas_used:int53 stack:vector exit_code:int32 = smc.RunResult; -smc.libraryEntry hash:int256 data:bytes = smc.LibraryEntry; -smc.libraryResult result:(vector smc.libraryEntry) = smc.LibraryResult; +smc.libraryEntry#a3d5d20c hash:int256 data:bytes = smc.LibraryEntry; +smc.libraryResult#0c27bbfe result:vector = smc.LibraryResult; -smc.libraryQueryExt.one hash:int256 = smc.LibraryQueryExt; -smc.libraryQueryExt.scanBoc boc:bytes max_libs:int32 = smc.LibraryQueryExt; -smc.libraryResultExt dict_boc:bytes libs_ok:(vector int256) libs_not_found:(vector int256) = smc.LibraryResultExt; +smc.libraryQueryExt.one#6424eae3 hash:int256 = smc.LibraryQueryExt; +smc.libraryQueryExt.scanBoc#df54a4e5 boc:bytes max_libs:int32 = smc.LibraryQueryExt; +smc.libraryResultExt#b4deed72 dict_boc:bytes libs_ok:(vector int256) libs_not_found:(vector int256) = smc.LibraryResultExt; -updateSendLiteServerQuery id:int64 data:bytes = Update; -updateSyncState sync_state:SyncState = Update; +updateSendLiteServerQuery#a34e95dc id:int64 data:bytes = Update; +updateSyncState#47c823de sync_state:SyncState = Update; //@class LogStream @description Describes a stream to which tonlib internal log is written //@description The log is written to stderr or an OS specific log -logStreamDefault = LogStream; +logStreamDefault#52e296bc = LogStream; //@description The log is written to a file @path Path to the file to where the internal tonlib log will be written @max_file_size Maximum size of the file to where the internal tonlib log is written before the file will be auto-rotated -logStreamFile path:string max_file_size:int53 = LogStream; +logStreamFile#8ff02a56 path:string max_file_size:int53 = LogStream; //@description The log is written nowhere -logStreamEmpty = LogStream; +logStreamEmpty#e233f1cc = LogStream; //@description Contains a tonlib internal log verbosity level @verbosity_level Log verbosity level -logVerbosityLevel verbosity_level:int32 = LogVerbosityLevel; +logVerbosityLevel#676443ea verbosity_level:int32 = LogVerbosityLevel; //@description Contains a list of available tonlib internal log tags @tags List of log tags -logTags tags:vector = LogTags; +logTags#a056b3d7 tags:vector = LogTags; -data bytes:secureBytes = Data; +data#e747a971 bytes:secureBytes = Data; -liteServer.info now:int53 version:int32 capabilities:int64 = liteServer.Info; +liteServer.info#b57bfe73 now:int53 version:int32 capabilities:int64 = liteServer.Info; -blocks.masterchainInfo last:ton.BlockIdExt state_root_hash:bytes init:ton.BlockIdExt = blocks.MasterchainInfo; -blocks.shards shards:vector = blocks.Shards; -blocks.accountTransactionId account:bytes lt:int64 = blocks.AccountTransactionId; -blocks.shortTxId mode:# account:mode.0?bytes lt:mode.1?int64 hash:mode.2?bytes = liteServer.TransactionId; -blocks.transactions id:ton.blockIdExt req_count:int32 incomplete:Bool transactions:vector = blocks.Transactions; -blocks.transactionsExt id:ton.blockIdExt req_count:int32 incomplete:Bool transactions:vector = blocks.TransactionsExt; -blocks.header id:ton.blockIdExt global_id:int32 version:int32 flags:# after_merge:Bool after_split:Bool before_split:Bool want_merge:Bool want_split:Bool validator_list_hash_short:int32 catchain_seqno:int32 min_ref_mc_seqno:int32 is_key_block:Bool prev_key_block_seqno:int32 start_lt:int64 end_lt:int64 gen_utime:int53 vert_seqno:# prev_blocks:vector = blocks.Header; +blocks.masterchainInfo#31ca434b last:ton.BlockIdExt state_root_hash:bytes init:ton.BlockIdExt = blocks.MasterchainInfo; +blocks.shards#7b59a94a shards:vector = blocks.Shards; +blocks.accountTransactionId#cbf72284 account:bytes lt:int64 = blocks.AccountTransactionId; +blocks.shortTxId#1d15ef45 mode:# account:mode.0?bytes lt:mode.1?int64 hash:mode.2?bytes = liteServer.TransactionId; +blocks.transactions#8d6bf094 id:ton.blockIdExt req_count:int32 incomplete:Bool transactions:vector = blocks.Transactions; +blocks.transactionsExt#4fc94e1d id:ton.blockIdExt req_count:int32 incomplete:Bool transactions:vector = blocks.TransactionsExt; +blocks.header#58298662 id:ton.blockIdExt global_id:int32 version:int32 flags:# after_merge:Bool after_split:Bool before_split:Bool want_merge:Bool want_split:Bool validator_list_hash_short:int32 catchain_seqno:int32 min_ref_mc_seqno:int32 is_key_block:Bool prev_key_block_seqno:int32 start_lt:int64 end_lt:int64 gen_utime:int53 vert_seqno:# prev_blocks:vector = blocks.Header; //blocks.shortData header:blocks.Header transactions:blocks.Header = blocks.BlockData; -blocks.signature node_id_short:int256 signature:bytes = blocks.Signature; -blocks.blockSignatures id:ton.blockIdExt signatures:(vector blocks.signature) = blocks.BlockSignatures; -blocks.shardBlockLink id:ton.blockIdExt proof:bytes = blocks.ShardBlockLink; -blocks.blockLinkBack to_key_block:Bool from:ton.blockIdExt to:ton.blockIdExt dest_proof:bytes proof:bytes state_proof:bytes = blocks.BlockLinkBack; -blocks.shardBlockProof from:ton.blockIdExt mc_id:ton.blockIdExt links:(vector blocks.shardBlockLink) mc_proof:(vector blocks.blockLinkBack) = blocks.ShardBlockProof; +blocks.signature#b71288c1 node_id_short:int256 signature:bytes = blocks.Signature; +blocks.blockSignatures#e801db9b id:ton.blockIdExt signatures:(vector blocks.signature) = blocks.BlockSignatures; +blocks.shardBlockLink#a6e01569 id:ton.blockIdExt proof:bytes = blocks.ShardBlockLink; +blocks.blockLinkBack#418c8035 to_key_block:Bool from:ton.blockIdExt to:ton.blockIdExt dest_proof:bytes proof:bytes state_proof:bytes = blocks.BlockLinkBack; +blocks.shardBlockProof#fbd65f53 from:ton.blockIdExt mc_id:ton.blockIdExt links:(vector blocks.shardBlockLink) mc_proof:(vector blocks.blockLinkBack) = blocks.ShardBlockProof; -configInfo config:tvm.cell = ConfigInfo; +configInfo#290055ff config:tvm.cell = ConfigInfo; ---functions--- -init options:options = options.Info; -close = Ok; - -options.setConfig config:config = options.ConfigInfo; -options.validateConfig config:config = options.ConfigInfo; - -createNewKey local_password:secureBytes mnemonic_password:secureBytes random_extra_seed:secureBytes = Key; -deleteKey key:key = Ok; -deleteAllKeys = Ok; -exportKey input_key:InputKey = ExportedKey; -exportPemKey input_key:InputKey key_password:secureBytes = ExportedPemKey; -exportEncryptedKey input_key:InputKey key_password:secureBytes = ExportedEncryptedKey; -exportUnencryptedKey input_key:InputKey = ExportedUnencryptedKey; -importKey local_password:secureBytes mnemonic_password:secureBytes exported_key:exportedKey = Key; -importPemKey local_password:secureBytes key_password:secureBytes exported_key:exportedPemKey = Key; -importEncryptedKey local_password:secureBytes key_password:secureBytes exported_encrypted_key:exportedEncryptedKey = Key; -importUnencryptedKey local_password:secureBytes exported_unencrypted_key:exportedUnencryptedKey = Key; -changeLocalPassword input_key:InputKey new_local_password:secureBytes = Key; - -encrypt decrypted_data:secureBytes secret:secureBytes = Data; -decrypt encrypted_data:secureBytes secret:secureBytes = Data; -kdf password:secureBytes salt:secureBytes iterations:int32 = Data; - -unpackAccountAddress account_address:string = UnpackedAccountAddress; -packAccountAddress account_address:unpackedAccountAddress = AccountAddress; -getBip39Hints prefix:string = Bip39Hints; +init#c45c22b6 options:options = options.Info; +close#b933e17f = Ok; + +options.setConfig#6f76ebc3 config:config = options.ConfigInfo; +options.validateConfig#eb51ba39 config:config = options.ConfigInfo; + +createNewKey#910d8210 local_password:secureBytes mnemonic_password:secureBytes random_extra_seed:secureBytes = Key; +deleteKey#a1d948cd key:key = Ok; +deleteAllKeys#5fe3fb23 = Ok; +exportKey#9f4cd973 input_key:InputKey = ExportedKey; +exportPemKey#d9a8a3ba input_key:InputKey key_password:secureBytes = ExportedPemKey; +exportEncryptedKey#0d02097f input_key:InputKey key_password:secureBytes = ExportedEncryptedKey; +exportUnencryptedKey#da2bc740 input_key:InputKey = ExportedUnencryptedKey; +importKey#a0296119 local_password:secureBytes mnemonic_password:secureBytes exported_key:exportedKey = Key; +importPemKey#048d8d51 local_password:secureBytes key_password:secureBytes exported_key:exportedPemKey = Key; +importEncryptedKey#2724d3de local_password:secureBytes key_password:secureBytes exported_encrypted_key:exportedEncryptedKey = Key; +importUnencryptedKey#b9635915 local_password:secureBytes exported_unencrypted_key:exportedUnencryptedKey = Key; +changeLocalPassword#e81037bf input_key:InputKey new_local_password:secureBytes = Key; + +encrypt#936f4b1c decrypted_data:secureBytes secret:secureBytes = Data; +decrypt#155685ae encrypted_data:secureBytes secret:secureBytes = Data; +kdf#9c96737d password:secureBytes salt:secureBytes iterations:int32 = Data; + +unpackAccountAddress#d7528049 account_address:string = UnpackedAccountAddress; +packAccountAddress#ad3c39ec account_address:unpackedAccountAddress = AccountAddress; +getBip39Hints#8f5e5dea prefix:string = Bip39Hints; //raw.init initial_account_state:raw.initialAccountState = Ok; -raw.getAccountState account_address:accountAddress = raw.FullAccountState; -raw.getAccountStateByTransaction account_address:accountAddress transaction_id:internal.transactionId = raw.FullAccountState; -raw.getTransactions private_key:InputKey account_address:accountAddress from_transaction_id:internal.transactionId = raw.Transactions; -raw.getTransactionsV2 private_key:InputKey account_address:accountAddress from_transaction_id:internal.transactionId count:# try_decode_messages:Bool = raw.Transactions; -raw.sendMessage body:bytes = Ok; -raw.sendMessageReturnHash body:bytes = raw.ExtMessageInfo; -raw.createAndSendMessage destination:accountAddress initial_account_state:bytes data:bytes = Ok; -raw.createQuery destination:accountAddress init_code:bytes init_data:bytes body:bytes = query.Info; +raw.getAccountState#b0daa932 account_address:accountAddress = raw.FullAccountState; +raw.getAccountStateByTransaction#2a91d0a3 account_address:accountAddress transaction_id:internal.transactionId = raw.FullAccountState; +raw.getTransactions#3d5ea31d private_key:InputKey account_address:accountAddress from_transaction_id:internal.transactionId = raw.Transactions; +raw.getTransactionsV2#de3f7ca6 private_key:InputKey account_address:accountAddress from_transaction_id:internal.transactionId count:# try_decode_messages:Bool = raw.Transactions; +raw.sendMessage#955780e0 body:bytes = Ok; +raw.sendMessageReturnHash#b6c76719 body:bytes = raw.ExtMessageInfo; +raw.createAndSendMessage#d1f8c9a5 destination:accountAddress initial_account_state:bytes data:bytes = Ok; +raw.createQuery#8d0c8aab destination:accountAddress init_code:bytes init_data:bytes body:bytes = query.Info; -sync = ton.BlockIdExt; +sync#902edc92 = ton.BlockIdExt; // revision = 0 -- use default revision // revision = x (x > 0) -- use revision x @@ -280,90 +281,90 @@ sync = ton.BlockIdExt; // // workchain_id = -1 or 0. -1 for masterchain, 0 for basechain // NB: use wallet_id = default_wallet_id + workchain_id -getAccountAddress initial_account_state:InitialAccountState revision:int32 workchain_id:int32 = AccountAddress; -guessAccountRevision initial_account_state:InitialAccountState workchain_id:int32 = AccountRevisionList; +getAccountAddress#1e8ba5c8 initial_account_state:InitialAccountState revision:int32 workchain_id:int32 = AccountAddress; +guessAccountRevision#6eb892a2 initial_account_state:InitialAccountState workchain_id:int32 = AccountRevisionList; -guessAccount public_key:string rwallet_init_public_key:string = AccountRevisionList; +guessAccount#986d6c60 public_key:string rwallet_init_public_key:string = AccountRevisionList; -getAccountState account_address:accountAddress = FullAccountState; -getAccountStateByTransaction account_address:accountAddress transaction_id:internal.transactionId = FullAccountState; -getShardAccountCell account_address:accountAddress = tvm.Cell; -getShardAccountCellByTransaction account_address:accountAddress transaction_id:internal.transactionId = tvm.Cell; -createQuery private_key:InputKey address:accountAddress timeout:int32 action:Action initial_account_state:InitialAccountState = query.Info; +getAccountState#81daf446 account_address:accountAddress = FullAccountState; +getAccountStateByTransaction#2d1c0fce account_address:accountAddress transaction_id:internal.transactionId = FullAccountState; +getShardAccountCell#989e941b account_address:accountAddress = tvm.Cell; +getShardAccountCellByTransaction#1841e3c1 account_address:accountAddress transaction_id:internal.transactionId = tvm.Cell; +createQuery#f18b20c5 private_key:InputKey address:accountAddress timeout:int32 action:Action initial_account_state:InitialAccountState = query.Info; -getConfigParam mode:# param:# = ConfigInfo; -getConfigAll mode:# = ConfigInfo; +getConfigParam#f20702f3 mode:# param:# = ConfigInfo; +getConfigAll#1ce13850 mode:# = ConfigInfo; -msg.decrypt input_key:InputKey data:msg.dataEncryptedArray = msg.DataDecryptedArray; -msg.decryptWithProof proof:bytes data:msg.dataEncrypted = msg.Data; +msg.decrypt#0d53cf09 input_key:InputKey data:msg.dataEncryptedArray = msg.DataDecryptedArray; +msg.decryptWithProof#8222c881 proof:bytes data:msg.dataEncrypted = msg.Data; -query.send id:int53 = Ok; -query.forget id:int53 = Ok; -query.estimateFees id:int53 ignore_chksig:Bool = query.Fees; +query.send#37261573 id:int53 = Ok; +query.forget#b7c2925f id:int53 = Ok; +query.estimateFees#c6f54e41 id:int53 ignore_chksig:Bool = query.Fees; // query.emulate id:int53 ignore_chksig:Bool = query.EmulationResult; -query.getInfo id:int53 = query.Info; +query.getInfo#d05b22db id:int53 = query.Info; -smc.load account_address:accountAddress = smc.Info; -smc.loadByTransaction account_address:accountAddress transaction_id:internal.transactionId = smc.Info; -smc.forget id:int53 = Ok; -smc.getCode id:int53 = tvm.Cell; -smc.getData id:int53 = tvm.Cell; -smc.getState id:int53 = tvm.Cell; -smc.runGetMethod id:int53 method:smc.MethodId stack:vector = smc.RunResult; +smc.load#ca25d03f account_address:accountAddress = smc.Info; +smc.loadByTransaction#87a54b31 account_address:accountAddress transaction_id:internal.transactionId = smc.Info; +smc.forget#364d31e6 id:int53 = Ok; +smc.getCode#81e61b98 id:int53 = tvm.Cell; +smc.getData#e6835349 id:int53 = tvm.Cell; +smc.getState#f338a9eb id:int53 = tvm.Cell; +smc.runGetMethod#f0c905aa id:int53 method:smc.MethodId stack:vector = smc.RunResult; -smc.getLibraries library_list:(vector int256) = smc.LibraryResult; -smc.getLibrariesExt list:(vector smc.LibraryQueryExt) = smc.LibraryResultExt; +smc.getLibraries#3089ee15 library_list:(vector int256) = smc.LibraryResult; +smc.getLibrariesExt#37814932 list:(vector smc.LibraryQueryExt) = smc.LibraryResultExt; -dns.resolve account_address:accountAddress name:string category:int256 ttl:int32 = dns.Resolved; +dns.resolve#6ac69536 account_address:accountAddress name:string category:int256 ttl:int32 = dns.Resolved; -pchan.signPromise input_key:InputKey promise:pchan.promise = pchan.Promise; -pchan.validatePromise public_key:bytes promise:pchan.promise = Ok; +pchan.signPromise#6c245f1e input_key:InputKey promise:pchan.promise = pchan.Promise; +pchan.validatePromise#0f64c4e2 public_key:bytes promise:pchan.promise = Ok; -pchan.packPromise promise:pchan.promise = Data; -pchan.unpackPromise data:secureBytes = pchan.Promise; +pchan.packPromise#cd3c0ac1 promise:pchan.promise = Data; +pchan.unpackPromise#b57ce4d3 data:secureBytes = pchan.Promise; -blocks.getMasterchainInfo = blocks.MasterchainInfo; -blocks.getShards id:ton.blockIdExt = blocks.Shards; -blocks.lookupBlock mode:int32 id:ton.blockId lt:int64 utime:int32 = ton.BlockIdExt; -blocks.getTransactions id:ton.blockIdExt mode:# count:# after:blocks.accountTransactionId = blocks.Transactions; -blocks.getTransactionsExt id:ton.blockIdExt mode:# count:# after:blocks.accountTransactionId = blocks.TransactionsExt; -blocks.getBlockHeader id:ton.blockIdExt = blocks.Header; -blocks.getMasterchainBlockSignatures seqno:int32 = blocks.BlockSignatures; -blocks.getShardBlockProof id:ton.blockIdExt mode:# from:mode.0?ton.blockIdExt = blocks.ShardBlockProof; +blocks.getMasterchainInfo#fd49d291 = blocks.MasterchainInfo; +blocks.getShards#7b8c042d id:ton.blockIdExt = blocks.Shards; +blocks.lookupBlock#548c5bb3 mode:int32 id:ton.blockId lt:int64 utime:int32 = ton.BlockIdExt; +blocks.getTransactions#ca95cd31 id:ton.blockIdExt mode:# count:# after:blocks.accountTransactionId = blocks.Transactions; +blocks.getTransactionsExt#a4f004ce id:ton.blockIdExt mode:# count:# after:blocks.accountTransactionId = blocks.TransactionsExt; +blocks.getBlockHeader#72262342 id:ton.blockIdExt = blocks.Header; +blocks.getMasterchainBlockSignatures#606025d4 seqno:int32 = blocks.BlockSignatures; +blocks.getShardBlockProof#19ed9ee7 id:ton.blockIdExt mode:# from:mode.0?ton.blockIdExt = blocks.ShardBlockProof; -onLiteServerQueryResult id:int64 bytes:bytes = Ok; -onLiteServerQueryError id:int64 error:error = Ok; +onLiteServerQueryResult#7a92da5e id:int64 bytes:bytes = Ok; +onLiteServerQueryError#d79f46b3 id:int64 error:error = Ok; -withBlock id:ton.blockIdExt function:Function = Object; +withBlock#d0f762a5 id:ton.blockIdExt function:Function = Object; -runTests dir:string = Ok; +runTests#8669354d dir:string = Ok; -liteServer.getInfo = liteServer.Info; +liteServer.getInfo#558d5bee = liteServer.Info; //@description Sets new log stream for internal logging of tonlib. This is an offline method. Can be called before authorization. Can be called synchronously @log_stream New log stream -setLogStream log_stream:LogStream = Ok; +setLogStream#aeaff791 log_stream:LogStream = Ok; //@description Returns information about currently used log stream for internal logging of tonlib. This is an offline method. Can be called before authorization. Can be called synchronously -getLogStream = LogStream; +getLogStream#45984b5b = LogStream; //@description Sets the verbosity level of the internal logging of tonlib. This is an offline method. Can be called before authorization. Can be called synchronously //@new_verbosity_level New value of the verbosity level for logging. Value 0 corresponds to fatal errors, value 1 corresponds to errors, value 2 corresponds to warnings and debug warnings, value 3 corresponds to informational, value 4 corresponds to debug, value 5 corresponds to verbose debug, value greater than 5 and up to 1023 can be used to enable even more logging -setLogVerbosityLevel new_verbosity_level:int32 = Ok; +setLogVerbosityLevel#edea07d2 new_verbosity_level:int32 = Ok; //@description Returns current verbosity level of the internal logging of tonlib. This is an offline method. Can be called before authorization. Can be called synchronously -getLogVerbosityLevel = LogVerbosityLevel; +getLogVerbosityLevel#23689ae4 = LogVerbosityLevel; //@description Returns list of available tonlib internal log tags, for example, ["actor", "binlog", "connections", "notifications", "proxy"]. This is an offline method. Can be called before authorization. Can be called synchronously -getLogTags = LogTags; +getLogTags#f0d569da = LogTags; //@description Sets the verbosity level for a specified tonlib internal log tag. This is an offline method. Can be called before authorization. Can be called synchronously //@tag Logging tag to change verbosity level @new_verbosity_level New verbosity level; 1-1024 -setLogTagVerbosityLevel tag:string new_verbosity_level:int32 = Ok; +setLogTagVerbosityLevel#8317d696 tag:string new_verbosity_level:int32 = Ok; //@description Returns current verbosity level for a specified tonlib internal log tag. This is an offline method. Can be called before authorization. Can be called synchronously @tag Logging tag to change verbosity level -getLogTagVerbosityLevel tag:string = LogVerbosityLevel; +getLogTagVerbosityLevel#38af2d83 tag:string = LogVerbosityLevel; //@description Adds a message to tonlib internal log. This is an offline method. Can be called before authorization. Can be called synchronously //@verbosity_level Minimum verbosity level needed for the message to be logged, 0-1023 @text Text of a message to log -addLogMessage verbosity_level:int32 text:string = Ok; +addLogMessage#5f36cfec verbosity_level:int32 text:string = Ok;