Tiny performance boost.

This commit is contained in:
2018-01-10 10:28:44 +01:00
parent 8fd169ed3f
commit ed35033e23

View File

@@ -53,7 +53,7 @@ impl ByteNgram {
5 => (self.0 >> 8 & 0x0000_00FF_FFFF_FF00) + (self.dim() - 1) as u64,
6 => (self.0 >> 8 & 0x0000_FFFF_FFFF_FF00) + (self.dim() - 1) as u64,
7 => (self.0 >> 8 & 0x00FF_FFFF_FFFF_FF00) + (self.dim() - 1) as u64,
_ => 0,
_ => unreachable!(),
})
}
@@ -65,7 +65,7 @@ impl ByteNgram {
5 => (self.0 & 0x0000_00FF_FFFF_FF00) + (self.dim() - 1) as u64,
6 => (self.0 & 0x0000_FFFF_FFFF_FF00) + (self.dim() - 1) as u64,
7 => (self.0 & 0x00FF_FFFF_FFFF_FF00) + (self.dim() - 1) as u64,
_ => 0,
_ => unreachable!(),
})
}
}
@@ -119,14 +119,14 @@ impl<R: Read> Iterator for ByteNgramReader<R> {
self.token += u64::from(byte);
self.token <<= 8;
if self.count < 7 {
if self.count < 6 {
self.count += 1;
self.index = self.count;
self.mask = (256u64.pow(self.count as u32) - 1) << 8;
} else {
self.index = 7;
self.mask = 0xFFFF_FFFF_FFFF_FFFF;
self.mask = 0xFFFF_FFFF_FFFF_FF00;
}
} else {
return None;