MCPcopy Create free account
hub / github.com/ciphermodelabs/ciphercore / fill_random_bytes

Method fill_random_bytes

ciphercore-base/src/random.rs:239–255  ·  view source on GitHub ↗
(&mut self, aes: &mut Crypter, mut buff: &mut [u8])

Source from the content-addressed store, hash-verified

237 }
238
239 fn fill_random_bytes(&mut self, aes: &mut Crypter, mut buff: &mut [u8]) -> Result<()> {
240 while !buff.is_empty() {
241 let need_bytes = buff.len();
242 let ready_bytes = &self.buffer[self.next_byte..self.current_buffer_size];
243 if ready_bytes.len() >= need_bytes {
244 buff.clone_from_slice(&ready_bytes[..need_bytes]);
245 self.next_byte += need_bytes;
246 break;
247 } else {
248 buff[..ready_bytes.len()].clone_from_slice(ready_bytes);
249 buff = &mut buff[ready_bytes.len()..];
250 self.next_byte = 0;
251 self.generate_one_batch(aes)?;
252 }
253 }
254 Ok(())
255 }
256
257 fn recursively_generate_value(&mut self, aes: &mut Crypter, tp: Type) -> Result<Value> {
258 match tp {

Callers 1

generate_random_bytesMethod · 0.80

Calls 2

is_emptyMethod · 0.80
generate_one_batchMethod · 0.80

Tested by

no test coverage detected