pub struct PluginModule {
ecs: Arc<EcsAccessManager>,
plugin: PluginWrapper,
store: Mutex<Store<WasiHostCtx>>,
name: String,
}Expand description
This structure represent the WASM State of the plugin.
Fields§
§ecs: Arc<EcsAccessManager>§plugin: PluginWrapper§store: Mutex<Store<WasiHostCtx>>§name: StringImplementations§
Source§impl PluginModule
impl PluginModule
Sourcepub fn new(name: String, wasm_data: &[u8]) -> Result<Self, PluginModuleError>
pub fn new(name: String, wasm_data: &[u8]) -> Result<Self, PluginModuleError>
This function takes bytes from a WASM File and compile them
pub fn name(&self) -> &str
pub fn load_event( &mut self, ecs: &EcsWorld<'_, '_>, mode: GameMode, ) -> Result<(), PluginModuleError>
pub fn command_event( &mut self, ecs: &EcsWorld<'_, '_>, name: &str, args: &[String], player: Uid, ) -> Result<Vec<String>, CommandResults>
pub fn player_join_event( &mut self, ecs: &EcsWorld<'_, '_>, name: &str, uuid: Uuid, ) -> JoinResult
pub fn create_body(&mut self, bodytype: &str) -> Option<Body>
pub fn update_skeleton( &mut self, body: &Body, dep: &Dependency, time: f32, ) -> Option<Skeleton>
Auto Trait Implementations§
impl !Freeze for PluginModule
impl !RefUnwindSafe for PluginModule
impl !UnwindSafe for PluginModule
impl Send for PluginModule
impl Sync for PluginModule
impl Unpin for PluginModule
impl UnsafeUnpin for PluginModule
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
impl<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
impl<T> Event for T
§impl<T> Instrument for T
impl<T> Instrument for T
§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more