MCPcopy Create free account
hub / github.com/BitVM/BitVM / to_witness

Method to_witness

bitvm/src/chunk/elements.rs:222–241  ·  view source on GitHub ↗
(&self, elem_type: ElementType)

Source from the content-addressed store, hash-verified

220 // hashing pre-image for the DataType
221 #[allow(clippy::wrong_self_convention)]
222 pub(crate) fn to_witness(&self, elem_type: ElementType) -> Vec<Hint> {
223 match (elem_type, self) {
224 (ElementType::G2EvalPoint, DataType::G2EvalData(g)) => {
225 as_hints_g2evalpointtype_g2evaldata(*g)
226 }
227 (ElementType::G2EvalMul, DataType::G2EvalData(g)) => {
228 as_hints_g2evalmultype_g2evaldata(*g)
229 }
230 (ElementType::Fp6, DataType::Fp6Data(r)) => as_hints_fq6type_fq6data(*r),
231 (ElementType::G1, DataType::G1Data(r)) => as_hints_g1type_g1data(*r),
232 (ElementType::FieldElem, DataType::U256Data(r)) => as_hints_fieldelemtype_u256data(*r),
233 (ElementType::ScalarElem, DataType::U256Data(r)) => {
234 as_hints_scalarelemtype_u256data(*r)
235 }
236 _ => {
237 println!("Unhandled ElementType {:?} ", elem_type);
238 unreachable!();
239 }
240 }
241 }
242}
243
244/// returns coefficients of Fp6 element