Libraries.Data.Formats.JavaScriptObjectNotationParser Documentation

This class is used by the JavaScriptObjectNotation object to read in JavaScriptObjectNotation (JSON) formatted data from text values or from disk. It can be used directly by an advanced user who wants to perform custom parsing.

Example Code

use Libraries.Data.Formats.JavaScriptObjectNotation
use Libraries.Data.Formats.JavaScriptObjectNotationDefaultListener
use Libraries.Data.Formats.JavaScriptObjectNotationLexer
use Libraries.Data.Formats.JavaScriptObjectNotationParser

private action ReadToObject(text value) returns JavaScriptObjectNotation
    if value = undefined
        return undefined
    end
    JavaScriptObjectNotationDefaultListener listen
    JavaScriptObjectNotationLexer lex
    JavaScriptObjectNotationParser parse

    lex:SetListener(listen)
    parse:SetListener(listen)
    lex:Read(value)
    parse:Parse(lex)
    return listen:GetObject()
end

Inherits from: Libraries.Language.Object

Summary

Actions Summary Table

ActionsDescription
Compare(Libraries.Language.Object object)This action compares two object hash codes and returns an integer.
Equals(Libraries.Language.Object object)This action determines if two objects are equal based on their hash code values.
GetHashCode()This action gets the hash code for an object.
GetListener()This method is used to get the JavaScriptObjectNotationListener object used by the parser.
Parse(Libraries.Data.Formats.JavaScriptObjectNotationLexer lexerLocal)This method is used to start the JavaScriptObjectNotation parser.
SetListener(Libraries.Data.Formats.JavaScriptObjectNotationListener listener)This method is used to set the JavaScriptObjectNotationListener object used by the parser.

Actions Documentation

Compare(Libraries.Language.Object object)

This action compares two object hash codes and returns an integer. The result is larger if this hash code is larger than the object passed as a parameter, smaller, or equal. In this case, -1 means smaller, 0 means equal, and 1 means larger. This action was changed in Quorum 7 to return an integer, instead of a CompareResult object, because the previous implementation was causing efficiency issues.

Example Code

Object o
        Object t
        integer result = o:Compare(t) //1 (larger), 0 (equal), or -1 (smaller)

Parameters

Return

integer: The Compare result, Smaller, Equal, or Larger.

Equals(Libraries.Language.Object object)

This action determines if two objects are equal based on their hash code values.

Example Code

use Libraries.Language.Object
        use Libraries.Language.Types.Text
        Object o
        Text t
        boolean result = o:Equals(t)

Parameters

Return

boolean: True if the hash codes are equal and false if they are not equal.

GetHashCode()

This action gets the hash code for an object.

Example Code

Object o
        integer hash = o:GetHashCode()

Return

integer: The integer hash code of the object.

GetListener()

This method is used to get the JavaScriptObjectNotationListener object used by the parser.

Example Code

use Libraries.Data.Formats.JavaScriptObjectNotationListener
    use Libraries.Data.Formats.JavaScriptObjectNotationParser

    action GetParserListener(JavaScriptObjectNotationParser parse) returns JavaScriptObjectNotationListener
        return parse:GetListener()
    end

Return

Libraries.Data.Formats.JavaScriptObjectNotationListener: The JavaScriptObjectNotationListener.

Parse(Libraries.Data.Formats.JavaScriptObjectNotationLexer lexerLocal)

This method is used to start the JavaScriptObjectNotation parser.

Example Code

use Libraries.Data.Formats.JavaScriptObjectNotation
    use Libraries.Data.Formats.JavaScriptObjectNotationDefaultListener
    use Libraries.Data.Formats.JavaScriptObjectNotationLexer
    use Libraries.Data.Formats.JavaScriptObjectNotationParser

    private action ReadToObject(text value) returns JavaScriptObjectNotation
        if value = undefined
            return undefined
        end
        JavaScriptObjectNotationDefaultListener listen
        JavaScriptObjectNotationLexer lex
        JavaScriptObjectNotationParser parse

        lex:SetListener(listen)
        parse:SetListener(listen)
        lex:Read(value)
        parse:Parse(lex)
        return listen:GetObject()
    end

Parameters

SetListener(Libraries.Data.Formats.JavaScriptObjectNotationListener listener)

This method is used to set the JavaScriptObjectNotationListener object used by the parser.

Example Code

use Libraries.Data.Formats.JavaScriptObjectNotation
    use Libraries.Data.Formats.JavaScriptObjectNotationDefaultListener
    use Libraries.Data.Formats.JavaScriptObjectNotationLexer
    use Libraries.Data.Formats.JavaScriptObjectNotationParser

    private action ReadToObject(text value) returns JavaScriptObjectNotation
        if value = undefined
            return undefined
        end
        JavaScriptObjectNotationDefaultListener listen
        JavaScriptObjectNotationLexer lex
        JavaScriptObjectNotationParser parse

        lex:SetListener(listen)
        parse:SetListener(listen)
        lex:Read(value)
        parse:Parse(lex)
        return listen:GetObject()
    end

Parameters