Skip to main content

ScriptApiRegistrar

Trait ScriptApiRegistrar 

Source
pub trait ScriptApiRegistrar {
    // Required method
    fn register_api(&self, engine: &mut ScriptEngine);
}
Expand description

Trait for registering game-specific JavaScript APIs.

Implementations add function properties to the game global JS object (already created by the core engine) during ScriptEngine initialization.

§Example

struct MyGameApi;
impl ScriptApiRegistrar for MyGameApi {
    fn register_api(&self, engine: &mut ScriptEngine) {
        engine.register_async_fn("myCommand", |args, ctx| {
            // ... build ScriptCommand ...
        });
    }
}

let engine = ScriptEngine::with_api(&MyGameApi);

Required Methods§

Source

fn register_api(&self, engine: &mut ScriptEngine)

Register functions on the game JS object. Called during ScriptEngine initialization, after core APIs have been registered and the game global object is available.

Dyn Compatibility§

This trait is dyn compatible.

In older versions of Rust, dyn compatibility was called "object safety".

Implementors§