метод encode
override
Преобразует value в строку JSON.
Если value содержит объекты, которые нельзя напрямую закодировать в строку JSON (значение, которое не является числом, логическим значением, строкой, null, списком или отображением со строковыми ключами), функция toEncodable используется для преобразования такого объекта в объект, который можно закодировать напрямую.
Если toEncodable не указана, по умолчанию используется функция, которая возвращает результат вызова .toJson() для объекта, который нельзя закодировать.
Реализация
String encode(Object? value, {Object? toEncodable(dynamic object)?}) {
toEncodable ??= _toEncodable;
if (toEncodable == null) return encoder.convert(value);
return JsonEncoder(toEncodable).convert(value);
}
© 2012 the Dart project authors
Licensed under the BSD 3-Clause "New" or "Revised" License.
https://api.dart.dev/stable/2.19.6/dart-convert/JsonCodec/encode.html