#![warn(rust_2018_idioms)]
#![deny(
dead_code,
nonstandard_style,
unused_imports,
unused_mut,
unused_variables,
unused_unsafe,
unreachable_patterns
)]
mod avm;
mod config;
mod errors;
mod runner;
pub use avm::AVM;
pub use config::AVMConfig;
pub use errors::AVMError;
pub use runner::AVMMemoryStats;
pub use runner::AVMRuntimeLimits;
pub use runner::AquaVMRuntimeLimits;
pub use avm_interface::*;
pub mod avm_runner {
pub use crate::runner::AVMRunner;
pub use avm_interface::raw_outcome::RawAVMOutcome;
}
pub use marine::ne_vec;
pub use marine::HostExportedFunc;
pub use marine::HostImportDescriptor;
pub use marine::HostImportError;
pub use marine::IType;
pub use marine::IValue;
pub use polyplets::SecurityTetraplet;
pub use avm_data_store::AnomalyData;
pub use avm_data_store::DataStore;
pub type AVMDataStore<E> = Box<dyn DataStore<Error = E> + Send + Sync + 'static>;
pub type AVMResult<T, E> = std::result::Result<T, AVMError<E>>;
pub use errors::RunnerError;
pub type RunnerResult<T> = std::result::Result<T, RunnerError>;