pub struct Index { /* private fields */ }Expand description
The single domain facade that UI layers consume.
All queries go through Index; no caller outside argyph-core touches the
underlying Store directly.
Implementations§
Source§impl Index
impl Index
pub fn protocol_version() -> &'static str
pub async fn get_file(&self, path: &Utf8Path) -> Result<Option<FileEntry>>
pub async fn list_files(&self) -> Result<Vec<FileEntry>>
pub async fn status(&self) -> Result<IndexStatus>
pub async fn search_text( &self, root: &Utf8Path, pattern: &str, regex: bool, case_sensitive: bool, max_results: u64, filter: Option<SearchFilter>, ) -> Result<SearchResult>
pub async fn search_semantic( &self, query: &str, k: usize, filter: Option<&SearchFilter>, ) -> Result<SemanticResult>
pub async fn overview( &self, root: &Utf8Path, max_tree_depth: u64, ) -> Result<RepoOverview>
pub async fn find_symbol( &self, name: &str, file: Option<&Utf8Path>, ) -> Result<Vec<Symbol>>
pub async fn find_references(&self, sel: &SymbolSelector) -> Result<Vec<Edge>>
pub async fn get_callers(&self, sel: &SymbolSelector) -> Result<Vec<Edge>>
pub async fn get_callees(&self, sel: &SymbolSelector) -> Result<Vec<Edge>>
pub async fn get_imports(&self, file: &Utf8Path) -> Result<Vec<Edge>>
pub async fn get_symbol_outline( &self, file: &Utf8Path, ) -> Result<Vec<SymbolOutline>>
pub async fn reindex( &self, root: &Utf8Path, changes: &[ChangedPath], ) -> Result<()>
pub async fn pack( &self, root: &Utf8Path, req: &PackRequest, ) -> Result<PackResult>
Auto Trait Implementations§
impl Freeze for Index
impl !RefUnwindSafe for Index
impl Send for Index
impl Sync for Index
impl Unpin for Index
impl UnsafeUnpin for Index
impl !UnwindSafe for Index
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
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