Add UTF_32 charsets to Charsets object as lazy initialized properties.
#KT-10379 Fixed
This commit is contained in:
@@ -54,4 +54,41 @@ public object Charsets {
|
||||
*/
|
||||
@JvmField
|
||||
public val ISO_8859_1: Charset = Charset.forName("ISO-8859-1")
|
||||
|
||||
/**
|
||||
* 32-bit Unicode (or UCS) Transformation Format, byte order identified by an optional byte-order mark
|
||||
*/
|
||||
public val UTF_32: Charset
|
||||
@JvmName("UTF32")
|
||||
get() = utf_32 ?: run {
|
||||
val charset: Charset = Charset.forName("UTF-32")
|
||||
utf_32 = charset
|
||||
charset
|
||||
}
|
||||
private var utf_32: Charset? = null
|
||||
|
||||
/**
|
||||
* 32-bit Unicode (or UCS) Transformation Format, little-endian byte order.
|
||||
*/
|
||||
public val UTF_32LE: Charset
|
||||
@JvmName("UTF32_LE")
|
||||
get() = utf_32le ?: run {
|
||||
val charset: Charset = Charset.forName("UTF-32LE")
|
||||
utf_32le = charset
|
||||
charset
|
||||
}
|
||||
private var utf_32le: Charset? = null
|
||||
|
||||
/**
|
||||
* 32-bit Unicode (or UCS) Transformation Format, big-endian byte order.
|
||||
*/
|
||||
public val UTF_32BE: Charset
|
||||
@JvmName("UTF32_BE")
|
||||
get() = utf_32be ?: run {
|
||||
val charset: Charset = Charset.forName("UTF-32BE")
|
||||
utf_32be = charset
|
||||
charset
|
||||
}
|
||||
private var utf_32be: Charset? = null
|
||||
|
||||
}
|
||||
|
||||
@@ -93,4 +93,10 @@ class StringJVMTest {
|
||||
assertEquals(listOf("Ast", "Beast", "asterisk"), list.sorted())
|
||||
assertEquals(listOf("Ast", "asterisk", "Beast"), list.sortedWith(String.CASE_INSENSITIVE_ORDER))
|
||||
}
|
||||
|
||||
@test fun charsets() {
|
||||
assertEquals("UTF-32", Charsets.UTF_32.name())
|
||||
assertEquals("UTF-32LE", Charsets.UTF_32LE.name())
|
||||
assertEquals("UTF-32BE", Charsets.UTF_32BE.name())
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user