runmat_execution_artifact/program/
identity.rs1use std::fmt::{Display, Formatter};
2
3use runmat_execution::Digest;
4use serde::{Deserialize, Serialize};
5
6#[derive(Clone, Copy, Debug, Eq, Hash, Ord, PartialEq, PartialOrd, Serialize, Deserialize)]
7#[serde(transparent)]
8pub struct ProgramRecipeId(pub Digest);
9
10impl Display for ProgramRecipeId {
11 fn fmt(&self, formatter: &mut Formatter<'_>) -> std::fmt::Result {
12 write!(formatter, "recipe:{}", self.0)
13 }
14}
15
16#[derive(Clone, Copy, Debug, Eq, Hash, Ord, PartialEq, PartialOrd, Serialize, Deserialize)]
17#[serde(transparent)]
18pub struct ProgramArtifactId(pub Digest);
19
20impl Display for ProgramArtifactId {
21 fn fmt(&self, formatter: &mut Formatter<'_>) -> std::fmt::Result {
22 write!(formatter, "program:{}", self.0)
23 }
24}