Dart API Referencedart:jsonJsonUnsupportedObjectError

JsonUnsupportedObjectError class

Error thrown by JSON serialization if an object cannot be serialized.

The unsupportedObject field holds that object that failed to be serialized.

If an isn't directly serializable, the serializer calls the 'toJson' method on the object. If that call fails, the error will be stored in the cause field. If the call returns an object that isn't directly serializable, the cause will be null.

class JsonUnsupportedObjectError {
  // TODO: proper base class.
  /** The object that could not be serialized. */
  final unsupportedObject;
  /** The exception thrown by object's [:toJson:] method, if any. */
  final cause;
  JsonUnsupportedObjectError(this.unsupportedObject) : cause = null;
  JsonUnsupportedObjectError.withCause(this.unsupportedObject, this.cause);

  String toString() {
    if (cause != null) {
      return "Calling toJson method on object failed.";
    } else {
      return "Object toJson method returns non-serializable value.";
    }
  }
}

Constructors

new JsonUnsupportedObjectError(unsupportedObject) #

JsonUnsupportedObjectError(this.unsupportedObject) : cause = null;

new JsonUnsupportedObjectError.withCause(unsupportedObject, cause) #

JsonUnsupportedObjectError.withCause(this.unsupportedObject, this.cause);

Properties

final cause #

The exception thrown by object's toJson method, if any.

final cause;

final unsupportedObject #

The object that could not be serialized.

final unsupportedObject;

Methods

String toString() #

Returns a string representation of this object.

docs inherited from Object
String toString() {
  if (cause != null) {
    return "Calling toJson method on object failed.";
  } else {
    return "Object toJson method returns non-serializable value.";
  }
}