# encode method

String encode (Object value, { dynamic toEncodable(dynamic object) })
override

Converts `value` to a JSON string.

If value contains objects that are not directly encodable to a JSON string (a value that is not a number, boolean, string, null, list or a map with string keys), the `toEncodable` function is used to convert it to an object that must be directly encodable.

If `toEncodable` is omitted, it defaults to a function that returns the result of calling `.toJson()` on the unencodable object.

## Implementation

    String encode(Object value, {toEncodable(object)}) {
      toEncodable ??= _toEncodable;
      if (toEncodable == null) return encoder.convert(value);
      return JsonEncoder(toEncodable).convert(value);
    }