wdg-base32 0.2.1

The Base32 Data Encoding
Documentation
impl B32Encode<u64,String> for B32<String>{
    fn encode(data:u64)->String{
        let mut string:String=String::with_capacity(16);
        unsafe{
            let mut vector=&mut string.as_mut_vec();
            vector.resize(16,0);
            let pointer=vector.as_mut_ptr();
            let ptr_alphabet=ALPHABET32.as_ptr();
            *pointer.offset(00)=*ptr_alphabet.offset(((data>>59)&0b11111) as isize);
            *pointer.offset(01)=*ptr_alphabet.offset(((data>>54)&0b11111) as isize);
            *pointer.offset(02)=*ptr_alphabet.offset(((data>>49)&0b11111) as isize);
            *pointer.offset(03)=*ptr_alphabet.offset(((data>>44)&0b11111) as isize);
            *pointer.offset(04)=*ptr_alphabet.offset(((data>>34)&0b11111) as isize);
            *pointer.offset(05)=*ptr_alphabet.offset(((data>>29)&0b11111) as isize);
            *pointer.offset(06)=*ptr_alphabet.offset(((data>>24)&0b11111) as isize);
            *pointer.offset(07)=*ptr_alphabet.offset(((data>>19)&0b11111) as isize);
            *pointer.offset(08)=*ptr_alphabet.offset(((data>>14)&0b11111) as isize);
            *pointer.offset(09)=*ptr_alphabet.offset(((data>>09)&0b11111) as isize);
            *pointer.offset(10)=*ptr_alphabet.offset(((data>>04)&0b11111) as isize);
            *pointer.offset(11)=*ptr_alphabet.offset(((data<<01)&0b11111) as isize);
            *pointer.offset(12)=61;
            *pointer.offset(13)=61;
            *pointer.offset(14)=61;
            *pointer.offset(15)=61;
        }
        return string;
    }
}