pub mod pha;
pub mod rootprint;
pub use pha::{EmbeddedProof, ExternalProofAttachment, PhaArtifact, PhaError, PHA_SCHEMA_V1};
pub use rootprint::{Rootprint, RootprintBranch, RootprintError, ROOTPRINT_SCHEMA_V1};
#[macro_export]
macro_rules! prove_with_rootprint {
(label: $label:expr, artifact: $artifact:expr $(,)?) => {
$crate::provenance::Rootprint::new($label, $artifact)
};
(
rootprint: $rootprint:expr,
fork: $parent:expr,
label: $label:expr,
artifact: $artifact:expr $(,)?
) => {
$rootprint.fork($parent, $label, $artifact)
};
(
rootprint: $rootprint:expr,
merge: [$left:expr, $right:expr],
label: $label:expr,
artifact: $artifact:expr $(,)?
) => {
$rootprint.merge($left, $right, $label, $artifact)
};
}