encode method
Implementation
String encode(Uint8List source) {
if (source.isEmpty) {
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;
}