fn decode_compact_id(next_chr: char, mut param: String) -> Result<PartialResult<u64>, DecoderError> {
        // Add the next character
        param.push(next_chr);

        // Decode to a u64 if the 0x20 bit is not set
        if (Self::decode_base64(next_chr)? & 0x20) == 0 {
            let mut result = 0u64;

            while let Some(chr) = param.pop() {
                result <<= 5;
                result |= (Self::decode_base64(chr)? & !0x20) as u64;
            }

            Ok(PartialResult::FullMatch(result))
        } else {
            Ok(PartialResult::MatchMore(param))
        }
    }
///
/// Consumes characters until we have a u64 ID
///
Consumes characters until we have a u64 ID
Consumes characters until we have a u64 ID
fn decode_compact_id(next_chr: char, mut param: String) -> Result<PartialResult<u64>, DecoderError> {
        // Add the next character
        param.push(next_chr);
        // Decode to a u64 if the 0x20 bit is not set
        if (Self::decode_base64(next_chr)? & 0x20) == 0 {
            let mut result = 0u64;
            while let Some(chr) = param.pop() {
                result <<= 5;
                result |= (Self::decode_base64(chr)? & !0x20) as u64;
            }
            Ok(PartialResult::FullMatch(result))
        } else {
            Ok(PartialResult::MatchMore(param))
        }
    }
fn decode_compact_id ( next_chr : char , mut param : String ) -> Result < PartialResult < u64 > , DecoderError > { // Add the next character param . push ( next_chr ) ; // Decode to a u64 if the 0x20 bit is not set if ( Self :: decode_base64 ( next_chr ) ? & 0x20 ) == 0 { let mut result = 0u64 ; while let Some ( chr ) = param . pop ( ) { result <<= 5 ; result |= ( Self :: decode_base64 ( chr ) ? & ! 0x20 ) as u64 ; } Ok ( PartialResult :: FullMatch ( result ) ) } else { Ok ( PartialResult :: MatchMore ( param ) ) } }
Consumes characters until we have a u64 ID
Consumes characters until we have a u64 ID
next_chr
char
param
String