encode method
Implementation
String encode(Uint8List source) {
if (source.length == 0) {
return "";
}
List<int> digits = [0];
for (var i = 0; i < source.length; ++i) {
var carry = source[i];
for (var j = 0; j < digits.length; ++j) {
carry += digits[j] << 8;
digits[j] = carry % BASE!;
carry = carry ~/ BASE!;
}
while (carry > 0) {
digits.add(carry % BASE!);
carry = carry ~/ BASE!;
}
}
var string = "";
// deal with leading zeros
for (var k = 0; source[k] == 0 && k < source.length - 1; ++k) {
string += LEADER!;
}
// convert digits to a string
for (var q = digits.length - 1; q >= 0; --q) {
string += ALPHABET![digits[q]];
}
return string;
}