xenith-layerzero 0.1.0

LayerZero v2 transport implementation for xenith
Documentation
//! LayerZero v2 transport implementation for xenith.
//!
//! Provides [`LayerZeroTransport`], which implements
//! [`xenith_core::MessagingTransport`] by routing cross-chain messages through
//! LayerZero v2 endpoint contracts. Depends on [`xenith_core`] for traits and
//! types. Stub behaviour ships by default; real endpoint calls are gated behind
//! the `live` feature flag.
//!
//! ```
//! use xenith_layerzero::LayerZeroTransport;
//! use xenith_core::ChainId;
//!
//! let transport = LayerZeroTransport::new(
//!     [0u8; 20],
//!     vec![(ChainId::from(1), 30101), (ChainId::from(42161), 30110)],
//! );
//! ```
//!
//! See the [xenith_core] crate for core types and traits.

#[cfg(feature = "live")]
pub mod live;
#[cfg(feature = "live")]
pub mod options;
pub mod transport;

#[cfg(feature = "live")]
pub use live::{K256Signer, LayerZeroLiveTransport};
#[cfg(feature = "live")]
pub use options::encode_executor_lz_receive_option;
pub use transport::LayerZeroTransport;