[][src]Crate holochain_wasmer_guest

Re-exports

pub extern crate holochain_serialized_bytes;

Modules

allocation
result

Macros

holochain_externs
holochain_serial

unidiomatic way to derive default trait implementations of TryFrom in/out of SerializedBytes

host_args

Given a guest allocation pointer and a type that implements TryFrom

host_externs
memory_externs
ret
ret_err
try_result

Structs

SerializedBytes

A Canonical Serialized Bytes representation for data If you have a data structure that needs a canonical byte representation use this Always round-trip through SerializedBytes via. a single TryFrom implementation. This ensures that the internal bytes of SerializedBytes are indeed canonical. The corrolary is that if bytes are NOT wrapped in SerializedBytes we can assume they are NOT canonical. Typically we need a canonical serialization when data is to be handled at the byte level by independently implemented and maintained systems.

UnsafeBytes

UnsafeBytes the only way to implement a custom round trip through bytes for SerializedBytes It is intended to be an internal implementation in TryFrom implementations The assumption is that any code using UnsafeBytes is NOT valid messagepack data This allows us to enforce that all data round-tripping through SerializedBytes is via TryFrom and also allow for custom non-messagepack canonical representations of data types.

Enums

SerializedBytesError
WasmError

Enum of all possible ERROR codes that a Zome API Function could return.

WasmResult

Traits

Deserialize

A data structure that can be deserialized from any data format supported by Serde.

Serialize

A data structure that can be serialized into any data format supported by Serde.

TryFrom

Simple and safe type conversions that may fail in a controlled way under some circumstances. It is the reciprocal of TryInto.

TryInto

An attempted conversion that consumes self, which may or may not be expensive.

Functions

__agent_info
__call
__call_remote
__capability_claims
__capability_grants
__capability_info
__create
__create_link
__debug
__decrypt
__delete
__delete_link
__emit_signal
__encrypt
__get
__get_agent_activity
__get_details
__get_link_details
__get_links
__hash_entry
__property
__query
__random_bytes
__remote_signal
__schedule
__show_env
__sign
__sys_time
__unreachable
__update
__verify_signature
__zome_info
host_call

Given an extern that we expect the host to provide, that takes a GuestPtr and returns a Len:

Type Definitions

GuestPtr

a WasmSize integer that points to a position in wasm linear memory that the host and guest are sharing to communicate across function calls

Len

a WasmSize integer that represents the size of bytes to read/write to memory in direct manipulations

WasmSize

something like usize for wasm wasm has a memory limit of 4GB so offsets and lengths fit in u32

Derive Macros

Deserialize
Serialize
SerializedBytes