pub struct LocalRoots(/* private fields */);Expand description
The set of “local” (that is, from the current workspace) roots. Files in local roots are assumed to change frequently.
Implementations§
Source§impl LocalRoots
impl LocalRoots
pub fn ingredient(db: &dyn Database) -> &IngredientImpl<Self>
pub fn ingredient_mut( zalsa_mut: &mut Zalsa, ) -> (&mut IngredientImpl<Self>, &mut Runtime)
Source§impl LocalRoots
impl LocalRoots
pub fn new<Db_>(db: &Db_, roots: FxHashSet<SourceRootId>) -> Selfwhere
Db_: ?Sized + Database,
pub fn builder(roots: FxHashSet<SourceRootId>) -> <Self as HasBuilder>::Builder
pub fn roots<'db, Db_>(self, db: &'db Db_) -> &'db FxHashSet<SourceRootId>where
Db_: ?Sized + Database,
pub fn set_roots<'db, Db_>(
self,
db: &'db mut Db_,
) -> impl Setter<FieldTy = FxHashSet<SourceRootId>> + use<'db, Db_>where
Db_: ?Sized + Database,
pub fn try_get<Db_>(db: &Db_) -> Option<Self>where
Db_: ?Sized + Database,
pub fn get<Db_>(db: &Db_) -> Selfwhere
Db_: ?Sized + Database,
Trait Implementations§
Source§impl Clone for LocalRoots
impl Clone for LocalRoots
Source§fn clone(&self) -> LocalRoots
fn clone(&self) -> LocalRoots
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 Configuration for LocalRoots
impl Configuration for LocalRoots
const LOCATION: Location
const DEBUG_NAME: &'static str = "LocalRoots"
const FIELD_DEBUG_NAMES: &'static [&'static str]
Source§type Struct = LocalRoots
type Struct = LocalRoots
The input struct (which wraps an
Id)Source§type Fields = (HashSet<SourceRootId, FxBuildHasher>,)
type Fields = (HashSet<SourceRootId, FxBuildHasher>,)
A (possibly empty) tuple of the fields for this struct.
type Revisions = [Revision; 1]
type Durabilities = [Durability; 1]
Source§fn serialize<S: Serializer>(
fields: &Self::Fields,
serializer: S,
) -> Result<S::Ok, S::Error>
fn serialize<S: Serializer>( fields: &Self::Fields, serializer: S, ) -> Result<S::Ok, S::Error>
Serialize the fields using
serde. Read moreSource§fn deserialize<'de, D: Deserializer<'de>>(
deserializer: D,
) -> Result<Self::Fields, D::Error>
fn deserialize<'de, D: Deserializer<'de>>( deserializer: D, ) -> Result<Self::Fields, D::Error>
Deserialize the fields using
serde. Read moreSource§impl Debug for LocalRoots
impl Debug for LocalRoots
Source§impl HasJar for LocalRoots
impl HasJar for LocalRoots
Source§impl Hash for LocalRoots
impl Hash for LocalRoots
Source§impl PartialEq for LocalRoots
impl PartialEq for LocalRoots
Source§impl SalsaStructInDb for LocalRoots
impl SalsaStructInDb for LocalRoots
type MemoIngredientMap = MemoIngredientSingletonIndex
Source§fn lookup_ingredient_index(aux: &Zalsa) -> IngredientIndices
fn lookup_ingredient_index(aux: &Zalsa) -> IngredientIndices
Lookup or create ingredient indices. Read more
Source§fn entries(zalsa: &Zalsa) -> impl Iterator<Item = DatabaseKeyIndex> + '_
fn entries(zalsa: &Zalsa) -> impl Iterator<Item = DatabaseKeyIndex> + '_
Returns the IDs of any instances of this struct in the database.
Source§fn cast(id: Id, type_id: TypeId) -> Option<Self>
fn cast(id: Id, type_id: TypeId) -> Option<Self>
Plumbing to support nested salsa supertypes. Read more
Source§unsafe fn memo_table(
zalsa: &Zalsa,
id: Id,
current_revision: Revision,
) -> MemoTableWithTypes<'_>
unsafe fn memo_table( zalsa: &Zalsa, id: Id, current_revision: Revision, ) -> MemoTableWithTypes<'_>
Return the memo table associated with
id. Read moreSource§impl Update for LocalRoots
impl Update for LocalRoots
impl Copy for LocalRoots
impl Eq for LocalRoots
impl StructuralPartialEq for LocalRoots
Auto Trait Implementations§
impl Freeze for LocalRoots
impl RefUnwindSafe for LocalRoots
impl Send for LocalRoots
impl Sync for LocalRoots
impl Unpin for LocalRoots
impl UnwindSafe for LocalRoots
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,
§impl<T, R> CollectAndApply<T, R> for T
impl<T, R> CollectAndApply<T, R> for T
§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
Compare self to
key and return true if they are equal.§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
Checks if this value is equivalent to the given key. Read more
§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
Checks if this value is equivalent to the given key. Read more
§impl<T> Instrument for T
impl<T> Instrument for T
§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
§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