mod operation; use std::sync::Arc; pub use operation::*; mod value; pub use value::*; mod setting; pub use setting::*; use crate::new_stack::{runtime_handler::RuntimeHandle, PluginState, Runtime}; /// A container for a callback pointer, used to provide an internal callback function or /// state to a plugin when performing a callback. #[derive(Clone, Copy)] #[repr(C)] pub struct CallbackPtr(*const ()); impl CallbackPtr { pub unsafe fn from_raw(callback: *const ()) -> Self { Self(callback) } } #[repr(C)] pub struct RuntimeState { pub runtime: RuntimeHandle, pub operation_state: PluginState, }