Struct JsonWriter
The Json
Implements
Inherited Members
Namespace: Unity.Serialization.Json
Assembly: Unity.Serialization.dll
Syntax
public struct JsonWriter : IDisposable
Remarks
A method that attempts to write invalid JSON throws an Invalid
Constructors
JsonWriter(int, Allocator, JsonWriterOptions)
Initializes a new instance of Json
Declaration
public JsonWriter(int initialCapacity, Allocator label, JsonWriterOptions options = default)
Parameters
Type | Name | Description |
---|---|---|
int | initialCapacity | The initial capacity to use for the internal buffer. |
Allocator | label | The allocator label to use. |
Json |
options | Options to define custom behaviour. |
JsonWriter(Allocator, JsonWriterOptions)
Initializes a new instance of Json
Declaration
public JsonWriter(Allocator label, JsonWriterOptions options = default)
Parameters
Type | Name | Description |
---|---|---|
Allocator | label | The allocator label to use. |
Json |
options | Options to define custom behaviour. |
Methods
AsUnsafe()
Returns the unsafe writer which can be used in bursted jobs.
Declaration
public JsonWriter.Unsafe AsUnsafe()
Returns
Type | Description |
---|---|
Json |
The unsafe writer. |
Clear()
Clears the writer for re-use.
Declaration
public void Clear()
Dispose()
Declaration
public void Dispose()
ToString()
Declaration
public override string ToString()
Returns
Type | Description |
---|---|
string |
Overrides
WriteArrayScope(string)
Creates a collection scope which writes the beginning '"key": [' and ending ']' tokens.
Declaration
public JsonWriter.ArrayScope WriteArrayScope(string key = null)
Parameters
Type | Name | Description |
---|---|---|
string | key | The key to write. |
Returns
Type | Description |
---|---|
Json |
A disposable collection scope. |
WriteBeginArray(string)
Writes a keyed array token '"key": [' and opens an array scope.
Declaration
public void WriteBeginArray(string key = null)
Parameters
Type | Name | Description |
---|---|---|
string | key | The key to write. |
WriteBeginObject(string)
Writes a keyed object token '"key": [' and opens an object scope.
Declaration
public void WriteBeginObject(string key = null)
Parameters
Type | Name | Description |
---|---|---|
string | key | The key to write. |
WriteEndArray()
Writes the end array token ']' and closes the array scope.
Declaration
public void WriteEndArray()
WriteEndObject()
Writes the end object token '}' and closes the object scope.
Declaration
public void WriteEndObject()
WriteKey(string)
Writes the specified key to the buffer with the correct formatting.
Declaration
public void WriteKey(string key)
Parameters
Type | Name | Description |
---|---|---|
string | key | The key to write. |
WriteKeyValue(string, bool)
Writes the specified key-value pair with to the buffer with the correct formatting.
Declaration
public void WriteKeyValue(string key, bool value)
Parameters
WriteKeyValue(string, double)
Writes the specified key-value pair with to the buffer with the correct formatting.
Declaration
public void WriteKeyValue(string key, double value)
Parameters
WriteKeyValue(string, int)
Writes the specified key-value pair with to the buffer with the correct formatting.
Declaration
public void WriteKeyValue(string key, int value)
Parameters
WriteKeyValue(string, long)
Writes the specified key-value pair with to the buffer with the correct formatting.
Declaration
public void WriteKeyValue(string key, long value)
Parameters
WriteKeyValue(string, float)
Writes the specified key-value pair with to the buffer with the correct formatting.
Declaration
public void WriteKeyValue(string key, float value)
Parameters
WriteKeyValue(string, string)
Writes the specified key-value pair with to the buffer with the correct formatting.
Declaration
public void WriteKeyValue(string key, string value)
Parameters
WriteKeyValue(string, uint)
Writes the specified key-value pair with to the buffer with the correct formatting.
Declaration
public void WriteKeyValue(string key, uint value)
Parameters
WriteKeyValue(string, ulong)
Writes the specified key-value pair with to the buffer with the correct formatting.
Declaration
public void WriteKeyValue(string key, ulong value)
Parameters
WriteKeyValueLiteral(string, string)
Writes the specified key-value pair with to the buffer with the correct formatting.
Declaration
public void WriteKeyValueLiteral(string key, string value)
Parameters
WriteNull()
Writes the literal value 'null' to the buffer with the correct formatting.
Declaration
public void WriteNull()
WriteObjectScope(string)
Creates an object scope which writes the beginning '"key": {' and ending '}' tokens.
Declaration
public JsonWriter.ObjectScope WriteObjectScope(string key = null)
Parameters
Type | Name | Description |
---|---|---|
string | key | The key to write. |
Returns
Type | Description |
---|---|
Json |
A disposable object scope. |
WriteValue(bool)
Writes the specified boolean value to the buffer with the correct formatting.
Declaration
public void WriteValue(bool value)
Parameters
Type | Name | Description |
---|---|---|
bool | value | The value to write. |
WriteValue(char)
Writes the specified char value to the buffer with the correct formatting.
Declaration
public void WriteValue(char value)
Parameters
Type | Name | Description |
---|---|---|
char | value | The value to write. |
WriteValue(double)
Writes the specified 64-bit floating-point value to the buffer with the correct formatting.
Declaration
public void WriteValue(double value)
Parameters
Type | Name | Description |
---|---|---|
double | value | The value to write. |
WriteValue(int)
Writes the specified 32-bit signed integer value to the buffer with the correct formatting.
Declaration
public void WriteValue(int value)
Parameters
Type | Name | Description |
---|---|---|
int | value | The value to write. |
WriteValue(long)
Writes the specified 64-bit signed integer value to the buffer with the correct formatting.
Declaration
public void WriteValue(long value)
Parameters
Type | Name | Description |
---|---|---|
long | value | The value to write. |
WriteValue(float)
Writes the specified 32-bit floating-point value to the buffer with the correct formatting.
Declaration
public void WriteValue(float value)
Parameters
Type | Name | Description |
---|---|---|
float | value | The value to write. |
WriteValue(string)
Writes the specified string value to the buffer with the correct formatting.
Declaration
public void WriteValue(string value)
Parameters
Type | Name | Description |
---|---|---|
string | value | The value to write. |
WriteValue(uint)
Writes the specified 32-bit unsigned integer value to the buffer with the correct formatting.
Declaration
public void WriteValue(uint value)
Parameters
Type | Name | Description |
---|---|---|
uint | value | The value to write. |
WriteValue(ulong)
Writes the specified 64-bit unsigned integer value to the buffer with the correct formatting.
Declaration
public void WriteValue(ulong value)
Parameters
Type | Name | Description |
---|---|---|
ulong | value | The value to write. |
WriteValueLiteral(char)
Writes the specified char value to the buffer with the correct formatting.
Declaration
public void WriteValueLiteral(char value)
Parameters
Type | Name | Description |
---|---|---|
char | value | The value to write. |
WriteValueLiteral(string)
Writes the specified string value to the buffer with the correct formatting.
Declaration
public void WriteValueLiteral(string value)
Parameters
Type | Name | Description |
---|---|---|
string | value | The value to write. |