File tree Expand file tree Collapse file tree 1 file changed +8
-3
lines changed Expand file tree Collapse file tree 1 file changed +8
-3
lines changed Original file line number Diff line number Diff line change @@ -4,6 +4,11 @@ pub struct RLEToken {
4
4
count : u16 ,
5
5
}
6
6
7
+ const TOKEN_BYTE_COUNT : usize = 3 ;
8
+ const SYMBOL_OFFSET : usize = 0 ;
9
+ const COUNT_OFFSET : usize = 1 ;
10
+ const COUNT_LENGTH : usize = 2 ;
11
+
7
12
pub fn serialize_buffer ( array : Vec < u8 > ) -> Vec < u8 > {
8
13
let tokens = tokenize_buffer ( array) ;
9
14
@@ -49,15 +54,15 @@ pub fn deserialize_buffer(bytes: &[u8]) -> Vec<u8> {
49
54
50
55
let mut i = 0 ;
51
56
while i < bytes. len ( ) {
52
- let symbol = bytes[ i] ;
53
- let count_bytes = & bytes[ i + 1 ..i + 3 ] ;
57
+ let symbol = bytes[ i + SYMBOL_OFFSET ] ;
58
+ let count_bytes = & bytes[ i + COUNT_OFFSET ..i + COUNT_OFFSET + COUNT_LENGTH ] ;
54
59
let count = u16:: from_le_bytes ( count_bytes. try_into ( ) . unwrap ( ) ) ;
55
60
56
61
for _ in 0 ..count {
57
62
vec. push ( symbol) ;
58
63
}
59
64
60
- i += 3 ;
65
+ i += TOKEN_BYTE_COUNT ;
61
66
}
62
67
63
68
vec
You can’t perform that action at this time.
0 commit comments