pub trait Backend: Send + Sync + Debug {
Show 15 methods fn name(&self) -> &str; fn hash_length(&self) -> usize; fn git_repo(&self) -> Option<Repository>; fn read_file(
        &self,
        path: &RepoPath,
        id: &FileId
    ) -> BackendResult<Box<dyn Read>>; fn write_file(
        &self,
        path: &RepoPath,
        contents: &mut dyn Read
    ) -> BackendResult<FileId>; fn read_symlink(
        &self,
        path: &RepoPath,
        id: &SymlinkId
    ) -> BackendResult<String>; fn write_symlink(
        &self,
        path: &RepoPath,
        target: &str
    ) -> BackendResult<SymlinkId>; fn root_commit_id(&self) -> &CommitId; fn empty_tree_id(&self) -> &TreeId; fn read_tree(&self, path: &RepoPath, id: &TreeId) -> BackendResult<Tree>; fn write_tree(
        &self,
        path: &RepoPath,
        contents: &Tree
    ) -> BackendResult<TreeId>; fn read_conflict(
        &self,
        path: &RepoPath,
        id: &ConflictId
    ) -> BackendResult<Conflict>; fn write_conflict(
        &self,
        path: &RepoPath,
        contents: &Conflict
    ) -> BackendResult<ConflictId>; fn read_commit(&self, id: &CommitId) -> BackendResult<Commit>; fn write_commit(&self, contents: &Commit) -> BackendResult<CommitId>;
}

Required Methods§

A unique name that identifies this backend. Written to .jj/repo/store/backend when the repo is created.

Implementors§