writeString method
Write the given string value and return its offset.
Dart strings are UTF-16 but must be stored as UTF-8 in FlatBuffers.
If the given string consists only of ASCII characters, you can indicate
enable asciiOptimization. In this mode, writeString() first tries to
copy the ASCII string directly to the output buffer and if that fails
(because there are no-ASCII characters in the string) it falls back and to
the default UTF-16 -> UTF-8 conversion (with slight performance penalty).
Implementation
int writeString(String value, {bool asciiOptimization = false}) {
assert(!_inVTable);
if (_strings != null) {
return _strings!
.putIfAbsent(value, () => _writeString(value, asciiOptimization));
} else {
return _writeString(value, asciiOptimization);
}
}