pub struct OutputId(/* private fields */);Expand description
Unique identifier for an output declaration in the ceremony.
Outputs are ceremony declarations that specify the type and format of artifacts produced during the ceremony. They are resolved at ceremony load time.
§Relationship to ArtifactId
OutputId and ArtifactId are separate types that match by name:
# Ceremony declares outputs (OutputId)
output:
public_key: # OutputId("public_key")
type: public_key
# Steps produce artifacts (ArtifactId)
steps:
- id: export
produces: ${artifact.public_key} # ArtifactId("public_key")At runtime, the executor looks up: “for this ArtifactId, is there a declared OutputId?”
They remain separate types because:
- Different lifespans:
OutputIdexists from resolution,ArtifactIdfrom execution - Different scopes: Not all artifacts are outputs (intermediate values)
- Type safety: Prevents mixing declarations vs runtime values
See also: ArtifactId for runtime artifacts.
Implementations§
Trait Implementations§
Source§impl<'de> Deserialize<'de> for OutputId
impl<'de> Deserialize<'de> for OutputId
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
impl Eq for OutputId
impl StructuralPartialEq for OutputId
Auto Trait Implementations§
impl Freeze for OutputId
impl RefUnwindSafe for OutputId
impl Send for OutputId
impl Sync for OutputId
impl Unpin for OutputId
impl UnsafeUnpin for OutputId
impl UnwindSafe for OutputId
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> DeserializeOwned for Twhere
T: for<'de> Deserialize<'de>,
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
Compare self to
key and return true if they are equal.