Crate bolt_lang

Source

Re-exports§

Modules§

Macros§

  • Defines the program’s ID. This should be used at the root of all Anchor based programs.
  • Declare an external program based on its IDL.
  • Logs an event that can be subscribed to by clients. Uses the sol_log_data syscall which results in the following log:
  • Returns with the given error. Use this with a custom error type.
  • Generates an Error::AnchorError that includes file and line information.
  • Print a message to the log.
  • Ensures a condition is true, otherwise returns with the given error. Use this with or without a custom error type.
  • Ensures two NON-PUBKEY values are equal.
  • Ensures the first NON-PUBKEY value is greater than the second NON-PUBKEY value.
  • Ensures the first NON-PUBKEY value is greater than or equal to the second NON-PUBKEY value.
  • Ensures two pubkeys values are equal.
  • Ensures two pubkeys are not equal.
  • Ensures two NON-PUBKEY values are not equal.
  • Creates a Source

Structs§

Enums§

Constants§

Traits§

  • A data structure that can be deserialized and stored into account storage, i.e. an AccountInfo’s mutable data slice.
  • A data structure that can be serialized and stored into account storage, i.e. an AccountInfo’s mutable data slice.
  • A data structure of validated accounts that can be deserialized from the input to a Solana program. Implementations of this trait should perform any and all requisite constraint checks on accounts to ensure the accounts maintain any invariants required for the program to run securely. In most cases, it’s recommended to use the Accounts derive macro to implement this trait.
  • The close procedure to initiate garabage collection of an account, allowing one to retrieve the rent exemption.
  • The exit procedure for an account. Any cleanup or persistence to storage should be done here.
  • A data-structure that can be de-serialized from binary format by NBOR.
  • A data-structure that can be serialized into binary format by NBOR.
  • Associated bump seeds for Accounts.
  • Allows to deserialize a component AccountInfo into a struct.
  • Trait used to add the seed and size functions to the component.
  • Defines the id of a program.
  • Defines the Pubkey of an account.
  • Lamports related utility methods for accounts.
  • Defines an address expected to own an account.
  • A type that holds sysvar data.
  • Defines the space of an account for initialization.
  • Transformation to an AccountInfo struct.
  • Transformation to AccountInfo structs.
  • Transformation to AccountMeta structs.

Functions§

Type Aliases§

Attribute Macros§

  • Executes the given access control method before running the decorated instruction handler. Any method in scope of the attribute can be invoked with any arguments from the associated instruction handler.
  • An attribute for a data structure representing a Solana account.
  • This macro attribute is used to define a BOLT component.
  • This Component attribute is used to automatically generate the seed and size functions
  • This macro is used to defined a struct as a BOLT component and automatically implements the ComponentDeserialize and AccountDeserialize traits for the struct.
  • Macro to specify the on-chain ID of a component.
  • A marker attribute used to mark const values that should be included in the generated IDL but functionally does nothing.
  • This macro attribute is used to inject instructions and struct needed to delegate BOLT component.
  • Generates Error and type Result<T> = Result<T, Error> types to be used as return types from Anchor instruction handlers. Importantly, the attribute implements From on the ErrorCode to support converting from the user defined error enum into the generated Error.
  • The event attribute allows a struct to be used with emit! so that programs can log significant events in their programs that clients can subscribe to. Currently, this macro is for structs only.
  • This macro attribute is used to define a BOLT system extra accounts.
  • The #[program] attribute defines the module containing all instruction handlers defining all entries into a Solana program.
  • This macro attribute is used to define a BOLT system.
  • This macro attribute is used to define a BOLT system input.
  • A data structure that can be used as an internal field for a zero copy deserialized account, i.e., a struct marked with #[account(zero_copy)].

Derive Macros§