summaryrefslogtreecommitdiff
path: root/doc/classes/JSON.xml
blob: a9fb50c262fa848e44ae8b14f1d96bf20d327a8b (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
<?xml version="1.0" encoding="UTF-8" ?>
<class name="JSON" inherits="Object" version="4.0">
	<brief_description>
		Helper class for parsing JSON data.
	</brief_description>
	<description>
		Helper class for parsing JSON data. For usage example and other important hints, see [JSONParseResult].
	</description>
	<tutorials>
	</tutorials>
	<methods>
		<method name="parse">
			<return type="JSONParseResult">
			</return>
			<argument index="0" name="json" type="String">
			</argument>
			<description>
				Parses a JSON-encoded string and returns a [JSONParseResult] containing the result.
			</description>
		</method>
		<method name="print">
			<return type="String">
			</return>
			<argument index="0" name="value" type="Variant">
			</argument>
			<argument index="1" name="indent" type="String" default="&quot;&quot;">
			</argument>
			<argument index="2" name="sort_keys" type="bool" default="false">
			</argument>
			<description>
				Converts a [Variant] var to JSON text and returns the result. Useful for serializing data to store or send over the network.
				[b]Note:[/b] The JSON specification does not define integer or float types, but only a [i]number[/i] type. Therefore, converting a Variant to JSON text will convert all numerical values to [float] types.
				Use [code]indent[/code] parameter to pretty print the output.
				[b]Example output:[/b]
				[codeblock]
				## JSON.print(my_dictionary)
				{"name":"my_dictionary","version":"1.0.0","entities":[{"name":"entity_0","value":"value_0"},{"name":"entity_1","value":"value_1"}]}

				## JSON.print(my_dictionary, "\t")
				{
				        "name": "my_dictionary",
				        "version": "1.0.0",
				        "entities": [
				                {
				                        "name": "entity_0",
				                        "value": "value_0"
				                },
				                {
				                        "name": "entity_1",
				                        "value": "value_1"
				                }
				        ]
				}
				[/codeblock]
			</description>
		</method>
	</methods>
	<constants>
	</constants>
</class>