pub enum Resource {
Show 15 variants
File(String),
Interface(String),
Manifest(String),
Lockfile(String),
Migration(String),
TestFixture(String),
Toolchain(String),
Scoped {
family: String,
key: String,
},
Capability(String),
RiskBudget(String),
FreshIdAllocator,
LedgerRoot,
WorkGraph,
ProviderRateLimit(String),
OpaqueWorkspace,
}Expand description
A durable resource that turns read or write. Overlapping footprints force serialization (PSP-8 System 4 / Theorem 8).
Variants§
File(String)
Interface(String)
Manifest(String)
Lockfile(String)
Migration(String)
TestFixture(String)
Toolchain(String)
Scoped
An extension-defined resource family keyed by validated arguments.
Capability(String)
A specific capability in the capability table Γ.
RiskBudget(String)
A named risk budget.
FreshIdAllocator
The fresh-identifier allocator.
LedgerRoot
The ledger root (Merkle head).
WorkGraph
The mutable work graph (PSP-9 system 15).
ProviderRateLimit(String)
One provider’s rate limit — a throughput resource, not a component of the semantic durable state. Contention on it is a scheduling delay and is never recorded as a required serialization (Gate P).
OpaqueWorkspace
Fallback for tools whose touched state cannot be described: conflicts with everything, so an undeclared footprint serializes rather than races (PSP-9 system 5).
Trait Implementations§
Source§impl<'de> Deserialize<'de> for Resource
impl<'de> Deserialize<'de> for Resource
Source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read more
Source§impl Ord for Resource
impl Ord for Resource
1.21.0 (const: unstable) · Source§fn max(self, other: Self) -> Selfwhere
Self: Sized,
fn max(self, other: Self) -> Selfwhere
Self: Sized,
Compares and returns the maximum of two values. Read more
Source§impl PartialOrd for Resource
impl PartialOrd for Resource
impl Eq for Resource
impl StructuralPartialEq for Resource
Auto Trait Implementations§
impl Freeze for Resource
impl RefUnwindSafe for Resource
impl Send for Resource
impl Sync for Resource
impl Unpin for Resource
impl UnsafeUnpin for Resource
impl UnwindSafe for Resource
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<SS, SP> SupersetOf<SS> for SPwhere
SS: SubsetOf<SP>,
impl<SS, SP> SupersetOf<SS> for SPwhere
SS: SubsetOf<SP>,
§fn to_subset(&self) -> Option<SS>
fn to_subset(&self) -> Option<SS>
The inverse inclusion map: attempts to construct
self from the equivalent element of its
superset. Read more§fn is_in_subset(&self) -> bool
fn is_in_subset(&self) -> bool
Checks if
self is actually part of its subset T (and can be converted to it).§fn to_subset_unchecked(&self) -> SS
fn to_subset_unchecked(&self) -> SS
Use with care! Same as
self.to_subset but without any property checks. Always succeeds.§fn from_subset(element: &SS) -> SP
fn from_subset(element: &SS) -> SP
The inclusion map: converts
self to the equivalent element of its superset.