Data class wrapper for decoded JSON.
    public class JSONParseResult : Reference

Returned by JSON.Parse(string), JSONParseResult contains the decoded JSON or error information if the JSON source wasn’t successfully parsed. You can check if the JSON source was successfully parsed with if json_result.error == OK.

Inheritance Chain

Constructors

    public JSONParseResult()

Properties

    public Error Error { get; set; }

The error type if the JSON source was not successfully parsed. See the [@GlobalScope] ERR_* constants.

    public int ErrorLine { get; set; }

The line number where the error occurred if JSON source was not successfully parsed.

    public string ErrorString { get; set; }

The error message if JSON source was not successfully parsed. See the [@GlobalScope] ERR_* constants.

    public object Result { get; set; }

A Variant containing the parsed JSON. Use [method @GDScript.typeof] or the is keyword to check if it is what you expect. For example, if the JSON source starts with curly braces ({}), a Dictionary will be returned. If the JSON source starts with braces ([]), an Array will be returned.

Note: The JSON specification does not define integer or float types, but only a number type. Therefore, parsing a JSON text will convert all numerical values to float types.

Note: JSON objects do not preserve key order like Godot dictionaries, thus, you should not rely on keys being in a certain order if a dictionary is constructed from JSON. In contrast, JSON arrays retain the order of their elements:

[codeblock]

var p = JSON.parse(‘[“hello”, “world”, “!”]’)

if typeof(p.result) == TYPE_ARRAY:

print(p.result[0]) # Prints “hello”

else:

print(“unexpected results”)

[/codeblock]

Methods

    [Obsolete("GetError is deprecated. Use the Error property instead.")]
    public Error GetError()

Getter for Error

    [Obsolete("GetErrorLine is deprecated. Use the ErrorLine property instead.")]
    public int GetErrorLine()

Getter for ErrorLine

    [Obsolete("GetErrorString is deprecated. Use the ErrorString property instead.")]
    public string GetErrorString()

Getter for ErrorString

    [Obsolete("GetResult is deprecated. Use the Result property instead.")]
    public object GetResult()

Getter for Result

    [Obsolete("SetError is deprecated. Use the Error property instead.")]
    public void SetError(Error error)

Setter for Error

    [Obsolete("SetErrorLine is deprecated. Use the ErrorLine property instead.")]
    public void SetErrorLine(int errorLine)

Setter for ErrorLine

    [Obsolete("SetErrorString is deprecated. Use the ErrorString property instead.")]
    public void SetErrorString(string errorString)

Setter for ErrorString

    [Obsolete("SetResult is deprecated. Use the Result property instead.")]
    public void SetResult(object result)

Setter for Result

Tags: