Module forest_filecoin::shim::fvm_latest::kernel

source ·

Modules§

  • Import this module (with a glob) if you’re implementing a kernel, especially if you want to use ambassador to delegate the implementation.

Structs§

  • A registry of open blocks (per-kernel). Think “file descriptor” table. At the moment, there’s no way to close/remove a block from this table.
  • Represents an error from a syscall. It can optionally contain a syscall-advised exit code for the kind of error that was raised. We may want to add an optional source error here.

Enums§

  • Codes and hashers supported by FVM. You can use this hash directly inside of your actor, but it will very likely be more performant with the hash syscall

Traits§

  • Actors operations whose scope of action is actors other than the calling actor. The calling actor’s state may be consulted to resolve some.
  • The FVM’s equivalent of anyhow::Context. This is intentionally only implemented on ExecutionError and Result<T, ExecutionError> so anyhow::Context can be imported at the same time.
  • Cryptographic primitives provided by the kernel.
  • Debugging APIs.
  • Eventing APIs.
  • The IPLD subset of the kernel.
  • The “kernel” implements the FVM interface as presented to the actors. It:
  • Accessors to query attributes of the incoming message.
  • Network-related operations.
  • Randomness queries.
  • Actor state access and manipulation. Depends on BlockOps to read and write blocks in the state tree.
  • The actor calling operations.
  • The actor upgrade operations.

Type Aliases§

  • Blocks in the block registry are addressed by an ordinal, starting from 1 (FIRST_ID). The zero value is reserved to mean “no data”, such as when actor invocations receive or return no data.
  • Execution result.