prototvm
v0.1.6
Published
## Installation
Downloads
523
Readme
ProtoTVM
Installation
npm install prototvm
Examples
message non_contract_message(address owner, uint64 id, ref_cell content);
response non_contract_response(address owner, uint64 id, ref_cell content);
custom non_contract_custom(address owner, uint64 id, ref_cell content);
error non_contract_error;
error other_none_contract_error#12ef;
contract one_contract {
storage(uint256 seqno, address owner, dict users, cell nested_config(uint32 version, address admin));
message set_fees_empty(); // redefinition
message set_fees(uint16 fees, address owner, cell additional_values (int36 test, address excesses)); // example
message set_update#a121ba(time expiration, address new_owner, dict new_owners);
response my_resp(address excesses, maybe_cell payload);
custom additional_custom_fields(address owner, uint64 id, ref_cell content);
error test;
error test21;
error test1003;
error wrong_op#ffff;
message[25000000] custom#a121ba(time expiration, address new_owner, dict new_owners, coins amount);
response[105000000] my_resp_2(address excesses, maybe_cell payload);
// --- others ---
// provide_wallet_address#2c76b973 query_id:uint64 owner_address:MsgAddress include_address:Bool = InternalMsgBody;
message provide_wallet_address(address owner_address, bool include_address);
// get_royalty_params#693d3950 query_id:uint64 = InternalMsgBody;
message get_royalty_params();
// report_royalty_params#a8cb00ad query_id:uint64 numerator:uint16 denominator:uint16 destination:MsgAddress = InternalMsgBody;
response report_royalty_params(uint16 numerator, uint16 denominator, address destination);
// get_static_data#2fcb26a2 query_id:uint64 = InternalMsgBody
message get_static_data();
// report_static_data#8b771735 query_id:uint64 index:uint256 collection:MsgAddress = InternalMsgBody;
response report_static_data(uint256 index, address collection);
}
contract other_contract {
message set_fees_empty(); // redefinition
message set_fees(uint16 fees, address owner, cell additional_values (int36 test, address excesses)); // example
message set_update#a121ba(time expiration, address new_owner, dict new_owners);
response my_resp(address excesses, maybe_cell payload);
custom additional_custom_fields(address owner, uint64 id, ref_cell content);
// Field names must be unique across all nested cell levels
custom very_nested_custom(address owner, uint64 id, cell nested_config(int32 test1, address excesses1, cell nested_config(int32 test2, address excesses2)));
error test;
error test21;
error test1003;
error wrong_op#ffff;
message[25000000] custom#a121ba(time expiration, address new_owner, dict new_owners, coins amount);
response[105000000] my_resp_2(address excesses, maybe_cell payload);
// --- others ---
// provide_wallet_address#2c76b973 query_id:uint64 owner_address:MsgAddress include_address:Bool = InternalMsgBody;
message provide_wallet_address(address owner_address, bool include_address);
// get_royalty_params#693d3950 query_id:uint64 = InternalMsgBody;
message get_royalty_params();
// report_royalty_params#a8cb00ad query_id:uint64 numerator:uint16 denominator:uint16 destination:MsgAddress = InternalMsgBody;
response report_royalty_params(uint16 numerator, uint16 denominator, address destination);
// get_static_data#2fcb26a2 query_id:uint64 = InternalMsgBody
message get_static_data();
// report_static_data#8b771735 query_id:uint64 index:uint256 collection:MsgAddress = InternalMsgBody;
response report_static_data(uint256 index, address collection);
}