Crate soroban_sdk
source · [−]Expand description
Soroban SDK supports writing programs for the Soroban smart contract platform.
Docs
See soroban.stellar.org for documentation.
Examples
use soroban_sdk::{contractimpl, symbol, vec, BytesN, Env, Symbol, Vec};
pub struct HelloContract;
#[contractimpl]
impl HelloContract {
pub fn hello(env: Env, to: Symbol) -> Vec<Symbol> {
vec![&env, symbol!("Hello"), to]
}
}
#[test]
fn test() {
let env = Env::default();
let contract_id = BytesN::from_array(&env, &[0; 32]);
env.register_contract(&contract_id, HelloContract);
let client = HelloContractClient::new(&env, &contract_id);
let words = client.hello(&symbol!("Dev"));
assert_eq!(words, vec![&env, symbol!("Hello"), symbol!("Dev"),]);
}
More examples are available at https://soroban.stellar.org/docs/category/examples.
Modules
Deploy contains types for deploying contracts.
testutils
Utilities intended for use when testing.
Macros
Import a contract from its WASM file.
Structs
Account references a Stellar account and provides access to information about the account, such as its thresholds and signers.
BigInt is an arbitrary sized signed integer.
Bytes is a contiguous growable array type containing u8
s.
BytesN is a contiguous fixed-size array type containing u8
s.
ContractData stores and retrieves data for the currently executing contract.
Error type indicating a failure to convert some type to another; details of the failed conversion will typically be written to the debug log.
Events publishes events for the currently executing contract.
Ledger retrieves information about the current ledger.
Map is a key-value dictionary.
Raw value of the Soroban smart contract platform that types can be converted to and from for storing, or passing between contracts.
Symbol reprents strings up to 10 characters long with a a-zA-Z0-9_
alphabet encoded into a 60-bit space between 10 characters long.
Vec is a contiguous growable array type.
Enums
Traits
Used to do conversions between values in the Soroban environment.
Used to do conversions between values in the Soroban environment.
Used to do conversions between values in the Soroban environment.
Used to do conversions between values in the Soroban environment.
Type Definitions
Attribute Macros
Exports the publicly accessible functions in the implementation.
Generates conversions from the struct/enum from/into a RawVal
.