43 lines
2.0 KiB
Rust
43 lines
2.0 KiB
Rust
// file: crates/ksp-interface-lib/src/lib.rs
|
|
// version: 5
|
|
|
|
#![warn(missing_docs)]
|
|
#![deny(unreachable_pub)]
|
|
#![forbid(unsafe_code)]
|
|
|
|
//! Passive contracts shared across KSP component boundaries.
|
|
//!
|
|
//! The crate reuses canonical Solana primitives owned by `ksp-core-lib` and
|
|
//! exposes only bounded, passive Program-facing and provider-neutral
|
|
//! acquisition structures. Runtime, transport, persistence and Program
|
|
//! behavior remain outside this crate.
|
|
|
|
mod error;
|
|
mod program_account_meta;
|
|
mod program_instruction;
|
|
mod slot_lifecycle;
|
|
mod transaction_execution;
|
|
|
|
/// Error code used when an Interface-owned Program instruction admission limit is exceeded.
|
|
pub use self::error::ERROR_CODE_PROGRAM_INSTRUCTION_LIMIT_EXCEEDED;
|
|
/// Maximum number of account metas admitted by one passive Program instruction contract.
|
|
pub use self::program_account_meta::MAX_PROGRAM_INSTRUCTION_ACCOUNTS;
|
|
/// Passive account metadata attached to one Program instruction.
|
|
pub use self::program_account_meta::ProgramAccountMeta;
|
|
/// Maximum opaque data payload admitted by one passive Program instruction contract.
|
|
pub use self::program_instruction::MAX_PROGRAM_INSTRUCTION_DATA_LEN;
|
|
/// Passive, bounded Program instruction wire contract.
|
|
pub use self::program_instruction::ProgramInstruction;
|
|
/// Passive provider-neutral occurrence of one slot lifecycle stage.
|
|
pub use self::slot_lifecycle::SlotLifecycleEvent;
|
|
/// Provider-neutral stage in the lifecycle of an observed Solana slot.
|
|
pub use self::slot_lifecycle::SlotLifecycleStage;
|
|
/// Passive provider-neutral observation of one transaction execution result.
|
|
pub use self::transaction_execution::TransactionExecutionEvent;
|
|
/// Provider-neutral outcome of one observed transaction execution.
|
|
pub use self::transaction_execution::TransactionExecutionOutcome;
|
|
/// Canonical 64-byte Solana transaction signature used by passive Interface events.
|
|
pub use self::transaction_execution::TransactionSignature;
|
|
/// Canonical Solana account address primitive owned by `ksp-core-lib`.
|
|
pub use ksp_core_lib::Pubkey;
|