pub struct ManifestWorkspaceBackend { /* private fields */ }Expand description
Local backend that uses an in-memory manifest for search.
Implementations§
Source§impl ManifestWorkspaceBackend
impl ManifestWorkspaceBackend
pub fn new(root: impl Into<PathBuf>) -> Arc<Self> ⓘ
pub fn from_manifest( local: Arc<LocalWorkspaceBackend>, manifest: Arc<LocalWorkspaceManifest>, ) -> Arc<Self> ⓘ
pub fn manifest(&self) -> Arc<LocalWorkspaceManifest> ⓘ
pub fn local_root(&self) -> &Path
Trait Implementations§
Source§impl WorkspaceCommandRunner for ManifestWorkspaceBackend
impl WorkspaceCommandRunner for ManifestWorkspaceBackend
fn exec<'life0, 'async_trait>(
&'life0 self,
request: CommandRequest,
) -> Pin<Box<dyn Future<Output = Result<CommandOutput>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
Source§impl WorkspaceFileSystem for ManifestWorkspaceBackend
impl WorkspaceFileSystem for ManifestWorkspaceBackend
fn read_text<'life0, 'life1, 'async_trait>(
&'life0 self,
path: &'life1 WorkspacePath,
) -> Pin<Box<dyn Future<Output = WorkspaceResult<String>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
fn write_text<'life0, 'life1, 'life2, 'async_trait>(
&'life0 self,
path: &'life1 WorkspacePath,
content: &'life2 str,
) -> Pin<Box<dyn Future<Output = WorkspaceResult<WorkspaceWriteOutcome>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait,
fn list_dir<'life0, 'life1, 'async_trait>(
&'life0 self,
path: &'life1 WorkspacePath,
) -> Pin<Box<dyn Future<Output = WorkspaceResult<Vec<WorkspaceDirEntry>>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
Source§impl WorkspaceGit for ManifestWorkspaceBackend
impl WorkspaceGit for ManifestWorkspaceBackend
fn is_repository<'life0, 'async_trait>(
&'life0 self,
) -> Pin<Box<dyn Future<Output = Result<bool>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn status<'life0, 'async_trait>(
&'life0 self,
) -> Pin<Box<dyn Future<Output = Result<WorkspaceGitStatus>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn log<'life0, 'async_trait>(
&'life0 self,
max_count: usize,
) -> Pin<Box<dyn Future<Output = Result<Vec<WorkspaceGitCommit>>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn list_branches<'life0, 'async_trait>(
&'life0 self,
) -> Pin<Box<dyn Future<Output = Result<Vec<WorkspaceGitBranch>>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn create_branch<'life0, 'async_trait>(
&'life0 self,
request: WorkspaceGitCreateBranchRequest,
) -> Pin<Box<dyn Future<Output = Result<()>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn checkout<'life0, 'async_trait>(
&'life0 self,
request: WorkspaceGitCheckoutRequest,
) -> Pin<Box<dyn Future<Output = Result<WorkspaceGitCheckoutOutput>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn diff<'life0, 'async_trait>(
&'life0 self,
request: WorkspaceGitDiffRequest,
) -> Pin<Box<dyn Future<Output = Result<String>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn list_remotes<'life0, 'async_trait>(
&'life0 self,
) -> Pin<Box<dyn Future<Output = Result<Vec<WorkspaceGitRemote>>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
Source§impl WorkspaceGitStashProvider for ManifestWorkspaceBackend
impl WorkspaceGitStashProvider for ManifestWorkspaceBackend
fn list_stashes<'life0, 'async_trait>(
&'life0 self,
) -> Pin<Box<dyn Future<Output = Result<Vec<WorkspaceGitStash>>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn stash<'life0, 'async_trait>(
&'life0 self,
request: WorkspaceGitStashRequest,
) -> Pin<Box<dyn Future<Output = Result<()>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
Source§impl WorkspaceGitWorktreeProvider for ManifestWorkspaceBackend
impl WorkspaceGitWorktreeProvider for ManifestWorkspaceBackend
fn list_worktrees<'life0, 'async_trait>(
&'life0 self,
) -> Pin<Box<dyn Future<Output = Result<Vec<WorkspaceGitWorktree>>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn create_worktree<'life0, 'async_trait>(
&'life0 self,
request: WorkspaceGitCreateWorktreeRequest,
) -> Pin<Box<dyn Future<Output = Result<WorkspaceGitWorktreeMutation>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn remove_worktree<'life0, 'async_trait>(
&'life0 self,
request: WorkspaceGitRemoveWorktreeRequest,
) -> Pin<Box<dyn Future<Output = Result<WorkspaceGitWorktreeMutation>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
Source§impl WorkspaceSearch for ManifestWorkspaceBackend
impl WorkspaceSearch for ManifestWorkspaceBackend
fn glob<'life0, 'async_trait>(
&'life0 self,
request: WorkspaceGlobRequest,
) -> Pin<Box<dyn Future<Output = Result<WorkspaceGlobResult>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn grep<'life0, 'async_trait>(
&'life0 self,
request: WorkspaceGrepRequest,
) -> Pin<Box<dyn Future<Output = Result<WorkspaceGrepResult>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
Auto Trait Implementations§
impl !RefUnwindSafe for ManifestWorkspaceBackend
impl !UnwindSafe for ManifestWorkspaceBackend
impl Freeze for ManifestWorkspaceBackend
impl Send for ManifestWorkspaceBackend
impl Sync for ManifestWorkspaceBackend
impl Unpin for ManifestWorkspaceBackend
impl UnsafeUnpin for ManifestWorkspaceBackend
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
impl<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
Source§impl<T> FutureExt for T
impl<T> FutureExt for T
Source§fn with_context(self, otel_cx: Context) -> WithContext<Self>
fn with_context(self, otel_cx: Context) -> WithContext<Self>
Source§fn with_current_context(self) -> WithContext<Self>
fn with_current_context(self) -> WithContext<Self>
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more