接口
interface JsonDeserializable<T>
public interface JsonDeserializable<T> {
static func fromJson(r: JsonReader): T
}
功能:此接口用于实现从 JsonReader 中读取一个仓颉对象。
支持的对象类型包括:
-
基本数据类型:整数类型、浮点类型、布尔类型、字符串类型。
-
DateTime 类型。
static func fromJson(JsonReader)
static func fromJson(r: JsonReader): T
功能:从参数 r
指定的 JsonReader 实例中读取一个 T
类型对象。
参数:
- r: JsonReader - 读取反序列化结果的 JsonReader 实例。
返回值:
- T -
T
类型的实例。
异常:
- IllegalStateException - 如果输入流的 JSON 数据不符合格式,抛出异常。
extend BigInt <: JsonDeserializable<BigInt>
extend BigInt <: JsonDeserializable<BigInt>
功能:为 BigInt 类型实现 JsonDeserializable 接口。
父类型:
static func fromJson(JsonReader)
public static func fromJson(r: JsonReader): BigInt
功能:从 JsonReader 中读取一个 BigInt。
参数:
- r: JsonReader - 读取反序列化结果的 JsonReader 实例。
返回值:
- BigInt - BigInt 类型的实例。
extend Bool <: JsonDeserializable<Bool>
extend Bool <: JsonDeserializable<Bool>
功能:为 Bool 类型实现 JsonDeserializable 接口。
父类型:
static func fromJson(JsonReader)
public static func fromJson(r: JsonReader): Bool
功能:从 JsonReader 中读取一个 Bool。
参数:
- r: JsonReader - 读取反序列化结果的 JsonReader 实例。
返回值:
- Bool - Bool 类型的实例。
extend DateTime <: JsonDeserializable<DateTime>
extend DateTime <: JsonDeserializable<DateTime>
功能:为 DateTime 类型实现 JsonDeserializable 接口。
父类型:
static func fromJson(JsonReader)
public static func fromJson(r: JsonReader): DateTime
功能:从 JsonReader 中读取一个 DateTime 实例。
该函数将会把读取到的字符串按照 RFC3339
的规范解析,可包含小数秒格式,函数的行为参考DateTime的func parse(String)。
参数:
- r: JsonReader - 读取反序列化结果的 JsonReader 实例。
返回值:
- DateTime - DateTime 类型的实例。
异常:
- TimeParseException - 无法正常解析时,抛出异常。
extend Decimal <: JsonDeserializable<Decimal>
extend Decimal <: JsonDeserializable<Decimal>
功能:为 Decimal 类型实现 JsonDeserializable 接口。
父类型:
static func fromJson(JsonReader)
public static func fromJson(r: JsonReader): Decimal
功能:从 JsonReader 中读取一个 Decimal。
参数:
- r: JsonReader - 读取反序列化结果的 JsonReader 实例。
返回值:
- Decimal - Decimal 类型的实例。
extend Float16 <: JsonDeserializable<Float16>
extend Float16 <: JsonDeserializable<Float16>
功能:为 Float16 类型实现 JsonDeserializable 接口。
父类型:
static func fromJson(JsonReader)
public static func fromJson(r: JsonReader): Float16
功能:从 JsonReader 中读取一个 Float16。
参数:
- r: JsonReader - 读取反序列化结果的 JsonReader 实例。
返回值:
- Float16 - Float16 类型的实例。
异常:
- OverflowException - 读取的数据超过范围时,抛出异常。
extend Float32 <: JsonDeserializable<Float32>
extend Float32 <: JsonDeserializable<Float32>
功能:为 Float32 类型实现 JsonDeserializable 接口。
父类型:
static func fromJson(JsonReader)
public static func fromJson(r: JsonReader): Float32
功能:从 JsonReader 中读取一个 Float32。
参数:
- r: JsonReader - 读取反序列化结果的 JsonReader 实例。
返回值:
- Float32 - Float32 类型的实例。
异常:
- OverflowException - 读取的数据超过范围时,抛出异常。
extend Float64 <: JsonDeserializable<Float64>
extend Float64 <: JsonDeserializable<Float64>
功能:为 Float64 类型实现 JsonDeserializable 接口。
父类型:
static func fromJson(JsonReader)
public static func fromJson(r: JsonReader): Float64
功能:从 JsonReader 中读取一个 Float64。
参数:
- r: JsonReader - 读取反序列化结果的 JsonReader 实例。
返回值:
- Float64 - Float64 类型的实例。
异常:
- OverflowException - 读取的数据超过范围时,抛出异常。
extend String <: JsonDeserializable<String>
extend String <: JsonDeserializable<String>
功能:为 String 类型实现 JsonDeserializable 接口。
父类型:
static func fromJson(JsonReader)
public static func fromJson(r: JsonReader): String
功能:从 JsonReader 中读取一个 String。
根据下一个 JsonToken
的不同,String
的反序列化结果将会不同:
- 当下一个
JsonToken
是JsonString
时, 反序列化过程会按照标准ECMA-404 The JSON Data Interchange Standard对读到的String
进行转义。 - 当下一个
JsonToken
是JsonNumber
JsonBool
JsonNull
其中一个时,将会读取下一个value
字段的原始字符串并返回。 - 当下一个
JsonToken
是其它类型时,调用此接口会抛异常。
参数:
- r: JsonReader - 读取反序列化结果的 JsonReader 实例。
返回值:
- String - String 类型的实例。
extend Int16 <: JsonDeserializable<Int16>
extend Int16 <: JsonDeserializable<Int16>
功能:为 Int16 类型实现 JsonDeserializable 接口。
父类型:
static func fromJson(JsonReader)
public static func fromJson(r: JsonReader): Int16
功能:从 JsonReader 中读取一个 Int16。
参数:
- r: JsonReader - 读取反序列化结果的 JsonReader 实例。
返回值:
- Int16 - Int16 类型的实例。
异常:
- OverflowException - 读取的数据超过范围时,抛出异常。
extend Int32 <: JsonDeserializable<Int32>
extend Int32 <: JsonDeserializable<Int32>
功能:为 Int32 类型实现 JsonDeserializable 接口。
父类型:
static func fromJson(JsonReader)
public static func fromJson(r: JsonReader): Int32
功能:从 JsonReader 中读取一个 Int32。
参数:
- r: JsonReader - 读取反序列化结果的 JsonReader 实例。
返回值:
- Int32 - Int32 类型的实例。
异常:
- OverflowException - 读取的数据超过范围时,抛出异常。
extend Int64 <: JsonDeserializable<Int64>
extend Int64 <: JsonDeserializable<Int64>
功能:为 Int64 类型实现 JsonDeserializable 接口。
父类型:
static func fromJson(JsonReader)
public static func fromJson(r: JsonReader): Int64
功能:从 JsonReader 中读取一个 Int64。
参数:
- r: JsonReader - 读取反序列化结果的 JsonReader 实例。
返回值:
- Int64 - Int64 类型的实例。
异常:
- OverflowException - 读取的数据超过范围时,抛出异常。
extend Int8 <: JsonDeserializable<Int8>
extend Int8 <: JsonDeserializable<Int8>
功能:为 Int8 类型实现 JsonDeserializable 接口。
父类型:
static func fromJson(JsonReader)
public static func fromJson(r: JsonReader): Int8
功能:从 JsonReader 中读取一个 Int8。
参数:
- r: JsonReader - 读取反序列化结果的 JsonReader 实例。
返回值:
- Int8 - Int8 类型的实例。
异常:
- OverflowException - 读取的数据超过范围时,抛出异常。
extend IntNative <: JsonDeserializable<IntNative>
extend IntNative <: JsonDeserializable<IntNative>
功能:为 IntNative 类型实现 JsonDeserializable 接口。
父类型:
static func fromJson(JsonReader)
public static func fromJson(r: JsonReader): IntNative
功能:从 JsonReader 中读取一个 IntNative。
参数:
- r: JsonReader - 读取反序列化结果的 JsonReader 实例。
返回值:
- IntNative - IntNative 类型的实例。
异常:
- OverflowException - 读取的数据超过范围时,抛出异常。
extend UInt16 <: JsonDeserializable<UInt16>
extend UInt16 <: JsonDeserializable<UInt16>
功能:为 UInt16 类型实现 JsonDeserializable 接口。
父类型:
static func fromJson(JsonReader)
public static func fromJson(r: JsonReader): UInt16
功能:从 JsonReader 中读取一个 UInt16。
参数:
- r: JsonReader - 读取反序列化结果的 JsonReader 实例。
返回值:
- UInt16 - UInt16 类型的实例。
异常:
- OverflowException - 读取的数据超过范围时,抛出异常。
extend UInt32 <: JsonDeserializable<UInt32>
extend UInt32 <: JsonDeserializable<UInt32>
功能:为 UInt32 类型实现 JsonDeserializable 接口。
父类型:
static func fromJson(JsonReader)
public static func fromJson(r: JsonReader): UInt32
功能:从 JsonReader 中读取一个 UInt32。
参数:
- r: JsonReader - 读取反序列化结果的 JsonReader 实例。
返回值:
- UInt32 - UInt32 类型的实例。
异常:
- OverflowException - 读取的数据超过范围时,抛出异常。
extend UInt64 <: JsonDeserializable<UInt64 >
extend UInt64 <: JsonDeserializable<UInt64>
功能:为 UInt64 类型实现 JsonDeserializable 接口。
父类型:
static func fromJson(JsonReader)
public static func fromJson(r: JsonReader): UInt64
功能:从 JsonReader 中读取一个 UInt64。
参数:
- r: JsonReader - 读取反序列化结果的 JsonReader 实例。
返回值:
- UInt64 - UInt64 类型的实例。
异常:
- OverflowException - 读取的数据超过范围时,抛出异常。
extend UInt8 <: JsonDeserializable<UInt8>
extend UInt8 <: JsonDeserializable<UInt8>
功能:为 UInt8 类型实现 JsonDeserializable 接口。
父类型:
static func fromJson(JsonReader)
public static func fromJson(r: JsonReader): UInt8
功能:从 JsonReader 中读取一个 UInt8。
参数:
- r: JsonReader - 读取反序列化结果的 JsonReader 实例。
返回值:
- UInt8 - UInt8 类型的实例。
异常:
- OverflowException - 读取的数据超过范围时,抛出异常。
extend UIntNative <: JsonDeserializable<UIntNative>
extend UIntNative <: JsonDeserializable<UIntNative>
功能:为 UIntNative 类型实现 JsonDeserializable 接口。
父类型:
static func fromJson(JsonReader)
public static func fromJson(r: JsonReader): UIntNative
功能:从 JsonReader 中读取一个 UIntNative。
参数:
- r: JsonReader - 读取反序列化结果的 JsonReader 实例。
返回值:
- UIntNative - UIntNative 类型的实例。
异常:
- OverflowException - 读取的数据超过范围时,抛出异常。
extend<T> Array<T> <: JsonDeserializable<Array<T>> where T <: JsonSerializable
extend<T> Array<T> <: JsonDeserializable<Array<T>> where T <: JsonDeserializable<T>
功能:为 Array<T> 类型实现 JsonDeserializable 接口。
父类型:
static func fromJson(JsonReader)
public static func fromJson(r: JsonReader): Array<T>
功能:从 JsonReader 中读取一个 Array。
参数:
- r: JsonReader - 读取反序列化结果的 JsonReader 实例。
返回值:
- Array<T> - Array 类型的实例。
extend<T> ArrayList<T> <: JsonDeserializable<ArrayList<T>> where T <: JsonSerializable
extend<T> ArrayList<T> <: JsonDeserializable<ArrayList<T>> where T <: JsonDeserializable<T>
功能:为 ArrayList 类型实现 JsonDeserializable 接口。
父类型:
static func fromJson(JsonReader)
public static func fromJson(r: JsonReader): ArrayList<T>
功能:从 JsonReader 中读取一个 ArrayList。
参数:
- r: JsonReader - 读取反序列化结果的 JsonReader 实例。
返回值:
- ArrayList <T> - ArrayList 类型的实例。
extend<T> Option <T> <: JsonDeserializable<Option<T>> where T <: JsonSerializable
extend<T> Option<T> <: JsonDeserializable<Option<T>> where T <: JsonDeserializable<T>
功能:为 Option 类型实现 JsonDeserializable 接口。
父类型:
static func fromJson(JsonReader)
public static func fromJson(r: JsonReader): Option<T>
功能:从 JsonReader 中读取一个Option。
参数:
- r: JsonReader - 读取反序列化结果的 JsonReader 实例。
返回值:
- Option<T> - Option 类型的实例。
extend<T> HashMap<String, T> <: JsonDeserializable<HashMap<String, T>> where T <: JsonDeserializable<T>
extend<T> HashMap<String, T> <: JsonDeserializable<HashMap<String, T>> where T <: JsonDeserializable<T>
功能:为 HashMap 类型实现 JsonDeserializable 接口。
父类型:
static func fromJson(JsonReader)
public static func fromJson(r: JsonReader): HashMap<K, V>
功能:从 JsonReader 中读取一个 HashMap。
参数:
- r: JsonReader - 读取反序列化结果的 JsonReader 实例。
返回值:
- HashMap<K, V> - HashMap<K, V> 类型的实例。
interface JsonSerializable
public interface JsonSerializable {
func toJson(w: JsonWriter): Unit
}
功能:为类型提供序列化到 JSON 数据流的接口。
与 JsonWriter 搭配使用,JsonWriter 可以将实现了 JsonSerializable 接口的类型写入到 Stream 中。
func toJson(JsonWriter)
func toJson(w: JsonWriter): Unit
功能:将实现了 JsonSerializable 接口的类型写入参数 w
指定的 JsonWriter 实例中。
参数:
- w: JsonWriter - 写入序列化结果的 JsonWriter 实例。
extend BigInt <: JsonSerializable
extend BigInt <: JsonSerializable
功能:为BigInt类型提供序列化到 JSON 数据流的接口。
父类型:
func toJson(JsonWriter)
public func toJson(w: JsonWriter): Unit
功能:将BigInt类型写入参数 w
指定的 JsonWriter 实例中。
参数:
- w: JsonWriter - 写入序列化结果的 JsonWriter 实例。
extend Bool <: JsonSerializable
extend Bool <: JsonSerializable
功能:为Bool类型提供序列化到 JSON 数据流的接口。
父类型:
func toJson(JsonWriter)
public func toJson(w: JsonWriter): Unit
功能:将Bool类型写入参数 w
指定的 JsonWriter 实例中。
参数:
- w: JsonWriter - 写入序列化结果的 JsonWriter 实例。
extend DateTime <: JsonSerializable
extend DateTime <: JsonSerializable
功能:为 DateTime 类型实现 JsonSerializable 接口。
父类型:
func toJson(JsonWriter)
public func toJson(w: JsonWriter): Unit
功能:提供 DateTime 类型序列化到流的功能。
该接口的功能与 JsonWriter 的 writeConfig中的属性 dateTimeFormat有关联,将会把 DateTime 按照dateTimeFormat中的格式输出到目标流中,可以通过修改dateTimeFormat实现不同的格式控制。
参数:
- w: JsonWriter - 写入序列化结果的 JsonWriter 实例。
extend Decimal <: JsonSerializable
extend Decimal <: JsonSerializable
功能:为Decimal类型提供序列化到 JSON 数据流的接口。
父类型:
func toJson(JsonWriter)
public func toJson(w: JsonWriter): Unit
功能:将Decimal类型写入参数 w
指定的 JsonWriter 实例中。
参数:
- w: JsonWriter - 写入序列化结果的 JsonWriter 实例。
extend Float16 <: JsonSerializable
extend Float16 <: JsonSerializable
功能:为Float16类型提供序列化到 JSON 数据流的接口。
父类型:
func toJson(JsonWriter)
public func toJson(w: JsonWriter): Unit
功能:将Float16类型写入参数 w
指定的 JsonWriter 实例中。
参数:
- w: JsonWriter - 写入序列化结果的 JsonWriter 实例。
extend Float32 <: JsonSerializable
extend Float32 <: JsonSerializable
功能:为Float32类型提供序列化到 JSON 数据流的接口。
父类型:
func toJson(JsonWriter)
public func toJson(w: JsonWriter): Unit
功能:将Float32类型写入参数 w
指定的 JsonWriter 实例中。
参数:
- w: JsonWriter - 写入序列化结果的 JsonWriter 实例。
extend Float64 <: JsonSerializable
extend Float64 <: JsonSerializable
功能:为Float64类型提供序列化到 JSON 数据流的接口。
父类型:
func toJson(JsonWriter)
public func toJson(w: JsonWriter): Unit
功能:将Float64类型写入参数 w
指定的 JsonWriter 实例中。
参数:
- w: JsonWriter - 写入序列化结果的 JsonWriter 实例。
extend String <: JsonSerializable
extend String <: JsonSerializable
功能:为String类型提供序列化到 JSON 数据流的接口。
父类型:
func toJson(JsonWriter)
public func toJson(w: JsonWriter): Unit
功能:将String类型写入参数 w
指定的 JsonWriter 实例中。写入的String
参数:
- w: JsonWriter - 写入序列化结果的 JsonWriter 实例。
extend Int16 <: JsonSerializable
extend Int16 <: JsonSerializable
功能:为Int16类型提供序列化到 JSON 数据流的接口。
父类型:
func toJson(JsonWriter)
public func toJson(w: JsonWriter): Unit
功能:将Int16类型写入参数 w
指定的 JsonWriter 实例中。
参数:
- w: JsonWriter - 写入序列化结果的 JsonWriter 实例。
extend Int32 <: JsonSerializable
extend Int32 <: JsonSerializable
功能:为Int32类型提供序列化到 JSON 数据流的接口。
父类型:
func toJson(JsonWriter)
public func toJson(w: JsonWriter): Unit
功能:将Int32类型写入参数 w
指定的 JsonWriter 实例中。
参数:
- w: JsonWriter - 写入序列化结果的 JsonWriter 实例。
extend Int64 <: JsonSerializable
extend Int64 <: JsonSerializable
功能:为Int64类型提供序列化到 JSON 数据流的接口。
父类型:
func toJson(JsonWriter)
public func toJson(w: JsonWriter): Unit
功能:将Int64类型写入参数 w
指定的 JsonWriter 实例中。
参数:
- w: JsonWriter - 写入序列化结果的 JsonWriter 实例。
extend Int8 <: JsonSerializable
extend Int8 <: JsonSerializable
功能:为Int8类型提供序列化到 JSON 数据流的接口。
父类型:
func toJson(JsonWriter)
public func toJson(w: JsonWriter): Unit
功能:将Int8类型写入参数 w
指定的 JsonWriter 实例中。
参数:
- w: JsonWriter - 写入序列化结果的 JsonWriter 实例。
extend IntNative <: JsonSerializable
extend IntNative <: JsonSerializable
功能:为IntNative类型提供序列化到 JSON 数据流的接口。
父类型:
func toJson(JsonWriter)
public func toJson(w: JsonWriter): Unit
功能:将IntNative类型写入参数 w
指定的 JsonWriter 实例中。
参数:
- w: JsonWriter - 写入序列化结果的 JsonWriter 实例。
extend UInt16 <: JsonSerializable
extend UInt16 <: JsonSerializable
功能:为UInt16类型提供序列化到 JSON 数据流的接口。
父类型:
func toJson(JsonWriter)
public func toJson(w: JsonWriter): Unit
功能:将UInt16类型写入参数 w
指定的 JsonWriter 实例中。
参数:
- w: JsonWriter - 写入序列化结果的 JsonWriter 实例。
extend UInt32 <: JsonSerializable
extend UInt32 <: JsonSerializable
功能:为UInt32类型提供序列化到 JSON 数据流的接口。
父类型:
func toJson(JsonWriter)
public func toJson(w: JsonWriter): Unit
功能:将UInt32类型写入参数 w
指定的 JsonWriter 实例中。
参数:
- w: JsonWriter - 写入序列化结果的 JsonWriter 实例。
extend UInt64 <: JsonSerializable
extend UInt64 <: JsonSerializable
功能:为UInt64类型提供序列化到 JSON 数据流的接口。
父类型:
func toJson(JsonWriter)
public func toJson(w: JsonWriter): Unit
功能:将UInt64类型写入参数 w
指定的 JsonWriter 实例中。
参数:
- w: JsonWriter - 写入序列化结果的 JsonWriter 实例。
extend UInt8 <: JsonSerializable
extend UInt8 <: JsonSerializable
功能:为UInt8类型提供序列化到 JSON 数据流的接口。
父类型:
func toJson(JsonWriter)
public func toJson(w: JsonWriter): Unit
功能:将UInt8类型写入参数 w
指定的 JsonWriter 实例中。
参数:
- w: JsonWriter - 写入序列化结果的 JsonWriter 实例。
extend UIntNative <: JsonSerializable
extend UIntNative <: JsonSerializable
功能:为UIntNative类型提供序列化到 JSON 数据流的接口。
父类型:
func toJson(JsonWriter)
public func toJson(w: JsonWriter): Unit
功能:将UIntNative类型写入参数 w
指定的 JsonWriter 实例中。
参数:
- w: JsonWriter - 写入序列化结果的 JsonWriter 实例。
extend<T> Array<T> <: JsonSerializable where T <: JsonSerializable
extend<T> Array<T> <: JsonSerializable where T <: JsonSerializable
功能:为Array<T>类型提供序列化到 JSON 数据流的接口。
父类型:
func toJson(JsonWriter)
public func toJson(w: JsonWriter): Unit
功能:将Array<T>类型写入参数 w
指定的 JsonWriter 实例中。
参数:
- w: JsonWriter - 写入序列化结果的 JsonWriter 实例。
extend<T> ArrayList<T> <: JsonSerializable where T <: JsonSerializable
extend<T> ArrayList<T> <: JsonSerializable where T <: JsonSerializable
功能:为ArrayList<T>类型提供序列化到 JSON 数据流的接口。
父类型:
func toJson(JsonWriter)
public func toJson(w: JsonWriter): Unit
功能:将ArrayList<T>类型写入参数 w
指定的 JsonWriter 实例中。
参数:
- w: JsonWriter - 写入序列化结果的 JsonWriter 实例。
extend<T> Option<T> <: JsonSerializable where T <: JsonSerializable
extend<T> Option<T> <: JsonSerializable where T <: JsonSerializable
功能:为Option<T>类型提供序列化到 JSON 数据流的接口。
父类型:
func toJson(JsonWriter)
public func toJson(w: JsonWriter): Unit
功能:将Option<T>类型写入参数 w
指定的 JsonWriter 实例中。
参数:
- w: JsonWriter - 写入序列化结果的 JsonWriter 实例。
extend<V> HashMap<String, V> <: JsonSerializable where V <: JsonSerializable
extend<V> HashMap<String, V> <: JsonSerializable where V <: JsonSerializable
功能:为HashMap<K, V>类型提供序列化到 JSON 数据流的接口。
父类型:
func toJson(JsonWriter)
public func toJson(w: JsonWriter): Unit
功能:将HashMap<K, V>类型写入参数 w
指定的 JsonWriter 实例中。
参数:
- w: JsonWriter - 写入序列化结果的 JsonWriter 实例。