pub(crate) fn parse(input: &[u8], offset: usize, bucket_start: usize) -> IResult<&[u8], Self> {
        assert!(bucket_start > 0);
        let (bytes, num_buckets) = le_u64(&input[bucket_start..])?;
        let (bytes, mut num_entries) = le_u64(bytes)?;
        let mut payload = input;
        let mut result = Self::new();
        while num_entries > 0 {
            let (bytes, entries) = result.parse_bucket(payload, num_entries)?;
            payload = bytes;
            num_entries = entries;
        }
        Ok((payload, result))
    }
/// buckets is the data the hash table buckets start at - the start of the `HashTable` in memory.
/// hash. offset shows the offset from the base address to the start of the `HashTable` as this
/// will be used to correct any offsets
buckets is the data the hash table buckets start at - the start of the `HashTable` in memory.
hash. offset shows the offset from the base address to the start of the `HashTable` as this
will be used to correct any offsets
buckets is the data the hash table buckets start at - the start of the ` HashTable ` in memory . hash . offset shows the offset from the base address to the start of the ` HashTable ` as this will be used to correct any offsets
pub(crate) fn parse(input: &[u8], offset: usize, bucket_start: usize) -> IResult<&[u8], Self> {
        assert!(bucket_start > 0);
        let (bytes, num_buckets) = le_u64(&input[bucket_start..])?;
        let (bytes, mut num_entries) = le_u64(bytes)?;
        let mut payload = input;
        let mut result = Self::new();
        while num_entries > 0 {
            let (bytes, entries) = result.parse_bucket(payload, num_entries)?;
            payload = bytes;
            num_entries = entries;
        }
        Ok((payload, result))
    }
pub ( crate ) fn parse ( input : & [ u8 ] , offset : usize , bucket_start : usize ) -> IResult < & [ u8 ] , Self > { assert ! ( bucket_start 0 ) ; let ( bytes , num_buckets ) = le_u64 ( & input [ bucket_start .. ] ) ? ; let ( bytes , mut num_entries ) = le_u64 ( bytes ) ? ; let mut payload = input ; let mut result = Self :: new ( ) ; while num_entries > 0 { let ( bytes , entries ) = result . parse_bucket ( payload , num_entries ) ? ; payload = bytes ; num_entries = entries ; } Ok ( ( payload , result ) ) }
buckets is the data the hash table buckets start at - the start of the `HashTable` in memory.
buckets is the data the hash table buckets start at - the start of the ` HashTable ` in memory .
input
&[u8]
offset
usize
bucket_start
usize
input
&[u8]
offset
usize
bucket_start
usize