sp1_core_executor/
reduce.rsuse serde::{de::DeserializeOwned, Deserialize, Serialize};
use sp1_stark::{Dom, ShardProof, StarkGenericConfig, StarkVerifyingKey};
#[derive(Serialize, Deserialize, Clone)]
#[serde(bound(serialize = "ShardProof<SC>: Serialize, Dom<SC>: Serialize"))]
#[serde(bound(deserialize = "ShardProof<SC>: Deserialize<'de>, Dom<SC>: DeserializeOwned"))]
pub struct SP1ReduceProof<SC: StarkGenericConfig> {
pub vk: StarkVerifyingKey<SC>,
pub proof: ShardProof<SC>,
}
impl<SC: StarkGenericConfig> std::fmt::Debug for SP1ReduceProof<SC> {
fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
let mut debug_struct = f.debug_struct("SP1ReduceProof");
debug_struct.field("vk", &self.vk);
debug_struct.field("proof", &self.proof);
debug_struct.finish()
}
}