Kotlin BSON • Multiplatform abstraction for different BSON implementations • opensavvy.ktmongo.bson • BsonArrayReader
BsonArrayReader¶
@LowLevelApi
interface BsonArrayReader
Utilities for decomposing a BsonArray into its elements.
To obtain an instance of this interface, see BsonArray.reader.
Example¶
val bson: BsonArray = …
for ((index, field) in bson.read().elements.withIndex()) {
println("[$index] • ${field.type}")
}
Implementation constraints¶
Different implementations of BsonArrayReader should be considered equal if they have the same elements in the same order. The methods BsonArrayReader.Companion.equals and BsonArrayReader.Companion.hashCode are provided to facilitate implementation.
Types¶
Companion¶
object Companion
Properties¶
elements¶
abstract val elements: List<BsonValueReader>
A list of all elements in this reader.
indices¶
A range of the valid indices in this array.
size¶
The number of elements in this array.
Functions¶
asValue¶
abstract fun asValue(): BsonValueReader
Reads this entire array as a BsonValueReader.
diff¶
@LowLevelApi
infix fun BsonArrayReader.diff(other: BsonArrayReader): String?
Analyzes the difference between two BSON arrays.
read¶
abstract fun read(index: Int): BsonValueReader?
Attempts to read an element at index index.
Reads this document into an instance of type.
toBson¶
Reads this document into a BsonArray instance.
toString¶
JSON representation of the array this BsonArrayReader is reading, as a String.