Skip to main content

smplx_sdk/program/
witness.rs

1use dyn_clone::DynClone;
2use simplicityhl::WitnessValues;
3
4/// An interface for structs capable of generating Simplicity program witness mappings.
5/// See the ` include_simc!()` macro, which generates an automatic `WitnessTrait` implementation.
6pub trait WitnessTrait: DynClone {
7    /// Compiles and generates the fully populated `WitnessValues` map for execution.
8    fn build_witness(&self) -> WitnessValues;
9}
10
11dyn_clone::clone_trait_object!(WitnessTrait);