pub trait WorldGenerator {
    // Required methods
    fn import_interface(
        &mut self,
        resolve: &Resolve,
        name: &str,
        iface: InterfaceId,
        files: &mut Files
    );
    fn export_interface(
        &mut self,
        resolve: &Resolve,
        name: &str,
        iface: InterfaceId,
        files: &mut Files
    );
    fn import_funcs(
        &mut self,
        resolve: &Resolve,
        world: WorldId,
        funcs: &[(&str, &Function)],
        files: &mut Files
    );
    fn export_funcs(
        &mut self,
        resolve: &Resolve,
        world: WorldId,
        funcs: &[(&str, &Function)],
        files: &mut Files
    );
    fn export_types(
        &mut self,
        resolve: &Resolve,
        world: WorldId,
        types: &[(&str, TypeId)],
        files: &mut Files
    );
    fn finish(&mut self, resolve: &Resolve, world: WorldId, files: &mut Files);

    // Provided methods
    fn generate(&mut self, resolve: &Resolve, id: WorldId, files: &mut Files) { ... }
    fn preprocess(&mut self, resolve: &Resolve, world: WorldId) { ... }
}

Required Methods§

source

fn import_interface( &mut self, resolve: &Resolve, name: &str, iface: InterfaceId, files: &mut Files )

source

fn export_interface( &mut self, resolve: &Resolve, name: &str, iface: InterfaceId, files: &mut Files )

source

fn import_funcs( &mut self, resolve: &Resolve, world: WorldId, funcs: &[(&str, &Function)], files: &mut Files )

source

fn export_funcs( &mut self, resolve: &Resolve, world: WorldId, funcs: &[(&str, &Function)], files: &mut Files )

source

fn export_types( &mut self, resolve: &Resolve, world: WorldId, types: &[(&str, TypeId)], files: &mut Files )

source

fn finish(&mut self, resolve: &Resolve, world: WorldId, files: &mut Files)

Provided Methods§

source

fn generate(&mut self, resolve: &Resolve, id: WorldId, files: &mut Files)

source

fn preprocess(&mut self, resolve: &Resolve, world: WorldId)

Implementors§