Skip to main content

ObjectRegistry

Trait ObjectRegistry 

Source
pub trait ObjectRegistry {
    // Required methods
    fn create_child(
        &self,
        object_name: String,
        script_path: Option<PathBuf>,
        parent_object: Option<&dyn Object>,
    ) -> Option<&dyn Object>;
    fn remove(&self, object: &dyn Object) -> bool;
    fn set_script(&self, object: &dyn Object, script_path: PathBuf) -> bool;
    fn remove_script(&self, object: &dyn Object) -> bool;
    fn move_to_parent(
        &self,
        child_object: &dyn Object,
        new_parent: &dyn Object,
    ) -> bool;
    fn get(&self, object_path: &str) -> Option<&dyn Object>;
    fn add_component(
        &self,
        object: &dyn Object,
        component: Box<dyn ComponentData>,
    );
}

Required Methods§

Source

fn create_child( &self, object_name: String, script_path: Option<PathBuf>, parent_object: Option<&dyn Object>, ) -> Option<&dyn Object>

Создаёт дочерний объект для указанного родителя object_name: имя для созданного объекта script_path: путь к файлу скрипта parent_object: объект к оторому будет добавлен объект Возвращает None, если родитель не существует или объект не может быть создан

Source

fn remove(&self, object: &dyn Object) -> bool

Удаляет объект и всё его поддерево

Source

fn set_script(&self, object: &dyn Object, script_path: PathBuf) -> bool

Устанавливает скрипт для объекта

Source

fn remove_script(&self, object: &dyn Object) -> bool

Убирает скрипт с объекта

Source

fn move_to_parent( &self, child_object: &dyn Object, new_parent: &dyn Object, ) -> bool

Перемещает объект к новому родителю

Source

fn get(&self, object_path: &str) -> Option<&dyn Object>

Получает объект по пути

Source

fn add_component(&self, object: &dyn Object, component: Box<dyn ComponentData>)

Добавляет объекту компонент

Implementors§