aboutsummaryrefslogtreecommitdiff
path: root/src/guts.rs
diff options
context:
space:
mode:
Diffstat (limited to 'src/guts.rs')
-rw-r--r--src/guts.rs17
1 files changed, 17 insertions, 0 deletions
diff --git a/src/guts.rs b/src/guts.rs
index e06721c..7cffa7c 100644
--- a/src/guts.rs
+++ b/src/guts.rs
@@ -6,6 +6,23 @@
//! We could stabilize something like this module in the future. If you have a
//! use case for it, please let us know by filing a GitHub issue.
+pub fn set_chunk_counter(hasher: &mut crate::Hasher, value: u64) {
+ assert_eq!(0, hasher.chunk_state.len(), "already accepted input");
+ assert_eq!(0, hasher.cv_stack.len(), "already accepted input");
+ hasher.chunk_state.chunk_counter = value;
+}
+
+pub fn finalize_subtree_cv(hasher: &crate::Hasher) -> crate::CVBytes {
+ hasher.final_output().chaining_value()
+}
+
+pub fn push_subtree_cv(hasher: &crate::Hasher, subtree_len: u64) -> crate::CVBytes {
+ // assert_eq!(0, hasher.chunk_state.len(), ");
+ // let count_so_far = self.chunk_state.chunk_counter * CHUNK_LEN as u64;
+ // assert_eq!(0,
+ todo!()
+}
+
#[derive(Clone, Debug)]
pub struct ChunkState(crate::ChunkState);