Crates.io | ckb-std |
lib.rs | ckb-std |
version | 0.15.3 |
source | src |
created_at | 2020-03-25 07:38:49.968822 |
updated_at | 2024-03-25 10:23:56.869945 |
description | This library contains serveral modules help you write CKB contract with Rust |
homepage | |
repository | https://github.com/nervosnetwork/ckb-std |
max_upload_size | |
id | 222581 |
size | 627,017 |
This library contains several modules that help you write CKB contract with Rust.
syscalls
module: defines CKB syscallshigh_level
module: defines high level APIsdynamic_loading
module: dynamic loading primitivesdebug!
macro: a println!
like macro helps debuggingentry!
macro: defines contract entry pointdefault_alloc!
macro: defines global allocator for no-std rustDefault allocator uses a mixed allocation strategy:
User can invoke macro with arguments to customize the heap size. The default heap size arguments are:
(fixed heap size 4KB, dynamic heap size 516KB, dynamic heap min memory block 64B)
Use the macro with arguments to change it:
default_alloc!(4 * 1024, 516 * 1024, 64)
Beware, use difference heap size or memory block size may affect the verification result of the contract, some runtime errors such as out of memory may occur; you should always test the contract after customizing.
Check examples
and tests to learn how to use.
See also ckb-tool which helps you write tests.