MCPcopy Create free account
hub / github.com/NodeDB-Lab/nodedb / encode_timestamp_dod

Method encode_timestamp_dod

nodedb-codec/src/gorilla.rs:85–101  ·  view source on GitHub ↗
(&mut self, dod: i64)

Source from the content-addressed store, hash-verified

83 }
84
85 fn encode_timestamp_dod(&mut self, dod: i64) {
86 if dod == 0 {
87 self.buf.write_bit(false);
88 } else if (-64..=63).contains(&dod) {
89 self.buf.write_bits(0b10, 2);
90 self.buf.write_bits((dod as u64) & 0x7F, 7);
91 } else if (-256..=255).contains(&dod) {
92 self.buf.write_bits(0b110, 3);
93 self.buf.write_bits((dod as u64) & 0x1FF, 9);
94 } else if (-2048..=2047).contains(&dod) {
95 self.buf.write_bits(0b1110, 4);
96 self.buf.write_bits((dod as u64) & 0xFFF, 12);
97 } else {
98 self.buf.write_bits(0b1111, 4);
99 self.buf.write_bits(dod as u64, 64);
100 }
101 }
102
103 fn encode_value_xor(&mut self, xor: u64) {
104 if xor == 0 {

Callers 1

encodeMethod · 0.80

Calls 3

write_bitMethod · 0.80
write_bitsMethod · 0.80
containsMethod · 0.45

Tested by

no test coverage detected