jj_lib::workspace

Trait WorkspaceLoader

Source
pub trait WorkspaceLoader {
    // Required methods
    fn workspace_root(&self) -> &Path;
    fn repo_path(&self) -> &Path;
    fn load(
        &self,
        user_settings: &UserSettings,
        store_factories: &StoreFactories,
        working_copy_factories: &WorkingCopyFactories,
    ) -> Result<Workspace, WorkspaceLoadError>;
    fn get_working_copy_type(&self) -> Result<String, StoreLoadError>;
    fn load_working_copy(
        &self,
        store: &Arc<Store>,
        working_copy_factory: &dyn WorkingCopyFactory,
    ) -> Result<Box<dyn WorkingCopy>, WorkspaceLoadError>;
}

Required Methods§

Source

fn workspace_root(&self) -> &Path

Source

fn repo_path(&self) -> &Path

Source

fn load( &self, user_settings: &UserSettings, store_factories: &StoreFactories, working_copy_factories: &WorkingCopyFactories, ) -> Result<Workspace, WorkspaceLoadError>

Source

fn get_working_copy_type(&self) -> Result<String, StoreLoadError>

Source

fn load_working_copy( &self, store: &Arc<Store>, working_copy_factory: &dyn WorkingCopyFactory, ) -> Result<Box<dyn WorkingCopy>, WorkspaceLoadError>

Implementors§