• Narrows an object of type T to a JsonMap following a deep, brute-force conversion of the object's data to only consist of JSON-compatible values by performing a basic JSON clone on the object. This is preferable to using the weaker coerceJsonMap(object) to type-narrow an arbitrary object to a JsonMap when the object's source is unknown, but it comes with the increased overhead of performing the deep JSON clone to ensure runtime type safety. The use of JSON cloning guarantees type safety by omitting non-JSON-compatible elements from the resulting JSON data structure. Use coerceJsonMap(object) when the value object can be guaranteed to be JSON-compatible and only needs type coercion.

    Type Parameters

    • T extends object

    Parameters

    • value: T

      The object to convert.

    Returns JsonMap

    JsonCloneError If the object values contain circular references.

  • Narrows an object of type T to a JsonMap following a deep, brute-force conversion of the object's data to only consist of JSON-compatible values by performing a basic JSON clone on the object. This is preferable to using the weaker coerceJsonMap(object) to type-narrow an arbitrary object to a JsonMap when the object's source is unknown, but it comes with the increased overhead of performing the deep JSON clone to ensure runtime type safety. The use of JSON cloning guarantees type safety by omitting non-JSON-compatible elements from the resulting JSON data structure. Use coerceJsonMap(object) when the value object can be guaranteed to be JSON-compatible and only needs type coercion.

    Type Parameters

    • T extends object

    Parameters

    Returns Optional<JsonMap>

    JsonCloneError If the object values contain circular references.

  • Narrows an object of type T to a JsonMap following a deep, brute-force conversion of the object's data to only consist of JSON-compatible values by performing a basic JSON clone on the object. This is preferable to using the weaker coerceJsonMap(object) to type-narrow an arbitrary object to a JsonMap when the object's source is unknown, but it comes with the increased overhead of performing the deep JSON clone to ensure runtime type safety. The use of JSON cloning guarantees type safety by omitting non-JSON-compatible elements from the resulting JSON data structure. Use coerceJsonMap(object) when the value object can be guaranteed to be JSON-compatible and only needs type coercion.

    Type Parameters

    • T extends object

    Parameters

    • value: Nullable<T>

      The object to convert.

    • defaultValue: JsonMap

      The default to return if value was not defined.

    Returns JsonMap

    JsonCloneError If the object values contain circular references.