pub struct DefaultReadonlyIndex(/* private fields */);Expand description
Commit index backend which stores data on local disk.
Implementations§
Source§impl DefaultReadonlyIndex
impl DefaultReadonlyIndex
Sourcepub fn num_commits(&self) -> u32
pub fn num_commits(&self) -> u32
Returns the number of all indexed commits.
Sourcepub fn stats(&self) -> IndexStats
pub fn stats(&self) -> IndexStats
Collects statistics of indexed commits and segments.
Sourcepub fn generation_number(&self, commit_id: &CommitId) -> Option<u32>
pub fn generation_number(&self, commit_id: &CommitId) -> Option<u32>
Looks up generation of the specified commit.
Trait Implementations§
Source§impl Clone for DefaultReadonlyIndex
impl Clone for DefaultReadonlyIndex
Source§fn clone(&self) -> DefaultReadonlyIndex
fn clone(&self) -> DefaultReadonlyIndex
Returns a duplicate of the value. Read more
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreSource§impl Debug for DefaultReadonlyIndex
impl Debug for DefaultReadonlyIndex
Source§impl Index for DefaultReadonlyIndex
impl Index for DefaultReadonlyIndex
Source§fn shortest_unique_commit_id_prefix_len(
&self,
commit_id: &CommitId,
) -> IndexResult<usize>
fn shortest_unique_commit_id_prefix_len( &self, commit_id: &CommitId, ) -> IndexResult<usize>
Returns the minimum prefix length to disambiguate
commit_id from other
commits in the index. The length returned is the number of hexadecimal
digits in the minimum prefix. Read moreSource§fn resolve_commit_id_prefix(
&self,
prefix: &HexPrefix,
) -> IndexResult<PrefixResolution<CommitId>>
fn resolve_commit_id_prefix( &self, prefix: &HexPrefix, ) -> IndexResult<PrefixResolution<CommitId>>
Searches the index for commit IDs matching
prefix. Returns a
PrefixResolution with a CommitId if the prefix matches a single
commit.Source§fn has_id(&self, commit_id: &CommitId) -> IndexResult<bool>
fn has_id(&self, commit_id: &CommitId) -> IndexResult<bool>
Returns true if
commit_id is present in the index.Source§fn is_ancestor(
&self,
ancestor_id: &CommitId,
descendant_id: &CommitId,
) -> IndexResult<bool>
fn is_ancestor( &self, ancestor_id: &CommitId, descendant_id: &CommitId, ) -> IndexResult<bool>
Returns true if
ancestor_id commit is an ancestor of the
descendant_id commit, or if ancestor_id equals descendant_id.Source§fn common_ancestors(
&self,
set1: &[CommitId],
set2: &[CommitId],
) -> IndexResult<Vec<CommitId>>
fn common_ancestors( &self, set1: &[CommitId], set2: &[CommitId], ) -> IndexResult<Vec<CommitId>>
Returns the best common ancestor or ancestors of the commits in
set1
and set2. A “best common ancestor” has no descendants that are also
common ancestors.Source§fn all_heads_for_gc(
&self,
) -> IndexResult<Box<dyn Iterator<Item = CommitId> + '_>>
fn all_heads_for_gc( &self, ) -> IndexResult<Box<dyn Iterator<Item = CommitId> + '_>>
Heads among all indexed commits at the associated operation. Read more
Source§fn heads(
&self,
candidates: &mut dyn Iterator<Item = &CommitId>,
) -> IndexResult<Vec<CommitId>>
fn heads( &self, candidates: &mut dyn Iterator<Item = &CommitId>, ) -> IndexResult<Vec<CommitId>>
Returns the subset of commit IDs in
candidates which are not ancestors
of other commits in candidates. If a commit id is duplicated in the
candidates list it will appear at most once in the output.Source§fn changed_paths_in_commit(
&self,
commit_id: &CommitId,
) -> IndexResult<Option<Box<dyn Iterator<Item = RepoPathBuf> + '_>>>
fn changed_paths_in_commit( &self, commit_id: &CommitId, ) -> IndexResult<Option<Box<dyn Iterator<Item = RepoPathBuf> + '_>>>
Returns iterator over paths changed at the specified commit. The paths
are sorted. Returns
None if the commit wasn’t indexed.Source§fn evaluate_revset(
&self,
expression: &ResolvedExpression,
store: &Arc<Store>,
) -> Result<Box<dyn Revset + '_>, RevsetEvaluationError>
fn evaluate_revset( &self, expression: &ResolvedExpression, store: &Arc<Store>, ) -> Result<Box<dyn Revset + '_>, RevsetEvaluationError>
Resolves the revset
expression against the index and corresponding
store.Source§impl ReadonlyIndex for DefaultReadonlyIndex
impl ReadonlyIndex for DefaultReadonlyIndex
fn as_index(&self) -> &dyn Index
fn change_id_index( &self, heads: &mut dyn Iterator<Item = &CommitId>, ) -> Box<dyn ChangeIdIndex>
fn start_modification(&self) -> Box<dyn MutableIndex>
Auto Trait Implementations§
impl Freeze for DefaultReadonlyIndex
impl RefUnwindSafe for DefaultReadonlyIndex
impl Send for DefaultReadonlyIndex
impl Sync for DefaultReadonlyIndex
impl Unpin for DefaultReadonlyIndex
impl UnwindSafe for DefaultReadonlyIndex
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> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
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