mirror of
				https://github.com/godotengine/godot.git
				synced 2025-11-03 23:21:15 +00:00 
			
		
		
		
	This makes it easier to spot syntax errors when editing the class reference. The schema is referenced locally so validation can still work offline. Each class XML's schema conformance is also checked on GitHub Actions.
		
			
				
	
	
		
			38 lines
		
	
	
	
		
			2.3 KiB
		
	
	
	
		
			XML
		
	
	
	
	
	
			
		
		
	
	
			38 lines
		
	
	
	
		
			2.3 KiB
		
	
	
	
		
			XML
		
	
	
	
	
	
<?xml version="1.0" encoding="UTF-8" ?>
 | 
						|
<class name="JSONParseResult" inherits="Reference" version="3.5" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../class.xsd">
 | 
						|
	<brief_description>
 | 
						|
		Data class wrapper for decoded JSON.
 | 
						|
	</brief_description>
 | 
						|
	<description>
 | 
						|
		Returned by [method JSON.parse], [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 [code]if json_result.error == OK[/code].
 | 
						|
	</description>
 | 
						|
	<tutorials>
 | 
						|
	</tutorials>
 | 
						|
	<methods>
 | 
						|
	</methods>
 | 
						|
	<members>
 | 
						|
		<member name="error" type="int" setter="set_error" getter="get_error" enum="Error">
 | 
						|
			The error type if the JSON source was not successfully parsed. See the [enum Error] constants.
 | 
						|
		</member>
 | 
						|
		<member name="error_line" type="int" setter="set_error_line" getter="get_error_line" default="-1">
 | 
						|
			The line number where the error occurred if the JSON source was not successfully parsed.
 | 
						|
		</member>
 | 
						|
		<member name="error_string" type="String" setter="set_error_string" getter="get_error_string" default="""">
 | 
						|
			The error message if the JSON source was not successfully parsed. See the [enum Error] constants.
 | 
						|
		</member>
 | 
						|
		<member name="result" type="Variant" setter="set_result" getter="get_result">
 | 
						|
			A [Variant] containing the parsed JSON. Use [method @GDScript.typeof] or the [code]is[/code] keyword to check if it is what you expect. For example, if the JSON source starts with curly braces ([code]{}[/code]), a [Dictionary] will be returned. If the JSON source starts with brackets ([code][][/code]), an [Array] will be returned.
 | 
						|
			[b]Note:[/b] The JSON specification does not define integer or float types, but only a [i]number[/i] type. Therefore, parsing a JSON text will convert all numerical values to [float] types.
 | 
						|
			[b]Note:[/b] 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:
 | 
						|
			    push_error("Unexpected results.")
 | 
						|
			[/codeblock]
 | 
						|
		</member>
 | 
						|
	</members>
 | 
						|
	<constants>
 | 
						|
	</constants>
 | 
						|
</class>
 |