use super::AI01decoder;
pub trait AI01weightDecoder: AI01decoder {
fn encodeCompressedWeight(&self, buf: &mut String, currentPos: usize, weightSize: u32) {
let originalWeightNumeric = self
.getGeneralDecoder()
.extractNumericValueFromBitArray(currentPos, weightSize);
self.addWeightCode(buf, originalWeightNumeric);
let weightNumeric = self.checkWeight(originalWeightNumeric);
let mut currentDivisor = 100000;
for _i in 0..5 {
if weightNumeric / currentDivisor == 0 {
buf.push('0');
}
currentDivisor /= 10;
}
buf.push_str(&weightNumeric.to_string());
}
fn addWeightCode(&self, buf: &mut String, weight: u32);
fn checkWeight(&self, weight: u32) -> u32;
}