#[repr(i32)]pub enum CacheRootKind {
Unspecified = 0,
CacheData = 1,
CacheLogs = 2,
CacheLocks = 3,
CacheRuntime = 4,
CacheTmp = 5,
CacheConfig = 6,
CacheIndex = 7,
CacheJournal = 8,
CacheSecrets = 9,
}Expand description
Logical role classification for cache roots. Wire values mirror v1’s
broker_v1.CacheRootKind EXACTLY (see broker_v1_manifest.proto).
Keeping the integer values aligned avoids subtle bugs when consumers
mix the two generations (e.g. via as i32 casts in test fixtures or
in code that bridges between v1 and v2). New kinds land in the
reserved range; v1’s enum is FROZEN so anything past 9 is v2-only.
Variants§
Unspecified = 0
Unknown / unset (proto3 zero value). Consumers MUST treat this as “ignore” rather than a real cache role.
CacheData = 1
Primary cache data (the largest root; sccache-style content store).
CacheLogs = 2
Log directory (daemon stderr / structured event log).
CacheLocks = 3
PID files, lock files, sockets, manifests, identity JSON.
CacheRuntime = 4
Copied daemon binaries (relocated install destination).
CacheTmp = 5
Temporary / ephemeral working tree (artifact build scratch, depfile staging, repeatedly emptied).
CacheConfig = 6
User config (do NOT prune).
CacheIndex = 7
Separately bounded index (redb, depgraph snapshot, compile journal).
CacheJournal = 8
WAL files needing separate fsync semantics.
CacheSecrets = 9
API keys / tokens. mode 0600. NEVER LOGGED.
Implementations§
Source§impl CacheRootKind
impl CacheRootKind
Source§impl CacheRootKind
impl CacheRootKind
Sourcepub fn as_str_name(&self) -> &'static str
pub fn as_str_name(&self) -> &'static str
String value of the enum field names used in the ProtoBuf definition.
The values are not transformed in any way and thus are considered stable (if the ProtoBuf definition does not change) and safe for programmatic use.
Sourcepub fn from_str_name(value: &str) -> Option<Self>
pub fn from_str_name(value: &str) -> Option<Self>
Creates an enum from field names used in the ProtoBuf definition.
Trait Implementations§
Source§impl Clone for CacheRootKind
impl Clone for CacheRootKind
Source§fn clone(&self) -> CacheRootKind
fn clone(&self) -> CacheRootKind
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreimpl Copy for CacheRootKind
Source§impl Debug for CacheRootKind
impl Debug for CacheRootKind
Source§impl Default for CacheRootKind
impl Default for CacheRootKind
Source§fn default() -> CacheRootKind
fn default() -> CacheRootKind
impl Eq for CacheRootKind
Source§impl From<CacheRootKind> for i32
impl From<CacheRootKind> for i32
Source§fn from(value: CacheRootKind) -> i32
fn from(value: CacheRootKind) -> i32
Source§impl Hash for CacheRootKind
impl Hash for CacheRootKind
Source§impl Ord for CacheRootKind
impl Ord for CacheRootKind
Source§fn cmp(&self, other: &CacheRootKind) -> Ordering
fn cmp(&self, other: &CacheRootKind) -> Ordering
1.21.0 (const: unstable) · Source§fn max(self, other: Self) -> Selfwhere
Self: Sized,
fn max(self, other: Self) -> Selfwhere
Self: Sized,
Source§impl PartialEq for CacheRootKind
impl PartialEq for CacheRootKind
Source§fn eq(&self, other: &CacheRootKind) -> bool
fn eq(&self, other: &CacheRootKind) -> bool
self and other values to be equal, and is used by ==.Source§impl PartialOrd for CacheRootKind
impl PartialOrd for CacheRootKind
impl StructuralPartialEq for CacheRootKind
Source§impl TryFrom<i32> for CacheRootKind
impl TryFrom<i32> for CacheRootKind
Source§type Error = UnknownEnumValue
type Error = UnknownEnumValue
Source§fn try_from(value: i32) -> Result<CacheRootKind, UnknownEnumValue>
fn try_from(value: i32) -> Result<CacheRootKind, UnknownEnumValue>
Auto Trait Implementations§
impl Freeze for CacheRootKind
impl RefUnwindSafe for CacheRootKind
impl Send for CacheRootKind
impl Sync for CacheRootKind
impl Unpin for CacheRootKind
impl UnsafeUnpin for CacheRootKind
impl UnwindSafe for CacheRootKind
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
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<Q, K> Comparable<K> for Q
impl<Q, K> Comparable<K> for Q
Source§impl<T> Downcast for Twhere
T: Any,
impl<T> Downcast for Twhere
T: Any,
Source§fn into_any(self: Box<T>) -> Box<dyn Any>
fn into_any(self: Box<T>) -> Box<dyn Any>
Box<dyn Trait> (where Trait: Downcast) to Box<dyn Any>. Box<dyn Any> can
then be further downcast into Box<ConcreteType> where ConcreteType implements Trait.Source§fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>
fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>
Rc<Trait> (where Trait: Downcast) to Rc<Any>. Rc<Any> can then be
further downcast into Rc<ConcreteType> where ConcreteType implements Trait.Source§fn as_any(&self) -> &(dyn Any + 'static)
fn as_any(&self) -> &(dyn Any + 'static)
&Trait (where Trait: Downcast) to &Any. This is needed since Rust cannot
generate &Any’s vtable from &Trait’s.Source§fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
&mut Trait (where Trait: Downcast) to &Any. This is needed since Rust cannot
generate &mut Any’s vtable from &mut Trait’s.Source§impl<T> DowncastSync for T
impl<T> DowncastSync for T
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
key and return true if they are equal.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>
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>
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