Struct project2::worktree::LocalWorktree
source · pub struct LocalWorktree { /* private fields */ }
Implementations§
source§impl LocalWorktree
impl LocalWorktree
pub fn contains_abs_path(&self, path: &Path) -> bool
pub fn diagnostics_for_path( &self, path: &Path ) -> Vec<(LanguageServerId, Vec<DiagnosticEntry<Unclipped<PointUtf16>>>)>
pub fn clear_diagnostics_for_language_server( &mut self, server_id: LanguageServerId, _: &mut ModelContext<'_, Worktree> )
pub fn update_diagnostics( &mut self, server_id: LanguageServerId, worktree_path: Arc<Path>, diagnostics: Vec<DiagnosticEntry<Unclipped<PointUtf16>>>, _: &mut ModelContext<'_, Worktree> ) -> Result<bool>
pub fn scan_complete(&self) -> impl Future<Output = ()>
pub fn snapshot(&self) -> LocalSnapshot
pub fn metadata_proto(&self) -> WorktreeMetadata
pub fn save_buffer( &self, buffer_handle: Model<Buffer>, path: Arc<Path>, has_changed_file: bool, cx: &mut ModelContext<'_, Worktree> ) -> Task<Result<()>>
pub fn create_entry( &self, path: impl Into<Arc<Path>>, is_dir: bool, cx: &mut ModelContext<'_, Worktree> ) -> Task<Result<Entry>>
pub fn write_file( &self, path: impl Into<Arc<Path>>, text: Rope, line_ending: LineEnding, cx: &mut ModelContext<'_, Worktree> ) -> Task<Result<Entry>>
pub fn delete_entry( &self, entry_id: ProjectEntryId, cx: &mut ModelContext<'_, Worktree> ) -> Option<Task<Result<()>>>
pub fn rename_entry( &self, entry_id: ProjectEntryId, new_path: impl Into<Arc<Path>>, cx: &mut ModelContext<'_, Worktree> ) -> Option<Task<Result<Entry>>>
pub fn copy_entry( &self, entry_id: ProjectEntryId, new_path: impl Into<Arc<Path>>, cx: &mut ModelContext<'_, Worktree> ) -> Option<Task<Result<Entry>>>
pub fn expand_entry( &mut self, entry_id: ProjectEntryId, cx: &mut ModelContext<'_, Worktree> ) -> Option<Task<Result<()>>>
pub fn refresh_entries_for_paths(&self, paths: Vec<Arc<Path>>) -> Receiver
pub fn add_path_prefix_to_scan(&self, path_prefix: Arc<Path>)
pub fn observe_updates<F, Fut>( &mut self, project_id: u64, cx: &mut ModelContext<'_, Worktree>, callback: F ) -> Receiver<()>where F: 'static + Send + Fn(UpdateWorktree) -> Fut, Fut: Send + Future<Output = bool>,
Methods from Deref<Target = Snapshot>§
pub fn id(&self) -> WorktreeId
pub fn abs_path(&self) -> &Arc<Path>
pub fn absolutize(&self, path: &Path) -> PathBuf
pub fn contains_entry(&self, entry_id: ProjectEntryId) -> bool
pub fn file_count(&self) -> usize
pub fn visible_file_count(&self) -> usize
pub fn files(&self, include_ignored: bool, start: usize) -> Traversal<'_> ⓘ
pub fn entries(&self, include_ignored: bool) -> Traversal<'_> ⓘ
pub fn repositories( &self ) -> impl Iterator<Item = (&Arc<Path>, &RepositoryEntry)>
sourcepub fn repository_for_work_directory(
&self,
path: &Path
) -> Option<RepositoryEntry>
pub fn repository_for_work_directory( &self, path: &Path ) -> Option<RepositoryEntry>
Get the repository whose work directory contains the given path.
sourcepub fn repository_for_path(&self, path: &Path) -> Option<RepositoryEntry>
pub fn repository_for_path(&self, path: &Path) -> Option<RepositoryEntry>
Get the repository whose work directory contains the given path.
pub fn repository_and_work_directory_for_path( &self, path: &Path ) -> Option<(RepositoryWorkDirectory, RepositoryEntry)>
sourcepub fn entries_with_repositories<'a>(
&'a self,
entries: impl 'a + Iterator<Item = &'a Entry>
) -> impl 'a + Iterator<Item = (&'a Entry, Option<&'a RepositoryEntry>)>
pub fn entries_with_repositories<'a>( &'a self, entries: impl 'a + Iterator<Item = &'a Entry> ) -> impl 'a + Iterator<Item = (&'a Entry, Option<&'a RepositoryEntry>)>
Given an ordered iterator of entries, returns an iterator of those entries, along with their containing git repository.
sourcepub fn propagate_git_statuses(&self, result: &mut [Entry])
pub fn propagate_git_statuses(&self, result: &mut [Entry])
Update the git_status
of the given entries such that files’
statuses bubble up to their ancestor directories.
pub fn paths(&self) -> impl Iterator<Item = &Arc<Path>>
pub fn descendent_entries<'a>( &'a self, include_dirs: bool, include_ignored: bool, parent_path: &'a Path ) -> DescendentEntriesIter<'a> ⓘ
pub fn root_entry(&self) -> Option<&Entry>
pub fn root_name(&self) -> &str
pub fn root_git_entry(&self) -> Option<RepositoryEntry>
pub fn git_entries(&self) -> impl Iterator<Item = &RepositoryEntry>
pub fn scan_id(&self) -> usize
pub fn entry_for_path(&self, path: impl AsRef<Path>) -> Option<&Entry>
pub fn entry_for_id(&self, id: ProjectEntryId) -> Option<&Entry>
pub fn inode_for_path(&self, path: impl AsRef<Path>) -> Option<u64>
Trait Implementations§
source§impl Debug for LocalWorktree
impl Debug for LocalWorktree
Auto Trait Implementations§
impl !RefUnwindSafe for LocalWorktree
impl Send for LocalWorktree
impl Sync for LocalWorktree
impl Unpin for LocalWorktree
impl !UnwindSafe for LocalWorktree
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