KMapSimplePropertyPath

class KMapSimplePropertyPath<T, K, R>(previous: KPropertyPath<T, *>?, property: KProperty1<*, Map<out K, R>?>) : KMapPropertyPath<T, K, R, KPropertyPath<T, R?>>

A property path for a map property.

Constructors

Link copied to clipboard
constructor(previous: KPropertyPath<T, *>?, property: KProperty1<*, Map<out K, R>?>)

Properties

Link copied to clipboard
Link copied to clipboard
open override val annotations: List<Annotation>
Link copied to clipboard

Returns a collection property.

Link copied to clipboard
val KProperty<*>.count: BsonField

Gets a field name for a $group operation representing the count of the values of the given expression when applied to all members of the group.

Link copied to clipboard
open override val getter: KProperty1.Getter<T, Map<out K?, R>?>
Link copied to clipboard
open override val isAbstract: Boolean
Link copied to clipboard
open override val isConst: Boolean
Link copied to clipboard
open override val isFinal: Boolean
Link copied to clipboard
open override val isLateinit: Boolean
Link copied to clipboard
open override val isOpen: Boolean
Link copied to clipboard
open override val isSuspend: Boolean
Link copied to clipboard
val <K, T> KProperty1<out Any?, Map<out K, T>?>.mapProperty: KMapSimplePropertyPath<out Any?, K, T>

Returns a map property.

Link copied to clipboard
open override val name: String
Link copied to clipboard
open override val parameters: List<KParameter>
Link copied to clipboard

The projection of the property.

Link copied to clipboard
open override val returnType: KType
Link copied to clipboard
open override val typeParameters: List<KTypeParameter>
Link copied to clipboard

Defines a Variable projection (ie $$name)

Link copied to clipboard
open override val visibility: KVisibility?

Functions

Link copied to clipboard
infix fun <T> KProperty<T>.addToSet(expression: T): BsonField

Gets a field name for a $group operation representing all unique values that results from applying the given expression to each document in a group of documents that share the same group by key.

Link copied to clipboard
infix fun <T> KProperty<Iterable<T>?>.all(values: Iterable<T>): Bson
fun <T> KProperty<Iterable<T>?>.all(vararg values: T): Bson

Creates a filter that matches all documents where the value of a property is an array that contains all the specified values.

Link copied to clipboard
fun KProperty<*>.arrayElemAt(index: Int = 0): Bson

$arrayElemAt aggregator operator support.

Link copied to clipboard
infix fun <T> KProperty<T>.avg(expression: T): BsonField

Gets a field name for a $group operation representing the average of the values of the given expression when applied to all members of the group.

Link copied to clipboard
infix fun <T> KProperty<T>.bitsAllClear(bitmask: Long): Bson

Creates a filter that matches all documents where all of the bit positions are clear in the property.

Link copied to clipboard
infix fun <T> KProperty<T>.bitsAllSet(bitmask: Long): Bson

Creates a filter that matches all documents where all of the bit positions are set in the property.

Link copied to clipboard
infix fun <T> KProperty<T>.bitsAnyClear(bitmask: Long): Bson

Creates a filter that matches all documents where any of the bit positions are clear in the property.

Link copied to clipboard
infix fun <T> KProperty<T>.bitsAnySet(bitmask: Long): Bson

Creates a filter that matches all documents where any of the bit positions are set in the property.

Link copied to clipboard
open override fun call(vararg args: Any?): Map<out K?, R>?
Link copied to clipboard
open override fun callBy(args: Map<KParameter, Any?>): Map<out K?, R>?
Link copied to clipboard
infix fun <T> KProperty<Iterable<T?>?>.contains(value: T?): Bson

Creates a filter that matches all documents where the value of the property contains the specified value. Note that this doesn't actually generate a $eq operator, as the query language doesn't require it.

Link copied to clipboard
fun <T> KProperty<T>.count(): Bson

Creates a $count pipeline stage using the named field to store the result

Link copied to clipboard
fun KProperty<TemporalAccessor?>.dateToString(format: String? = "%Y-%m-%d", zoneId: ZoneId? = null, onNull: String? = null): Bson

$dateToString aggregator operator support.

Link copied to clipboard
operator fun <T0, T1, T2> KProperty1<T0, T1?>.div(p2: KProperty1<T1, T2?>): KProperty1<T0, T2?>

Returns a composed property. For example Friend.address / Address.postalCode = "address.postalCode".

@JvmName(name = "divCol")
operator fun <T0, T1, T2> KProperty1<T0, Iterable<T1>?>.div(p2: KProperty1<out T1, T2?>): KProperty1<T0, T2?>

Returns a collection composed property. For example Friend.addresses / Address.postalCode = "addresses.postalCode".

@JvmName(name = "divMap")
operator fun <T0, K, T1, T2> KProperty1<T0, Map<out K, T1>?>.div(p2: KProperty1<out T1, T2?>): KProperty1<T0, T2?>

Returns a map composed property. For example Friend.addresses / Address.postalCode = "addresses.postalCode".

Link copied to clipboard
infix fun <T> KProperty<Iterable<T>?>.elemMatch(filter: Bson): Bson

Creates a filter that matches all documents containing a property that is an array where at least one member of the array matches the given filter.

Link copied to clipboard
fun <T> KProperty<T>.elemMatchProj(): Bson

Creates a projection that includes for the given property only the first element of an array that matches the query filter. This is referred to as the positional $ operator.

fun <T> KProperty<T>.elemMatchProj(filter: Bson): Bson

Creates a projection that includes for the given property only the first element of the array value of that field that matches the given query filter.

Link copied to clipboard
infix fun <T> KProperty<T?>.eq(value: T?): Bson

Creates a filter that matches all documents where the value of the property equals the specified value. Note that this doesn't actually generate a $eq operator, as the query language doesn't require it.

Link copied to clipboard
fun <T> KProperty<T>.exists(): Bson

Creates a filter that matches all documents that contain the given property.

infix fun <T> KProperty<T>.exists(exists: Boolean): Bson

Creates a filter that matches all documents that either contain or do not contain the given property, depending on the value of the exists parameter.

Link copied to clipboard
Link copied to clipboard
infix fun <T> KProperty<T>.first(expression: T): BsonField

Gets a field name for a $group operation representing the value of the given expression when applied to the first member of the group.

Link copied to clipboard
infix fun <T> KProperty<T>.from(expression: T): Bson

Creates a projection of a property whose value is computed from the given expression.

Link copied to clipboard
infix fun <T> KProperty<T>.geoIntersects(geometry: Geometry): Bson
infix fun <T> KProperty<T>.geoIntersects(geometry: Bson): Bson

Creates a filter that matches all documents containing a property with geospatial data that intersects with the specified shape.

Link copied to clipboard
infix fun <T> KProperty<T>.geoWithin(geometry: Geometry): Bson
infix fun <T> KProperty<T>.geoWithin(geometry: Bson): Bson

Creates a filter that matches all documents containing a property with geospatial data that exists entirely within the specified shape.

Link copied to clipboard
fun <T> KProperty<T>.geoWithinBox(lowerLeftX: Double, lowerLeftY: Double, upperRightX: Double, upperRightY: Double): Bson

Creates a filter that matches all documents containing a property with grid coordinates data that exist entirely within the specified box.

Link copied to clipboard
fun <T> KProperty<T>.geoWithinCenter(x: Double, y: Double, radius: Double): Bson

Creates a filter that matches all documents containing a property with grid coordinates data that exist entirely within the specified circle.

Link copied to clipboard
fun <T> KProperty<T>.geoWithinCenterSphere(x: Double, y: Double, radius: Double): Bson

Creates a filter that matches all documents containing a property with geospatial data (GeoJSON or legacy coordinate pairs) that exist entirely within the specified circle, using spherical geometry. If using longitude and latitude, specify longitude first.

Link copied to clipboard
infix fun <T> KProperty<T>.geoWithinPolygon(points: List<List<Double>>): Bson

Creates a filter that matches all documents containing a property with grid coordinates data that exist entirely within the specified polygon.

Link copied to clipboard
open override fun get(receiver: T): Map<out K?, R>?
Link copied to clipboard
open override fun getDelegate(receiver: T): Any?
Link copied to clipboard
infix fun <T> KProperty<T?>.gt(value: T): Bson

Creates a filter that matches all documents where the value of the given property is greater than the specified value.

Link copied to clipboard
infix fun <T> KProperty<T?>.gte(value: T): Bson

Creates a filter that matches all documents where the value of the given property is greater than or equal to the specified value.

Link copied to clipboard
fun <T> KProperty<T>.hashedIndex(): Bson

Create an index key for a hashed index on the given property.

Link copied to clipboard
fun KProperty<*>.ifNull(defaultValue: Any): Bson

$ifNull aggregator operator support.

Link copied to clipboard
infix fun <T> KProperty<T?>.in(values: Iterable<T?>): Bson
infix fun <T> KProperty<T>.in(expression: String): Bson
@JvmName(name = "inArray")
infix fun <T> KProperty<Iterable<T>?>.in(values: Iterable<T?>): Bson

Creates a filter that matches all documents where the value of a property equals any value in the list of specified values.

Link copied to clipboard
open operator override fun invoke(p1: T): Map<out K?, R>?
Link copied to clipboard

Key projection of map. Sample: p.keyProjection(Locale.ENGLISH) / Gift::amount

Link copied to clipboard
fun <K, T> KProperty1<out Any?, Map<out K, T>?>.keyProjection(key: K): KPropertyPath<Any?, T?>

Key projection of map. Sample: p.keyProjection(Locale.ENGLISH) / Gift::amount

Link copied to clipboard
infix fun <T> KProperty<T>.last(expression: T): BsonField

Gets a field name for a $group operation representing the value of the given expression when applied to the last member of the group.

Link copied to clipboard
infix fun <T> KProperty<T?>.lt(item: T): Bson

Creates a filter that matches all documents where the value of the given property is less than the specified value.

Link copied to clipboard
infix fun <T> KProperty<T?>.lte(value: T): Bson

Creates a filter that matches all documents where the value of the given property is less than or equal to the specified value.

Link copied to clipboard
infix fun <T> KProperty<T>.max(expression: T): BsonField

Gets a field name for a $group operation representing the maximum of the values of the given expression when applied to all members of the group.

Link copied to clipboard
open fun memberWithAdditionalPath(additionalPath: String): KPropertyPath<T, R?>

To be overridden to returns the right type.

Link copied to clipboard
fun <T> KProperty<T>.metaTextScore(): Bson

Creates a projection to the given property of the textScore, for use with text queries.

Link copied to clipboard
infix fun <T> KProperty<T>.min(expression: T): BsonField

Gets a field name for a $group operation representing the minimum of the values of the given expression when applied to all members of the group.

Link copied to clipboard
fun <T> KProperty<T>.mod(divisor: Long, remainder: Long): Bson

Creates a filter that matches all documents where the value of a property divided by a divisor has the specified remainder (i.e. perform a modulo operation to select documents).

Link copied to clipboard
infix fun <T> KProperty<T?>.ne(value: T?): Bson

Creates a filter that matches all documents where the value of the field name does not equal the specified value.

Link copied to clipboard
fun <T> KProperty<T>.near(geometry: Point, maxDistance: Double? = null, minDistance: Double? = null): Bson
fun <T> KProperty<T>.near(geometry: Bson, maxDistance: Double? = null, minDistance: Double? = null): Bson

Creates a filter that matches all documents containing a property with geospatial data that is near the specified GeoJSON point.

fun <T> KProperty<T>.near(x: Double, y: Double, maxDistance: Double? = null, minDistance: Double? = null): Bson

Creates a filter that matches all documents containing a property with geospatial data that is near the specified point.

Link copied to clipboard
fun <T> KProperty<T>.nearSphere(geometry: Point, maxDistance: Double? = null, minDistance: Double? = null): Bson
fun <T> KProperty<T>.nearSphere(geometry: Bson, maxDistance: Double? = null, minDistance: Double? = null): Bson

Creates a filter that matches all documents containing a property with geospatial data that is near the specified GeoJSON point using spherical geometry.

fun <T> KProperty<T>.nearSphere(x: Double, y: Double, maxDistance: Double? = null, minDistance: Double? = null): Bson

Creates a filter that matches all documents containing a property with geospatial data that is near the specified point using spherical geometry.

Link copied to clipboard
infix fun <T> KProperty<T?>.nin(values: Iterable<T?>): Bson
@JvmName(name = "ninArray")
infix fun <T> KProperty<Iterable<T>?>.nin(values: Iterable<T?>): Bson

Creates a filter that matches all documents where the value of a property does not equal any of the specified values or does not exist.

Link copied to clipboard
fun <T> KProperty<T>.path(): String

Returns a mongo path of a property.

Link copied to clipboard
fun <T> KProperty1<out Any?, Iterable<T>?>.pos(position: Int): KPropertyPath<out Any?, T?>

In order to write array indexed expressions (like accesses.0.timestamp).

Link copied to clipboard

In order to write $p.p2

Link copied to clipboard
infix fun <T> KProperty<T>.push(expression: T): BsonField

Gets a field name for a $group operation representing an array of all values that results from applying an expression to each document in a group of documents that share the same group by key.

Link copied to clipboard
infix fun KProperty<String?>.regex(regex: Pattern): Bson
infix fun KProperty<String?>.regex(regex: String): Bson
infix fun KProperty<String?>.regex(regex: Regex): Bson
@JvmName(name = "regexIterable")
infix fun KProperty<Iterable<String?>>.regex(regex: Pattern): Bson
@JvmName(name = "regexIterable")
infix fun KProperty<Iterable<String?>>.regex(regex: String): Bson
@JvmName(name = "regexIterable")
infix fun KProperty<Iterable<String?>>.regex(regex: Regex): Bson

Creates a filter that matches all documents where the value of the property matches the given regular expression pattern.

fun KProperty<String?>.regex(pattern: String, options: String): Bson
@JvmName(name = "regexIterable")
fun KProperty<Iterable<String?>>.regex(pattern: String, options: String): Bson

Creates a filter that matches all documents where the value of the option matches the given regular expression pattern with the given options applied.

Link copied to clipboard
operator fun <T0, T1, T2> KProperty1<T0, T1?>.rem(p2: KProperty1<out T1, T2?>): KProperty1<T0, T2?>

Returns a composed property without type checks. For example Friend.address % Address.postalCode = "address.postalCode".

Link copied to clipboard
infix fun <T> KProperty<T>.setTo(value: T): SetTo<T>

Generates a SetTo used in updateOne or updateMany operations.

Link copied to clipboard
infix fun <T> KProperty<T>.size(size: Int): Bson

Creates a filter that matches all documents where the value of a property is an array of the specified size.

Link copied to clipboard
fun <T> KProperty<T>.slice(limit: Int): Bson
fun <T> KProperty<T>.slice(skip: Int, limit: Int): Bson

Creates a projection to the given property of a slice of the array value of that field.

Link copied to clipboard

Create a sort specification for the text score meta getProjection on the given property.

Link copied to clipboard
infix fun <T> KProperty<T>.stdDevPop(expression: T): BsonField

Gets a field name for a $group operation representing the sample standard deviation of the values of the given expression when applied to all members of the group.

Link copied to clipboard
infix fun <T> KProperty<T>.stdDevSamp(expression: T): BsonField

Gets a field name for a $group operation representing the sample standard deviation of the values of the given expression when applied to all members of the group.

Link copied to clipboard
infix fun <T> KProperty<T>.sum(expression: T): BsonField

Gets a field name for a $group operation representing the sum of the values of the given expression when applied to all members of the group.

Link copied to clipboard
fun <T> KProperty<T>.textIndex(): Bson

Create an index key for a text index on the given property.

Link copied to clipboard
infix fun <T> KProperty<T>.type(type: BsonType): Bson

Creates a filter that matches all documents where the value of the property is of the specified BSON type.

Link copied to clipboard
fun <T> KProperty<T>.unwind(unwindOptions: UnwindOptions = UnwindOptions()): Bson

Creates a $unwind pipeline stage for the specified field name, which must be prefixed by a '$' sign.

Link copied to clipboard
fun KProperty<*>.variableDefinition(name: String = path()): Variable<String>

Defines a Variable for the lookup operator.