sui_adapter_latest/static_programmable_transactions/typing/verify/
mod.rs1use sui_types::error::ExecutionError;
5
6use crate::{
7 execution_mode::ExecutionMode,
8 static_programmable_transactions::{env, typing::ast as T},
9};
10
11pub mod drop_safety;
12pub mod input_arguments;
13pub mod memory_safety;
14pub mod move_functions;
15pub mod private_entry_arguments;
16
17pub fn transaction<Mode: ExecutionMode>(
18 env: &env::Env,
19 ast: &mut T::Transaction,
20) -> Result<(), ExecutionError> {
21 input_arguments::verify::<Mode>(env, &*ast)?;
22 move_functions::verify::<Mode>(env, &*ast)?;
23 memory_safety::verify(env, &*ast)?;
24 drop_safety::refine_and_verify::<Mode>(env, ast)?;
25 private_entry_arguments::verify::<Mode>(env, &*ast)?;
26 Ok(())
27}