Module json5

Class JSONOptions


  • public class JSONOptions
    extends java.lang.Object
    This class used is used to customize the behaviour of parsing and stringifying
    Since:
    1.1.0
    Author:
    SyntaxError404
    • Method Detail

      • isParseInstants

        public boolean isParseInstants()
        Whether or not instants should be parsed as such. If this is false, isParseStringInstants() and isParseUnixInstants() are ignored

        Default: true

        This is a Parser-only option

        Returns:
        whether or not instants should be parsed
        Since:
        1.1.0
      • isParseStringInstants

        public boolean isParseStringInstants()
        Whether or not string instants (according to RFC 3339, Section 5.6) should be parsed as such. Ignored if isParseInstants() is false

        Default: true

        This is a Parser-only option

        Returns:
        whether or not string instants should be parsed
        Since:
        1.1.0
      • isParseUnixInstants

        public boolean isParseUnixInstants()
        Whether or not unix instants (integers) should be parsed as such. Ignored if isParseInstants() is false

        Default: true

        This is a Parser-only option

        Returns:
        whether or not unix instants should be parsed
        Since:
        1.1.0
      • isStringifyUnixInstants

        public boolean isStringifyUnixInstants()
        Whether or not instants should be stringifyed as unix timestamps. If this is false, instants will be stringifyed as strings (according to RFC 3339, Section 5.6).

        Default: false

        This is a Stringify-only option

        Returns:
        whether or not instants should be stringifyed as unix timestamps
        Since:
        1.1.0
      • isAllowNaN

        public boolean isAllowNaN()
        Whether or not NaN should be allowed as a number

        Default: true

        Returns:
        whether or not NaN should be allowed
        Since:
        1.1.0
      • isAllowInfinity

        public boolean isAllowInfinity()
        Whether or not Infinity should be allowed as a number. This applies to both +Infinity and -Infinity

        Default: true

        Returns:
        whether or not Infinity should be allowed
        Since:
        1.1.0
      • isAllowInvalidSurrogates

        public boolean isAllowInvalidSurrogates()
        Whether or not invalid unicode surrogate pairs should be allowed

        Default: true

        This is a Parser-only option

        Returns:
        whether or not invalid unicode surrogate pairs should be allowed
        Since:
        1.1.0
      • isQuoteSingle

        public boolean isQuoteSingle()
        Whether or not string should be single-quoted (') instead of double-quoted ("). This also includes a JSONObject's member names

        Default: false

        This is a Stringify-only option

        Returns:
        whether or not string should be single-quoted
        Since:
        1.1.0
      • getDefaultOptions

        @NonNull
        public static @NonNull JSONOptions getDefaultOptions()
        Returns the default options for parsing and stringifying
        Returns:
        the default options
        Since:
        1.1.0
      • setDefaultOptions

        public static void setDefaultOptions​(@NonNull
                                             @NonNull JSONOptions defaultOptions)
        Sets the default options for parsing and stringifying. Must not be null
        Parameters:
        defaultOptions - the new default options
        Since:
        1.1.0