Difference between revisions of "JSON INVALID"

From Second Life Wiki
Jump to navigation Jump to search
(Created page with "{{LSL Constant |name=JSON_INVALID |type=string |value=Special Unicode Character |desc=A return value that indicates an invalid 'type' was specified to the llList2Json function. |…")
 
m (<lsl> tag to <source>)
 
(7 intermediate revisions by 3 users not shown)
Line 2: Line 2:
|name=JSON_INVALID
|name=JSON_INVALID
|type=string
|type=string
|value=Special Unicode Character
|value="﷐"
|desc=A return value that indicates an invalid 'type' was specified to the llList2Json function.
|dvalue={{HoverText|"﷐"|Special Unicode Character&#x000d;Unicode:&#x0009;U+FDDO&#x000d;HTML:&#x0009;&amp;#xFDD0;&#x000d;llUnescapeUrl({{String|%EF%B7%90}});}}
|examples
|desc=A return value that indicates an invalid 'type' was specified to the [[llList2Json]] function.<br/>Also a return value for [[llJsonValueType]] function indicating the data type of a given address specifier in a given string-serialized JSON object.
<br/>Also a return value for [[llJsonGetValue]] to signify a specifier list attempting to access a nonexistent location within a Json text (see Examples).
|constants={{LSL Constants/JSON}}
|examples=<source lang="lsl2">// Using JSON_INVALID to iterate over a json array
// of unknown length
string jsonText = "[1,2,3,5,6]";
 
default
{
    touch_start(integer total_number)
    {
        string item;
        integer iter;
        while ((item = llJsonGetValue(jsonText,[iter++])) != JSON_INVALID)
        {
            llOwnerSay(item); // "1","2","3","5","6"
        }
    }
}</source>
|caveats=*Do '''not''' use JSON_INVALID with the [[llList2Json]] or [[llJsonSetValue]] functions. Otherwise noncompliant, invalid Json text will result.
 
|functions=
|functions=
{{LSL DefineRow||[[llList2Json]]|}}
{{LSL DefineRow||[[llList2Json]]|}}
{{LSL DefineRow||[[llJsonValueType]]|}}
|events
|events
|cat1
|cat1=JSON
|cat2
|cat2
|cat3
|cat3

Latest revision as of 14:49, 23 January 2015

Description

Constant: string JSON_INVALID = "﷐";

The string constant JSON_INVALID has the value "﷐"

A return value that indicates an invalid 'type' was specified to the llList2Json function.
Also a return value for llJsonValueType function indicating the data type of a given address specifier in a given string-serialized JSON object.
Also a return value for llJsonGetValue to signify a specifier list attempting to access a nonexistent location within a Json text (see Examples).

Caveats

  • Do not use JSON_INVALID with the llList2Json or llJsonSetValue functions. Otherwise noncompliant, invalid Json text will result.


Related Articles

Constants

Type Flags Value Unicode Integer URL Encoded HTML Encoded Description
JSON_INVALID U+FDDO 64976 "%EF%B7%90" &#xFDD0; Value returned when inputs are not well formed.
JSON_OBJECT U+FDD1 64977 "%EF%B7%91" &#xFDD1;
JSON_ARRAY U+FDD2 64978 "%EF%B7%92" &#xFDD2;
JSON_NUMBER U+FDD3 64979 "%EF%B7%93" &#xFDD3;
JSON_STRING U+FDD4 64980 "%EF%B7%94" &#xFDD4;
JSON_NULL U+FDD5 64981 "%EF%B7%95" &#xFDD5;
JSON_TRUE U+FDD6 64982 "%EF%B7%96" &#xFDD6;
JSON_FALSE U+FDD7 64983 "%EF%B7%97" &#xFDD7;
JSON_DELETE U+FDD8 64984 "%EF%B7%98" &#xFDD8; Used with llJsonSetValue to remove a key-value pair.

Functions

•  llList2Json
•  llJsonValueType

Examples

// Using JSON_INVALID to iterate over a json array
// of unknown length
string jsonText = "[1,2,3,5,6]";

default
{
    touch_start(integer total_number)
    {
        string item;
        integer iter;
        while ((item = llJsonGetValue(jsonText,[iter++])) != JSON_INVALID)
        {
            llOwnerSay(item); // "1","2","3","5","6"
        }
    }
}

Deep Notes

Search JIRA for related Issues

Signature

string JSON_INVALID = "﷐";