Skip to content

LookupStageOperators

Properties

context

The context used to generate this expression.

dayOfMonth

open val <R : Any> KProperty1<R, Instant>.dayOfMonth: Value<R, Int>

Returns the day of the month for a date as a number between 1 and 31.

@get:JvmName(name = "dayOfMonthOfObjectId")
val <R : Any> KProperty1<R, ObjectId>.dayOfMonth: Value<R, Int>

Returns the day of the month for a date as a number between 1 and 31.

@get:JvmName(name = "dayOfMonthOfTimestamp")
val <R : Any> KProperty1<R, Timestamp>.dayOfMonth: Value<R, Int>

Returns the day of the month for a date as a number between 1 and 31.

Returns the day of the month for a date as a number between 1 and 31.

@get:JvmName(name = "dayOfMonthOfObjectId")
val ObjectId.dayOfMonth: Value<Any, Int>

Returns the day of the month for a date as a number between 1 and 31.

@get:JvmName(name = "dayOfMonthOfTimestamp")
val Timestamp.dayOfMonth: Value<Any, Int>

Returns the day of the month for a date as a number between 1 and 31.

open val <R : Any> Value<R, Instant>.dayOfMonth: Value<R, Int>

Returns the day of the month for a date as a number between 1 and 31.

@get:JvmName(name = "dayOfMonthOfObjectId")
val <R : Any> Value<R, ObjectId>.dayOfMonth: Value<R, Int>

Returns the day of the month for a date as a number between 1 and 31.

@get:JvmName(name = "dayOfMonthOfTimestamp")
val <R : Any> Value<R, Timestamp>.dayOfMonth: Value<R, Int>

Returns the day of the month for a date as a number between 1 and 31.

open val <R : Any> Field<R, Instant>.dayOfMonth: Value<R, Int>

Returns the day of the month for a date as a number between 1 and 31.

@get:JvmName(name = "dayOfMonthOfObjectId")
val <R : Any> Field<R, ObjectId>.dayOfMonth: Value<R, Int>

Returns the day of the month for a date as a number between 1 and 31.

@get:JvmName(name = "dayOfMonthOfTimestamp")
val <R : Any> Field<R, Timestamp>.dayOfMonth: Value<R, Int>

Returns the day of the month for a date as a number between 1 and 31.

dayOfWeekISO

Returns the day of the week in ISO 8601 format, ranging from 1 (for Monday) to 7 (for Sunday).

@get:JvmName(name = "dayOfWeekISOOfObjectId")
val <R : Any> KProperty1<R, ObjectId>.dayOfWeekISO: Value<R, Int>

Returns the day of the week in ISO 8601 format, ranging from 1 (for Monday) to 7 (for Sunday).

@get:JvmName(name = "dayOfWeekISOOfTimestamp")
val <R : Any> KProperty1<R, Timestamp>.dayOfWeekISO: Value<R, Int>

Returns the day of the week in ISO 8601 format, ranging from 1 (for Monday) to 7 (for Sunday).

Returns the day of the week in ISO 8601 format, ranging from 1 (for Monday) to 7 (for Sunday).

@get:JvmName(name = "dayOfWeekISOOfObjectId")
val ObjectId.dayOfWeekISO: Value<Any, Int>

Returns the day of the week in ISO 8601 format, ranging from 1 (for Monday) to 7 (for Sunday).

@get:JvmName(name = "dayOfWeekISOOfTimestamp")
val Timestamp.dayOfWeekISO: Value<Any, Int>

Returns the day of the week in ISO 8601 format, ranging from 1 (for Monday) to 7 (for Sunday).

open val <R : Any> Value<R, Instant>.dayOfWeekISO: Value<R, Int>

Returns the day of the week in ISO 8601 format, ranging from 1 (for Monday) to 7 (for Sunday).

@get:JvmName(name = "dayOfWeekISOOfObjectId")
val <R : Any> Value<R, ObjectId>.dayOfWeekISO: Value<R, Int>

Returns the day of the week in ISO 8601 format, ranging from 1 (for Monday) to 7 (for Sunday).

@get:JvmName(name = "dayOfWeekISOOfTimestamp")
val <R : Any> Value<R, Timestamp>.dayOfWeekISO: Value<R, Int>

Returns the day of the week in ISO 8601 format, ranging from 1 (for Monday) to 7 (for Sunday).

open val <R : Any> Field<R, Instant>.dayOfWeekISO: Value<R, Int>

Returns the day of the week in ISO 8601 format, ranging from 1 (for Monday) to 7 (for Sunday).

@get:JvmName(name = "dayOfWeekISOOfObjectId")
val <R : Any> Field<R, ObjectId>.dayOfWeekISO: Value<R, Int>

Returns the day of the week in ISO 8601 format, ranging from 1 (for Monday) to 7 (for Sunday).

@get:JvmName(name = "dayOfWeekISOOfTimestamp")
val <R : Any> Field<R, Timestamp>.dayOfWeekISO: Value<R, Int>

Returns the day of the week in ISO 8601 format, ranging from 1 (for Monday) to 7 (for Sunday).

dayOfWeekUS

open val <R : Any> KProperty1<R, Instant>.dayOfWeekUS: Value<R, Int>

Returns the day of the week for a date as a number between 1 (Sunday) and 7 (Saturday).

@get:JvmName(name = "dayOfWeekUSOfObjectId")
val <R : Any> KProperty1<R, ObjectId>.dayOfWeekUS: Value<R, Int>

Returns the day of the week for a date as a number between 1 (Sunday) and 7 (Saturday).

@get:JvmName(name = "dayOfWeekUSOfTimestamp")
val <R : Any> KProperty1<R, Timestamp>.dayOfWeekUS: Value<R, Int>

Returns the day of the week for a date as a number between 1 (Sunday) and 7 (Saturday).

Returns the day of the week for a date as a number between 1 (Sunday) and 7 (Saturday).

@get:JvmName(name = "dayOfWeekUSOfObjectId")
val ObjectId.dayOfWeekUS: Value<Any, Int>

Returns the day of the week for a date as a number between 1 (Sunday) and 7 (Saturday).

@get:JvmName(name = "dayOfWeekUSOfTimestamp")
val Timestamp.dayOfWeekUS: Value<Any, Int>

Returns the day of the week for a date as a number between 1 (Sunday) and 7 (Saturday).

open val <R : Any> Value<R, Instant>.dayOfWeekUS: Value<R, Int>

Returns the day of the week for a date as a number between 1 (Sunday) and 7 (Saturday).

@get:JvmName(name = "dayOfWeekUSOfObjectId")
val <R : Any> Value<R, ObjectId>.dayOfWeekUS: Value<R, Int>

Returns the day of the week for a date as a number between 1 (Sunday) and 7 (Saturday).

@get:JvmName(name = "dayOfWeekUSOfTimestamp")
val <R : Any> Value<R, Timestamp>.dayOfWeekUS: Value<R, Int>

Returns the day of the week for a date as a number between 1 (Sunday) and 7 (Saturday).

open val <R : Any> Field<R, Instant>.dayOfWeekUS: Value<R, Int>

Returns the day of the week for a date as a number between 1 (Sunday) and 7 (Saturday).

@get:JvmName(name = "dayOfWeekUSOfObjectId")
val <R : Any> Field<R, ObjectId>.dayOfWeekUS: Value<R, Int>

Returns the day of the week for a date as a number between 1 (Sunday) and 7 (Saturday).

@get:JvmName(name = "dayOfWeekUSOfTimestamp")
val <R : Any> Field<R, Timestamp>.dayOfWeekUS: Value<R, Int>

Returns the day of the week for a date as a number between 1 (Sunday) and 7 (Saturday).

dayOfYear

open val <R : Any> KProperty1<R, Instant>.dayOfYear: Value<R, Int>

Returns the day of the year for a date as a number between 1 and 366.

@get:JvmName(name = "dayOfYearOfObjectId")
val <R : Any> KProperty1<R, ObjectId>.dayOfYear: Value<R, Int>

Returns the day of the year for a date as a number between 1 and 366.

@get:JvmName(name = "dayOfYearOfTimestamp")
val <R : Any> KProperty1<R, Timestamp>.dayOfYear: Value<R, Int>

Returns the day of the year for a date as a number between 1 and 366.

open val Instant.dayOfYear: Value<Any, Int>

Returns the day of the year for a date as a number between 1 and 366.

@get:JvmName(name = "dayOfYearOfObjectId")
val ObjectId.dayOfYear: Value<Any, Int>

Returns the day of the year for a date as a number between 1 and 366.

@get:JvmName(name = "dayOfYearOfTimestamp")
val Timestamp.dayOfYear: Value<Any, Int>

Returns the day of the year for a date as a number between 1 and 366.

open val <R : Any> Value<R, Instant>.dayOfYear: Value<R, Int>

Returns the day of the year for a date as a number between 1 and 366.

@get:JvmName(name = "dayOfYearOfObjectId")
val <R : Any> Value<R, ObjectId>.dayOfYear: Value<R, Int>

Returns the day of the year for a date as a number between 1 and 366.

@get:JvmName(name = "dayOfYearOfTimestamp")
val <R : Any> Value<R, Timestamp>.dayOfYear: Value<R, Int>

Returns the day of the year for a date as a number between 1 and 366.

open val <R : Any> Field<R, Instant>.dayOfYear: Value<R, Int>

Returns the day of the year for a date as a number between 1 and 366.

@get:JvmName(name = "dayOfYearOfObjectId")
val <R : Any> Field<R, ObjectId>.dayOfYear: Value<R, Int>

Returns the day of the year for a date as a number between 1 and 366.

@get:JvmName(name = "dayOfYearOfTimestamp")
val <R : Any> Field<R, Timestamp>.dayOfYear: Value<R, Int>

Returns the day of the year for a date as a number between 1 and 366.

field

Converts a Kotlin property into a Field.

hour

open val <R : Any> KProperty1<R, Instant>.hour: Value<R, Int>

Returns the hour portion of a date as a number between 0 and 23.

@get:JvmName(name = "hourOfObjectId")
val <R : Any> KProperty1<R, ObjectId>.hour: Value<R, Int>

Returns the hour portion of a date as a number between 0 and 23.

@get:JvmName(name = "hourOfTimestamp")
val <R : Any> KProperty1<R, Timestamp>.hour: Value<R, Int>

Returns the hour portion of a date as a number between 0 and 23.

open val Instant.hour: Value<Any, Int>

Returns the hour portion of a date as a number between 0 and 23.

@get:JvmName(name = "hourOfObjectId")
val ObjectId.hour: Value<Any, Int>

Returns the hour portion of a date as a number between 0 and 23.

@get:JvmName(name = "hourOfTimestamp")
val Timestamp.hour: Value<Any, Int>

Returns the hour portion of a date as a number between 0 and 23.

open val <R : Any> Value<R, Instant>.hour: Value<R, Int>

Returns the hour portion of a date as a number between 0 and 23.

@get:JvmName(name = "hourOfObjectId")
val <R : Any> Value<R, ObjectId>.hour: Value<R, Int>

Returns the hour portion of a date as a number between 0 and 23.

@get:JvmName(name = "hourOfTimestamp")
val <R : Any> Value<R, Timestamp>.hour: Value<R, Int>

Returns the hour portion of a date as a number between 0 and 23.

open val <R : Any> Field<R, Instant>.hour: Value<R, Int>

Returns the hour portion of a date as a number between 0 and 23.

@get:JvmName(name = "hourOfObjectId")
val <R : Any> Field<R, ObjectId>.hour: Value<R, Int>

Returns the hour portion of a date as a number between 0 and 23.

@get:JvmName(name = "hourOfTimestamp")
val <R : Any> Field<R, Timestamp>.hour: Value<R, Int>

Returns the hour portion of a date as a number between 0 and 23.

isArray

open val Any?.isArray: Value<Any, Boolean>

Determines if this value is an array.

open val <R : Any> KProperty1<R, *>.isArray: Value<R, Boolean>

Determines if this value is an array.

open val <R : Any> Value<R, *>.isArray: Value<R, Boolean>

Determines if this value is an array.

open val <R : Any> Field<R, *>.isArray: Value<R, Boolean>

Determines if this value is an array.

isNumber

open val Any?.isNumber: Value<Any, Boolean>

Determines if this value is a number.

open val <R : Any> KProperty1<R, *>.isNumber: Value<R, Boolean>

Determines if this value is a number.

open val <R : Any> Value<R, *>.isNumber: Value<R, Boolean>

Determines if this value is a number.

open val <R : Any> Field<R, *>.isNumber: Value<R, Boolean>

Determines if this value is a number.

length

open val String?.length: Value<Any, Int?>

Returns the number of code points in the specified string.

Returns the number of code points in the specified string.

Returns the number of code points in the specified string.

Returns the number of code points in the specified string.

lengthUTF8

open val String?.lengthUTF8: Value<Any, Int?>

Returns the number of UTF-8 encoded bytes in the specified string.

Returns the number of UTF-8 encoded bytes in the specified string.

Returns the number of UTF-8 encoded bytes in the specified string.

Returns the number of UTF-8 encoded bytes in the specified string.

millisecond

open val <R : Any> KProperty1<R, Instant>.millisecond: Value<R, Int>

Returns the millisecond portion of a date as a number between 0 and 999.

@get:JvmName(name = "millisecondOfObjectId")
val <R : Any> KProperty1<R, ObjectId>.millisecond: Value<R, Int>

Returns the millisecond portion of a date as a number between 0 and 999.

@get:JvmName(name = "millisecondOfTimestamp")
val <R : Any> KProperty1<R, Timestamp>.millisecond: Value<R, Int>

Returns the millisecond portion of a date as a number between 0 and 999.

Returns the millisecond portion of a date as a number between 0 and 999.

@get:JvmName(name = "millisecondOfObjectId")
val ObjectId.millisecond: Value<Any, Int>

Returns the millisecond portion of a date as a number between 0 and 999.

@get:JvmName(name = "millisecondOfTimestamp")
val Timestamp.millisecond: Value<Any, Int>

Returns the millisecond portion of a date as a number between 0 and 999.

open val <R : Any> Value<R, Instant>.millisecond: Value<R, Int>

Returns the millisecond portion of a date as a number between 0 and 999.

@get:JvmName(name = "millisecondOfObjectId")
val <R : Any> Value<R, ObjectId>.millisecond: Value<R, Int>

Returns the millisecond portion of a date as a number between 0 and 999.

@get:JvmName(name = "millisecondOfTimestamp")
val <R : Any> Value<R, Timestamp>.millisecond: Value<R, Int>

Returns the millisecond portion of a date as a number between 0 and 999.

open val <R : Any> Field<R, Instant>.millisecond: Value<R, Int>

Returns the millisecond portion of a date as a number between 0 and 999.

@get:JvmName(name = "millisecondOfObjectId")
val <R : Any> Field<R, ObjectId>.millisecond: Value<R, Int>

Returns the millisecond portion of a date as a number between 0 and 999.

@get:JvmName(name = "millisecondOfTimestamp")
val <R : Any> Field<R, Timestamp>.millisecond: Value<R, Int>

Returns the millisecond portion of a date as a number between 0 and 999.

minute

open val <R : Any> KProperty1<R, Instant>.minute: Value<R, Int>

Returns the minute portion of a date as a number between 0 and 59.

@get:JvmName(name = "minuteOfObjectId")
val <R : Any> KProperty1<R, ObjectId>.minute: Value<R, Int>

Returns the minute portion of a date as a number between 0 and 59.

@get:JvmName(name = "minuteOfTimestamp")
val <R : Any> KProperty1<R, Timestamp>.minute: Value<R, Int>

Returns the minute portion of a date as a number between 0 and 59.

open val Instant.minute: Value<Any, Int>

Returns the minute portion of a date as a number between 0 and 59.

@get:JvmName(name = "minuteOfObjectId")
val ObjectId.minute: Value<Any, Int>

Returns the minute portion of a date as a number between 0 and 59.

@get:JvmName(name = "minuteOfTimestamp")
val Timestamp.minute: Value<Any, Int>

Returns the minute portion of a date as a number between 0 and 59.

open val <R : Any> Value<R, Instant>.minute: Value<R, Int>

Returns the minute portion of a date as a number between 0 and 59.

@get:JvmName(name = "minuteOfObjectId")
val <R : Any> Value<R, ObjectId>.minute: Value<R, Int>

Returns the minute portion of a date as a number between 0 and 59.

@get:JvmName(name = "minuteOfTimestamp")
val <R : Any> Value<R, Timestamp>.minute: Value<R, Int>

Returns the minute portion of a date as a number between 0 and 59.

open val <R : Any> Field<R, Instant>.minute: Value<R, Int>

Returns the minute portion of a date as a number between 0 and 59.

@get:JvmName(name = "minuteOfObjectId")
val <R : Any> Field<R, ObjectId>.minute: Value<R, Int>

Returns the minute portion of a date as a number between 0 and 59.

@get:JvmName(name = "minuteOfTimestamp")
val <R : Any> Field<R, Timestamp>.minute: Value<R, Int>

Returns the minute portion of a date as a number between 0 and 59.

month

open val <R : Any> KProperty1<R, Instant>.month: Value<R, Int>

Returns the month of a date as a number between 1 and 12.

@get:JvmName(name = "monthOfObjectId")
val <R : Any> KProperty1<R, ObjectId>.month: Value<R, Int>

Returns the month of a date as a number between 1 and 12.

@get:JvmName(name = "monthOfTimestamp")
val <R : Any> KProperty1<R, Timestamp>.month: Value<R, Int>

Returns the month of a date as a number between 1 and 12.

open val Instant.month: Value<Any, Int>

Returns the month of a date as a number between 1 and 12.

@get:JvmName(name = "monthOfObjectId")
val ObjectId.month: Value<Any, Int>

Returns the month of a date as a number between 1 and 12.

@get:JvmName(name = "monthOfTimestamp")
val Timestamp.month: Value<Any, Int>

Returns the month of a date as a number between 1 and 12.

open val <R : Any> Value<R, Instant>.month: Value<R, Int>

Returns the month of a date as a number between 1 and 12.

@get:JvmName(name = "monthOfObjectId")
val <R : Any> Value<R, ObjectId>.month: Value<R, Int>

Returns the month of a date as a number between 1 and 12.

@get:JvmName(name = "monthOfTimestamp")
val <R : Any> Value<R, Timestamp>.month: Value<R, Int>

Returns the month of a date as a number between 1 and 12.

open val <R : Any> Field<R, Instant>.month: Value<R, Int>

Returns the month of a date as a number between 1 and 12.

@get:JvmName(name = "monthOfObjectId")
val <R : Any> Field<R, ObjectId>.month: Value<R, Int>

Returns the month of a date as a number between 1 and 12.

@get:JvmName(name = "monthOfTimestamp")
val <R : Any> Field<R, Timestamp>.month: Value<R, Int>

Returns the month of a date as a number between 1 and 12.

second

open val <R : Any> KProperty1<R, Instant>.second: Value<R, Int>

Returns the second portion of a date as a number between 0 and 60 (leap seconds).

@get:JvmName(name = "secondOfObjectId")
val <R : Any> KProperty1<R, ObjectId>.second: Value<R, Int>

Returns the second portion of a date as a number between 0 and 60 (leap seconds).

@get:JvmName(name = "secondOfTimestamp")
val <R : Any> KProperty1<R, Timestamp>.second: Value<R, Int>

Returns the second portion of a date as a number between 0 and 60 (leap seconds).

open val Instant.second: Value<Any, Int>

Returns the second portion of a date as a number between 0 and 60 (leap seconds).

@get:JvmName(name = "secondOfObjectId")
val ObjectId.second: Value<Any, Int>

Returns the second portion of a date as a number between 0 and 60 (leap seconds).

@get:JvmName(name = "secondOfTimestamp")
val Timestamp.second: Value<Any, Int>

Returns the second portion of a date as a number between 0 and 60 (leap seconds).

open val <R : Any> Value<R, Instant>.second: Value<R, Int>

Returns the second portion of a date as a number between 0 and 60 (leap seconds).

@get:JvmName(name = "secondOfObjectId")
val <R : Any> Value<R, ObjectId>.second: Value<R, Int>

Returns the second portion of a date as a number between 0 and 60 (leap seconds).

@get:JvmName(name = "secondOfTimestamp")
val <R : Any> Value<R, Timestamp>.second: Value<R, Int>

Returns the second portion of a date as a number between 0 and 60 (leap seconds).

open val <R : Any> Field<R, Instant>.second: Value<R, Int>

Returns the second portion of a date as a number between 0 and 60 (leap seconds).

@get:JvmName(name = "secondOfObjectId")
val <R : Any> Field<R, ObjectId>.second: Value<R, Int>

Returns the second portion of a date as a number between 0 and 60 (leap seconds).

@get:JvmName(name = "secondOfTimestamp")
val <R : Any> Field<R, Timestamp>.second: Value<R, Int>

Returns the second portion of a date as a number between 0 and 60 (leap seconds).

type

open val Any?.type: Value<Any, BsonType>

Gets the BsonType of the current value.

open val <R : Any> KProperty1<R, *>.type: Value<R, BsonType>

Gets the BsonType of the current value.

open val <R : Any> Value<R, *>.type: Value<R, BsonType>

Gets the BsonType of the current value.

open val <R : Any> Field<R, *>.type: Value<R, BsonType>

Gets the BsonType of the current value.

weekISO

open val <R : Any> KProperty1<R, Instant>.weekISO: Value<R, Int>

Returns the week number in ISO 8601 format, ranging from 1 to 53.

@get:JvmName(name = "weekISOOfObjectId")
val <R : Any> KProperty1<R, ObjectId>.weekISO: Value<R, Int>

Returns the week number in ISO 8601 format, ranging from 1 to 53.

@get:JvmName(name = "weekISOOfTimestamp")
val <R : Any> KProperty1<R, Timestamp>.weekISO: Value<R, Int>

Returns the week number in ISO 8601 format, ranging from 1 to 53.

open val Instant.weekISO: Value<Any, Int>

Returns the week number in ISO 8601 format, ranging from 1 to 53.

@get:JvmName(name = "weekISOOfObjectId")
val ObjectId.weekISO: Value<Any, Int>

Returns the week number in ISO 8601 format, ranging from 1 to 53.

@get:JvmName(name = "weekISOOfTimestamp")
val Timestamp.weekISO: Value<Any, Int>

Returns the week number in ISO 8601 format, ranging from 1 to 53.

open val <R : Any> Value<R, Instant>.weekISO: Value<R, Int>

Returns the week number in ISO 8601 format, ranging from 1 to 53.

@get:JvmName(name = "weekISOOfObjectId")
val <R : Any> Value<R, ObjectId>.weekISO: Value<R, Int>

Returns the week number in ISO 8601 format, ranging from 1 to 53.

@get:JvmName(name = "weekISOOfTimestamp")
val <R : Any> Value<R, Timestamp>.weekISO: Value<R, Int>

Returns the week number in ISO 8601 format, ranging from 1 to 53.

open val <R : Any> Field<R, Instant>.weekISO: Value<R, Int>

Returns the week number in ISO 8601 format, ranging from 1 to 53.

@get:JvmName(name = "weekISOOfObjectId")
val <R : Any> Field<R, ObjectId>.weekISO: Value<R, Int>

Returns the week number in ISO 8601 format, ranging from 1 to 53.

@get:JvmName(name = "weekISOOfTimestamp")
val <R : Any> Field<R, Timestamp>.weekISO: Value<R, Int>

Returns the week number in ISO 8601 format, ranging from 1 to 53.

weekUS

open val <R : Any> KProperty1<R, Instant>.weekUS: Value<R, Int>

Returns the week of the year for a date, ranging from 0 to 53.

@get:JvmName(name = "weekUSOfObjectId")
val <R : Any> KProperty1<R, ObjectId>.weekUS: Value<R, Int>

Returns the week of the year for a date, ranging from 0 to 53.

@get:JvmName(name = "weekUSOfTimestamp")
val <R : Any> KProperty1<R, Timestamp>.weekUS: Value<R, Int>

Returns the week of the year for a date, ranging from 0 to 53.

open val Instant.weekUS: Value<Any, Int>

Returns the week of the year for a date, ranging from 0 to 53.

@get:JvmName(name = "weekUSOfObjectId")
val ObjectId.weekUS: Value<Any, Int>

Returns the week of the year for a date, ranging from 0 to 53.

@get:JvmName(name = "weekUSOfTimestamp")
val Timestamp.weekUS: Value<Any, Int>

Returns the week of the year for a date, ranging from 0 to 53.

open val <R : Any> Value<R, Instant>.weekUS: Value<R, Int>

Returns the week of the year for a date, ranging from 0 to 53.

@get:JvmName(name = "weekUSOfObjectId")
val <R : Any> Value<R, ObjectId>.weekUS: Value<R, Int>

Returns the week of the year for a date, ranging from 0 to 53.

@get:JvmName(name = "weekUSOfTimestamp")
val <R : Any> Value<R, Timestamp>.weekUS: Value<R, Int>

Returns the week of the year for a date, ranging from 0 to 53.

open val <R : Any> Field<R, Instant>.weekUS: Value<R, Int>

Returns the week of the year for a date, ranging from 0 to 53.

@get:JvmName(name = "weekUSOfObjectId")
val <R : Any> Field<R, ObjectId>.weekUS: Value<R, Int>

Returns the week of the year for a date, ranging from 0 to 53.

@get:JvmName(name = "weekUSOfTimestamp")
val <R : Any> Field<R, Timestamp>.weekUS: Value<R, Int>

Returns the week of the year for a date, ranging from 0 to 53.

year

open val <R : Any> KProperty1<R, Instant>.year: Value<R, Int>

Returns the year portion of a date.

@get:JvmName(name = "yearOfObjectId")
val <R : Any> KProperty1<R, ObjectId>.year: Value<R, Int>

Returns the year portion of a date.

@get:JvmName(name = "yearOfTimestamp")
val <R : Any> KProperty1<R, Timestamp>.year: Value<R, Int>

Returns the year portion of a date.

open val Instant.year: Value<Any, Int>

Returns the year portion of a date.

@get:JvmName(name = "yearOfObjectId")
val ObjectId.year: Value<Any, Int>

Returns the year portion of a date.

@get:JvmName(name = "yearOfTimestamp")
val Timestamp.year: Value<Any, Int>

Returns the year portion of a date.

open val <R : Any> Value<R, Instant>.year: Value<R, Int>

Returns the year portion of a date.

@get:JvmName(name = "yearOfObjectId")
val <R : Any> Value<R, ObjectId>.year: Value<R, Int>

Returns the year portion of a date.

@get:JvmName(name = "yearOfTimestamp")
val <R : Any> Value<R, Timestamp>.year: Value<R, Int>

Returns the year portion of a date.

open val <R : Any> Field<R, Instant>.year: Value<R, Int>

Returns the year portion of a date.

@get:JvmName(name = "yearOfObjectId")
val <R : Any> Field<R, ObjectId>.year: Value<R, Int>

Returns the year portion of a date.

@get:JvmName(name = "yearOfTimestamp")
val <R : Any> Field<R, Timestamp>.year: Value<R, Int>

Returns the year portion of a date.

yearOfISOWeek

Returns the year in ISO 8601 format, corresponding to the ISO week number returned by weekISO.

@get:JvmName(name = "yearOfISOWeekOfObjectId")
val <R : Any> KProperty1<R, ObjectId>.yearOfISOWeek: Value<R, Int>

Returns the year in ISO 8601 format, corresponding to the ISO week number returned by weekISO.

@get:JvmName(name = "yearOfISOWeekOfTimestamp")
val <R : Any> KProperty1<R, Timestamp>.yearOfISOWeek: Value<R, Int>

Returns the year in ISO 8601 format, corresponding to the ISO week number returned by weekISO.

Returns the year in ISO 8601 format, corresponding to the ISO week number returned by weekISO.

@get:JvmName(name = "yearOfISOWeekOfObjectId")
val ObjectId.yearOfISOWeek: Value<Any, Int>

Returns the year in ISO 8601 format, corresponding to the ISO week number returned by weekISO.

@get:JvmName(name = "yearOfISOWeekOfTimestamp")
val Timestamp.yearOfISOWeek: Value<Any, Int>

Returns the year in ISO 8601 format, corresponding to the ISO week number returned by weekISO.

open val <R : Any> Value<R, Instant>.yearOfISOWeek: Value<R, Int>

Returns the year in ISO 8601 format, corresponding to the ISO week number returned by weekISO.

@get:JvmName(name = "yearOfISOWeekOfObjectId")
val <R : Any> Value<R, ObjectId>.yearOfISOWeek: Value<R, Int>

Returns the year in ISO 8601 format, corresponding to the ISO week number returned by weekISO.

@get:JvmName(name = "yearOfISOWeekOfTimestamp")
val <R : Any> Value<R, Timestamp>.yearOfISOWeek: Value<R, Int>

Returns the year in ISO 8601 format, corresponding to the ISO week number returned by weekISO.

open val <R : Any> Field<R, Instant>.yearOfISOWeek: Value<R, Int>

Returns the year in ISO 8601 format, corresponding to the ISO week number returned by weekISO.

@get:JvmName(name = "yearOfISOWeekOfObjectId")
val <R : Any> Field<R, ObjectId>.yearOfISOWeek: Value<R, Int>

Returns the year in ISO 8601 format, corresponding to the ISO week number returned by weekISO.

@get:JvmName(name = "yearOfISOWeekOfTimestamp")
val <R : Any> Field<R, Timestamp>.yearOfISOWeek: Value<R, Int>

Returns the year in ISO 8601 format, corresponding to the ISO week number returned by weekISO.

Functions

abs

inline fun <Context : Any, Result : Number?> abs(value: Result): Value<Context, Result>

The absolute value of a number.

@JvmName(name = "absByProperty")
open fun <Context : Any, Result : Number?> abs(value: KProperty1<Context, Result>): Value<Context, Result>

The absolute value of a number.

open fun <Context : Any, Result : Number?> abs(value: Value<Context, Result>): Value<Context, Result>

The absolute value of a number.

@JvmName(name = "absByField")
open fun <Context : Any, Result : Number?> abs(value: Field<Context, Result>): Value<Context, Result>

The absolute value of a number.

accept

@LowLevelApi
@DangerousMongoApi
abstract override fun accept(node: BsonNode)

Adds a new node as a child of this one.

acceptAll

Adds any number of nodes into this one.

acos

inline fun acos(value: Double?): Value<Any, Double?>

The inverse cosine (arc cosine) of a value, in radians.

@JvmName(name = "acosByProperty")
open fun <Context : Any> acos(value: KProperty1<Context, Double?>): Value<Context, Double?>

The inverse cosine (arc cosine) of a value, in radians.

open fun <Context : Any> acos(value: Value<Context, Double?>): Value<Context, Double?>

The inverse cosine (arc cosine) of a value, in radians.

@JvmName(name = "acosByField")
open fun <Context : Any> acos(value: Field<Context, Double?>): Value<Context, Double?>

The inverse cosine (arc cosine) of a value, in radians.

acosh

inline fun acosh(value: Double?): Value<Any, Double?>

The inverse hyperbolic cosine (hyperbolic arc cosine) of a value, in radians.

@JvmName(name = "acoshByProperty")
open fun <Context : Any> acosh(value: KProperty1<Context, Double?>): Value<Context, Double?>

The inverse hyperbolic cosine (hyperbolic arc cosine) of a value, in radians.

open fun <Context : Any> acosh(value: Value<Context, Double?>): Value<Context, Double?>

The inverse hyperbolic cosine (hyperbolic arc cosine) of a value, in radians.

@JvmName(name = "acoshByField")
open fun <Context : Any> acosh(value: Field<Context, Double?>): Value<Context, Double?>

The inverse hyperbolic cosine (hyperbolic arc cosine) of a value, in radians.

asin

inline fun asin(value: Double?): Value<Any, Double?>

The inverse sine (arc sine) of a value, in radians.

@JvmName(name = "asinByProperty")
open fun <Context : Any> asin(value: KProperty1<Context, Double?>): Value<Context, Double?>

The inverse sine (arc sine) of a value, in radians.

open fun <Context : Any> asin(value: Value<Context, Double?>): Value<Context, Double?>

The inverse sine (arc sine) of a value, in radians.

@JvmName(name = "asinByField")
open fun <Context : Any> asin(value: Field<Context, Double?>): Value<Context, Double?>

The inverse sine (arc sine) of a value, in radians.

asinh

inline fun asinh(value: Double?): Value<Any, Double?>

The inverse hyperbolic sine (hyperbolic arc sine) of a value, in radians.

@JvmName(name = "asinhByProperty")
open fun <Context : Any> asinh(value: KProperty1<Context, Double?>): Value<Context, Double?>

The inverse hyperbolic sine (hyperbolic arc sine) of a value, in radians.

open fun <Context : Any> asinh(value: Value<Context, Double?>): Value<Context, Double?>

The inverse hyperbolic sine (hyperbolic arc sine) of a value, in radians.

@JvmName(name = "asinhByField")
open fun <Context : Any> asinh(value: Field<Context, Double?>): Value<Context, Double?>

The inverse hyperbolic sine (hyperbolic arc sine) of a value, in radians.

atan

inline fun atan(value: Double?): Value<Any, Double?>

The inverse tangent (arc tangent) of a value, in radians.

@JvmName(name = "atanByProperty")
open fun <Context : Any> atan(value: KProperty1<Context, Double?>): Value<Context, Double?>

The inverse tangent (arc tangent) of a value, in radians.

open fun <Context : Any> atan(value: Value<Context, Double?>): Value<Context, Double?>

The inverse tangent (arc tangent) of a value, in radians.

@JvmName(name = "atanByField")
open fun <Context : Any> atan(value: Field<Context, Double?>): Value<Context, Double?>

The inverse tangent (arc tangent) of a value, in radians.

atanh

inline fun atanh(value: Double?): Value<Any, Double?>

The inverse hyperbolic tangent (hyperbolic arc tangent) of a value, in radians.

@JvmName(name = "atanhByProperty")
open fun <Context : Any> atanh(value: KProperty1<Context, Double?>): Value<Context, Double?>

The inverse hyperbolic tangent (hyperbolic arc tangent) of a value, in radians.

open fun <Context : Any> atanh(value: Value<Context, Double?>): Value<Context, Double?>

The inverse hyperbolic tangent (hyperbolic arc tangent) of a value, in radians.

@JvmName(name = "atanhByField")
open fun <Context : Any> atanh(value: Field<Context, Double?>): Value<Context, Double?>

The inverse hyperbolic tangent (hyperbolic arc tangent) of a value, in radians.

average

open fun <Context : Any, T : Number> average(): Value<Context, T>
@JvmName(name = "averageResultReceiver")
open fun <Context : Any, T : Number> Collection<Number?>.average(): Value<Context, T>

Returns the average of the elements in the array.

Returns the average of the elements in the array.

@JvmName(name = "averagePropertyReceiver")
open fun <Context : Any, T : Number> KProperty1<Context, Collection<Number?>>.average(): Value<Context, T>

Returns the average of the elements in the array.

Returns the average of the elements in the array.

@JvmName(name = "averageFieldReceiver")
open fun <Context : Any, T : Number> Field<Context, Collection<Number?>>.average(): Value<Context, T>

Returns the average of the elements in the array.

@JvmName(name = "averageByProperty")
open fun <Context : Any, T : Number> average(vararg input: KProperty1<Context, Number?>): Value<Context, T>

Returns the average of the elements in the array.

open fun <Context : Any, T : Number> average(vararg input: Value<Context, Number?>): Value<Context, T>

Returns the average of the elements in the array.

@JvmName(name = "averageByField")
open fun <Context : Any, T : Number> average(vararg input: Field<Context, Number?>): Value<Context, T>

Returns the average of the elements in the array.

ceil

inline fun <Context : Any, Result : Number?> ceil(value: Result): Value<Context, Result>

The smallest integer greater than or equal to the specified value.

@JvmName(name = "ceilByProperty")
open fun <Context : Any, Result : Number?> ceil(value: KProperty1<Context, Result>): Value<Context, Result>

The smallest integer greater than or equal to the specified value.

open fun <Context : Any, Result : Number?> ceil(value: Value<Context, Result>): Value<Context, Result>

The smallest integer greater than or equal to the specified value.

@JvmName(name = "ceilByField")
open fun <Context : Any, Result : Number?> ceil(value: Field<Context, Result>): Value<Context, Result>

The smallest integer greater than or equal to the specified value.

concat

open fun <Context : Any> concat(strings: List<Value<Context, String?>>): Value<Context, String?>

Concatenates strings together.

@JvmName(name = "concatByProperty")
open fun <Context : Any> concat(vararg strings: KProperty1<Context, String?>): Value<Context, String?>

Concatenates strings together.

open fun <Context : Any> concat(vararg strings: Value<Context, String?>): Value<Context, String?>

Concatenates strings together.

@JvmName(name = "concatByField")
open fun <Context : Any> concat(vararg strings: Field<Context, String?>): Value<Context, String?>

Concatenates strings together.

@JvmName(name = "concatResultReceiverByResult")
infix inline fun String?.concat(other: String?): Value<Any, String?>

Concatenates strings together.

@JvmName(name = "concatResultReceiverByProperty")
infix inline fun <Context : Any> String?.concat(other: KProperty1<Context, String?>): Value<Context, String?>

Concatenates strings together.

@JvmName(name = "concatResultReceiverByValue")
infix inline fun <Context : Any> String?.concat(other: Value<Context, String?>): Value<Context, String?>

Concatenates strings together.

@JvmName(name = "concatResultReceiverByField")
infix inline fun <Context : Any> String?.concat(other: Field<Context, String?>): Value<Context, String?>

Concatenates strings together.

@JvmName(name = "concatPropertyReceiverByResult")
infix inline fun <Context : Any> KProperty1<Context, String?>.concat(other: String?): Value<Context, String?>

Concatenates strings together.

@JvmName(name = "concatPropertyReceiverByProperty")
open infix fun <Context : Any> KProperty1<Context, String?>.concat(other: KProperty1<Context, String?>): Value<Context, String?>

Concatenates strings together.

@JvmName(name = "concatPropertyReceiverByValue")
open infix fun <Context : Any> KProperty1<Context, String?>.concat(other: Value<Context, String?>): Value<Context, String?>

Concatenates strings together.

@JvmName(name = "concatPropertyReceiverByField")
open infix fun <Context : Any> KProperty1<Context, String?>.concat(other: Field<Context, String?>): Value<Context, String?>

Concatenates strings together.

infix inline fun <Context : Any> Value<Context, String?>.concat(other: String?): Value<Context, String?>

Concatenates strings together.

@JvmName(name = "concatByProperty")
open infix fun <Context : Any> Value<Context, String?>.concat(other: KProperty1<Context, String?>): Value<Context, String?>

Concatenates strings together.

open infix fun <Context : Any> Value<Context, String?>.concat(other: Value<Context, String?>): Value<Context, String?>

Concatenates strings together.

@JvmName(name = "concatByField")
open infix fun <Context : Any> Value<Context, String?>.concat(other: Field<Context, String?>): Value<Context, String?>

Concatenates strings together.

@JvmName(name = "concatFieldReceiverByResult")
infix inline fun <Context : Any> Field<Context, String?>.concat(other: String?): Value<Context, String?>

Concatenates strings together.

@JvmName(name = "concatFieldReceiverByProperty")
open infix fun <Context : Any> Field<Context, String?>.concat(other: KProperty1<Context, String?>): Value<Context, String?>

Concatenates strings together.

@JvmName(name = "concatFieldReceiverByValue")
open infix fun <Context : Any> Field<Context, String?>.concat(other: Value<Context, String?>): Value<Context, String?>

Concatenates strings together.

@JvmName(name = "concatFieldReceiverByField")
open infix fun <Context : Any> Field<Context, String?>.concat(other: Field<Context, String?>): Value<Context, String?>

Concatenates strings together.

cond

inline fun <R : Any, T> cond(
    condition: Boolean, 
    ifTrue: T, 
    ifFalse: T
): Value<R, T>

Decides between two values depending on the evaluation of a boolean value.

@JvmName(name = "condByResultByResultByProperty")
inline fun <R : Any, T> cond(
    condition: Boolean, 
    ifTrue: T, 
    ifFalse: KProperty1<R, T>
): Value<R, T>

Decides between two values depending on the evaluation of a boolean value.

inline fun <R : Any, T> cond(
    condition: Boolean, 
    ifTrue: T, 
    ifFalse: Value<R, T>
): Value<R, T>

Decides between two values depending on the evaluation of a boolean value.

@JvmName(name = "condByResultByResultByField")
inline fun <R : Any, T> cond(
    condition: Boolean, 
    ifTrue: T, 
    ifFalse: Field<R, T>
): Value<R, T>

Decides between two values depending on the evaluation of a boolean value.

@JvmName(name = "condByResultByPropertyByResult")
inline fun <R : Any, T> cond(
    condition: Boolean, 
    ifTrue: KProperty1<R, T>, 
    ifFalse: T
): Value<R, T>

Decides between two values depending on the evaluation of a boolean value.

@JvmName(name = "condByResultByPropertyByProperty")
inline fun <R : Any, T> cond(
    condition: Boolean, 
    ifTrue: KProperty1<R, T>, 
    ifFalse: KProperty1<R, T>
): Value<R, T>

Decides between two values depending on the evaluation of a boolean value.

@JvmName(name = "condByResultByPropertyByValue")
inline fun <R : Any, T> cond(
    condition: Boolean, 
    ifTrue: KProperty1<R, T>, 
    ifFalse: Value<R, T>
): Value<R, T>

Decides between two values depending on the evaluation of a boolean value.

@JvmName(name = "condByResultByPropertyByField")
inline fun <R : Any, T> cond(
    condition: Boolean, 
    ifTrue: KProperty1<R, T>, 
    ifFalse: Field<R, T>
): Value<R, T>

Decides between two values depending on the evaluation of a boolean value.

inline fun <R : Any, T> cond(
    condition: Boolean, 
    ifTrue: Value<R, T>, 
    ifFalse: T
): Value<R, T>

Decides between two values depending on the evaluation of a boolean value.

@JvmName(name = "condByResultByValueByProperty")
inline fun <R : Any, T> cond(
    condition: Boolean, 
    ifTrue: Value<R, T>, 
    ifFalse: KProperty1<R, T>
): Value<R, T>

Decides between two values depending on the evaluation of a boolean value.

inline fun <R : Any, T> cond(
    condition: Boolean, 
    ifTrue: Value<R, T>, 
    ifFalse: Value<R, T>
): Value<R, T>

Decides between two values depending on the evaluation of a boolean value.

@JvmName(name = "condByResultByValueByField")
inline fun <R : Any, T> cond(
    condition: Boolean, 
    ifTrue: Value<R, T>, 
    ifFalse: Field<R, T>
): Value<R, T>

Decides between two values depending on the evaluation of a boolean value.

@JvmName(name = "condByResultByFieldByResult")
inline fun <R : Any, T> cond(
    condition: Boolean, 
    ifTrue: Field<R, T>, 
    ifFalse: T
): Value<R, T>

Decides between two values depending on the evaluation of a boolean value.

@JvmName(name = "condByResultByFieldByProperty")
inline fun <R : Any, T> cond(
    condition: Boolean, 
    ifTrue: Field<R, T>, 
    ifFalse: KProperty1<R, T>
): Value<R, T>

Decides between two values depending on the evaluation of a boolean value.

@JvmName(name = "condByResultByFieldByValue")
inline fun <R : Any, T> cond(
    condition: Boolean, 
    ifTrue: Field<R, T>, 
    ifFalse: Value<R, T>
): Value<R, T>

Decides between two values depending on the evaluation of a boolean value.

@JvmName(name = "condByResultByFieldByField")
inline fun <R : Any, T> cond(
    condition: Boolean, 
    ifTrue: Field<R, T>, 
    ifFalse: Field<R, T>
): Value<R, T>

Decides between two values depending on the evaluation of a boolean value.

@JvmName(name = "condByPropertyByResultByResult")
inline fun <R : Any, T> cond(
    condition: KProperty1<R, Boolean>, 
    ifTrue: T, 
    ifFalse: T
): Value<R, T>

Decides between two values depending on the evaluation of a boolean value.

@JvmName(name = "condByPropertyByResultByProperty")
inline fun <R : Any, T> cond(
    condition: KProperty1<R, Boolean>, 
    ifTrue: T, 
    ifFalse: KProperty1<R, T>
): Value<R, T>

Decides between two values depending on the evaluation of a boolean value.

@JvmName(name = "condByPropertyByResultByValue")
inline fun <R : Any, T> cond(
    condition: KProperty1<R, Boolean>, 
    ifTrue: T, 
    ifFalse: Value<R, T>
): Value<R, T>

Decides between two values depending on the evaluation of a boolean value.

@JvmName(name = "condByPropertyByResultByField")
inline fun <R : Any, T> cond(
    condition: KProperty1<R, Boolean>, 
    ifTrue: T, 
    ifFalse: Field<R, T>
): Value<R, T>

Decides between two values depending on the evaluation of a boolean value.

@JvmName(name = "condByPropertyByPropertyByResult")
inline fun <R : Any, T> cond(
    condition: KProperty1<R, Boolean>, 
    ifTrue: KProperty1<R, T>, 
    ifFalse: T
): Value<R, T>

Decides between two values depending on the evaluation of a boolean value.

@JvmName(name = "condByPropertyByPropertyByProperty")
open fun <R : Any, T> cond(
    condition: KProperty1<R, Boolean>, 
    ifTrue: KProperty1<R, T>, 
    ifFalse: KProperty1<R, T>
): Value<R, T>

Decides between two values depending on the evaluation of a boolean value.

@JvmName(name = "condByPropertyByPropertyByValue")
open fun <R : Any, T> cond(
    condition: KProperty1<R, Boolean>, 
    ifTrue: KProperty1<R, T>, 
    ifFalse: Value<R, T>
): Value<R, T>

Decides between two values depending on the evaluation of a boolean value.

@JvmName(name = "condByPropertyByPropertyByField")
open fun <R : Any, T> cond(
    condition: KProperty1<R, Boolean>, 
    ifTrue: KProperty1<R, T>, 
    ifFalse: Field<R, T>
): Value<R, T>

Decides between two values depending on the evaluation of a boolean value.

@JvmName(name = "condByPropertyByValueByResult")
inline fun <R : Any, T> cond(
    condition: KProperty1<R, Boolean>, 
    ifTrue: Value<R, T>, 
    ifFalse: T
): Value<R, T>

Decides between two values depending on the evaluation of a boolean value.

@JvmName(name = "condByPropertyByValueByProperty")
open fun <R : Any, T> cond(
    condition: KProperty1<R, Boolean>, 
    ifTrue: Value<R, T>, 
    ifFalse: KProperty1<R, T>
): Value<R, T>

Decides between two values depending on the evaluation of a boolean value.

@JvmName(name = "condByPropertyByValueByValue")
open fun <R : Any, T> cond(
    condition: KProperty1<R, Boolean>, 
    ifTrue: Value<R, T>, 
    ifFalse: Value<R, T>
): Value<R, T>

Decides between two values depending on the evaluation of a boolean value.

@JvmName(name = "condByPropertyByValueByField")
open fun <R : Any, T> cond(
    condition: KProperty1<R, Boolean>, 
    ifTrue: Value<R, T>, 
    ifFalse: Field<R, T>
): Value<R, T>

Decides between two values depending on the evaluation of a boolean value.

@JvmName(name = "condByPropertyByFieldByResult")
inline fun <R : Any, T> cond(
    condition: KProperty1<R, Boolean>, 
    ifTrue: Field<R, T>, 
    ifFalse: T
): Value<R, T>

Decides between two values depending on the evaluation of a boolean value.

@JvmName(name = "condByPropertyByFieldByProperty")
open fun <R : Any, T> cond(
    condition: KProperty1<R, Boolean>, 
    ifTrue: Field<R, T>, 
    ifFalse: KProperty1<R, T>
): Value<R, T>

Decides between two values depending on the evaluation of a boolean value.

@JvmName(name = "condByPropertyByFieldByValue")
open fun <R : Any, T> cond(
    condition: KProperty1<R, Boolean>, 
    ifTrue: Field<R, T>, 
    ifFalse: Value<R, T>
): Value<R, T>

Decides between two values depending on the evaluation of a boolean value.

@JvmName(name = "condByPropertyByFieldByField")
open fun <R : Any, T> cond(
    condition: KProperty1<R, Boolean>, 
    ifTrue: Field<R, T>, 
    ifFalse: Field<R, T>
): Value<R, T>

Decides between two values depending on the evaluation of a boolean value.

inline fun <R : Any, T> cond(
    condition: Value<R, Boolean>, 
    ifTrue: T, 
    ifFalse: T
): Value<R, T>

Decides between two values depending on the evaluation of a boolean value.

@JvmName(name = "condByValueByResultByProperty")
inline fun <R : Any, T> cond(
    condition: Value<R, Boolean>, 
    ifTrue: T, 
    ifFalse: KProperty1<R, T>
): Value<R, T>

Decides between two values depending on the evaluation of a boolean value.

inline fun <R : Any, T> cond(
    condition: Value<R, Boolean>, 
    ifTrue: T, 
    ifFalse: Value<R, T>
): Value<R, T>

Decides between two values depending on the evaluation of a boolean value.

@JvmName(name = "condByValueByResultByField")
inline fun <R : Any, T> cond(
    condition: Value<R, Boolean>, 
    ifTrue: T, 
    ifFalse: Field<R, T>
): Value<R, T>

Decides between two values depending on the evaluation of a boolean value.

@JvmName(name = "condByValueByPropertyByResult")
inline fun <R : Any, T> cond(
    condition: Value<R, Boolean>, 
    ifTrue: KProperty1<R, T>, 
    ifFalse: T
): Value<R, T>

Decides between two values depending on the evaluation of a boolean value.

@JvmName(name = "condByValueByPropertyByProperty")
open fun <R : Any, T> cond(
    condition: Value<R, Boolean>, 
    ifTrue: KProperty1<R, T>, 
    ifFalse: KProperty1<R, T>
): Value<R, T>

Decides between two values depending on the evaluation of a boolean value.

@JvmName(name = "condByValueByPropertyByValue")
open fun <R : Any, T> cond(
    condition: Value<R, Boolean>, 
    ifTrue: KProperty1<R, T>, 
    ifFalse: Value<R, T>
): Value<R, T>

Decides between two values depending on the evaluation of a boolean value.

@JvmName(name = "condByValueByPropertyByField")
open fun <R : Any, T> cond(
    condition: Value<R, Boolean>, 
    ifTrue: KProperty1<R, T>, 
    ifFalse: Field<R, T>
): Value<R, T>

Decides between two values depending on the evaluation of a boolean value.

inline fun <R : Any, T> cond(
    condition: Value<R, Boolean>, 
    ifTrue: Value<R, T>, 
    ifFalse: T
): Value<R, T>

Decides between two values depending on the evaluation of a boolean value.

@JvmName(name = "condByValueByValueByProperty")
open fun <R : Any, T> cond(
    condition: Value<R, Boolean>, 
    ifTrue: Value<R, T>, 
    ifFalse: KProperty1<R, T>
): Value<R, T>

Decides between two values depending on the evaluation of a boolean value.

open fun <R : Any, T> cond(
    condition: Value<R, Boolean>, 
    ifTrue: Value<R, T>, 
    ifFalse: Value<R, T>
): Value<R, T>

Decides between two values depending on the evaluation of a boolean value.

@JvmName(name = "condByValueByValueByField")
open fun <R : Any, T> cond(
    condition: Value<R, Boolean>, 
    ifTrue: Value<R, T>, 
    ifFalse: Field<R, T>
): Value<R, T>

Decides between two values depending on the evaluation of a boolean value.

@JvmName(name = "condByValueByFieldByResult")
inline fun <R : Any, T> cond(
    condition: Value<R, Boolean>, 
    ifTrue: Field<R, T>, 
    ifFalse: T
): Value<R, T>

Decides between two values depending on the evaluation of a boolean value.

@JvmName(name = "condByValueByFieldByProperty")
open fun <R : Any, T> cond(
    condition: Value<R, Boolean>, 
    ifTrue: Field<R, T>, 
    ifFalse: KProperty1<R, T>
): Value<R, T>

Decides between two values depending on the evaluation of a boolean value.

@JvmName(name = "condByValueByFieldByValue")
open fun <R : Any, T> cond(
    condition: Value<R, Boolean>, 
    ifTrue: Field<R, T>, 
    ifFalse: Value<R, T>
): Value<R, T>

Decides between two values depending on the evaluation of a boolean value.

@JvmName(name = "condByValueByFieldByField")
open fun <R : Any, T> cond(
    condition: Value<R, Boolean>, 
    ifTrue: Field<R, T>, 
    ifFalse: Field<R, T>
): Value<R, T>

Decides between two values depending on the evaluation of a boolean value.

@JvmName(name = "condByFieldByResultByResult")
inline fun <R : Any, T> cond(
    condition: Field<R, Boolean>, 
    ifTrue: T, 
    ifFalse: T
): Value<R, T>

Decides between two values depending on the evaluation of a boolean value.

@JvmName(name = "condByFieldByResultByProperty")
inline fun <R : Any, T> cond(
    condition: Field<R, Boolean>, 
    ifTrue: T, 
    ifFalse: KProperty1<R, T>
): Value<R, T>

Decides between two values depending on the evaluation of a boolean value.

@JvmName(name = "condByFieldByResultByValue")
inline fun <R : Any, T> cond(
    condition: Field<R, Boolean>, 
    ifTrue: T, 
    ifFalse: Value<R, T>
): Value<R, T>

Decides between two values depending on the evaluation of a boolean value.

@JvmName(name = "condByFieldByResultByField")
inline fun <R : Any, T> cond(
    condition: Field<R, Boolean>, 
    ifTrue: T, 
    ifFalse: Field<R, T>
): Value<R, T>

Decides between two values depending on the evaluation of a boolean value.

@JvmName(name = "condByFieldByPropertyByResult")
inline fun <R : Any, T> cond(
    condition: Field<R, Boolean>, 
    ifTrue: KProperty1<R, T>, 
    ifFalse: T
): Value<R, T>

Decides between two values depending on the evaluation of a boolean value.

@JvmName(name = "condByFieldByPropertyByProperty")
open fun <R : Any, T> cond(
    condition: Field<R, Boolean>, 
    ifTrue: KProperty1<R, T>, 
    ifFalse: KProperty1<R, T>
): Value<R, T>

Decides between two values depending on the evaluation of a boolean value.

@JvmName(name = "condByFieldByPropertyByValue")
open fun <R : Any, T> cond(
    condition: Field<R, Boolean>, 
    ifTrue: KProperty1<R, T>, 
    ifFalse: Value<R, T>
): Value<R, T>

Decides between two values depending on the evaluation of a boolean value.

@JvmName(name = "condByFieldByPropertyByField")
open fun <R : Any, T> cond(
    condition: Field<R, Boolean>, 
    ifTrue: KProperty1<R, T>, 
    ifFalse: Field<R, T>
): Value<R, T>

Decides between two values depending on the evaluation of a boolean value.

@JvmName(name = "condByFieldByValueByResult")
inline fun <R : Any, T> cond(
    condition: Field<R, Boolean>, 
    ifTrue: Value<R, T>, 
    ifFalse: T
): Value<R, T>

Decides between two values depending on the evaluation of a boolean value.

@JvmName(name = "condByFieldByValueByProperty")
open fun <R : Any, T> cond(
    condition: Field<R, Boolean>, 
    ifTrue: Value<R, T>, 
    ifFalse: KProperty1<R, T>
): Value<R, T>

Decides between two values depending on the evaluation of a boolean value.

@JvmName(name = "condByFieldByValueByValue")
open fun <R : Any, T> cond(
    condition: Field<R, Boolean>, 
    ifTrue: Value<R, T>, 
    ifFalse: Value<R, T>
): Value<R, T>

Decides between two values depending on the evaluation of a boolean value.

@JvmName(name = "condByFieldByValueByField")
open fun <R : Any, T> cond(
    condition: Field<R, Boolean>, 
    ifTrue: Value<R, T>, 
    ifFalse: Field<R, T>
): Value<R, T>

Decides between two values depending on the evaluation of a boolean value.

@JvmName(name = "condByFieldByFieldByResult")
inline fun <R : Any, T> cond(
    condition: Field<R, Boolean>, 
    ifTrue: Field<R, T>, 
    ifFalse: T
): Value<R, T>

Decides between two values depending on the evaluation of a boolean value.

@JvmName(name = "condByFieldByFieldByProperty")
open fun <R : Any, T> cond(
    condition: Field<R, Boolean>, 
    ifTrue: Field<R, T>, 
    ifFalse: KProperty1<R, T>
): Value<R, T>

Decides between two values depending on the evaluation of a boolean value.

@JvmName(name = "condByFieldByFieldByValue")
open fun <R : Any, T> cond(
    condition: Field<R, Boolean>, 
    ifTrue: Field<R, T>, 
    ifFalse: Value<R, T>
): Value<R, T>

Decides between two values depending on the evaluation of a boolean value.

@JvmName(name = "condByFieldByFieldByField")
open fun <R : Any, T> cond(
    condition: Field<R, Boolean>, 
    ifTrue: Field<R, T>, 
    ifFalse: Field<R, T>
): Value<R, T>

Decides between two values depending on the evaluation of a boolean value.

cos

inline fun cos(value: Double?): Value<Any, Double?>

The cosine of a value that is measured in radians.

@JvmName(name = "cosByProperty")
open fun <Context : Any> cos(value: KProperty1<Context, Double?>): Value<Context, Double?>

The cosine of a value that is measured in radians.

open fun <Context : Any> cos(value: Value<Context, Double?>): Value<Context, Double?>

The cosine of a value that is measured in radians.

@JvmName(name = "cosByField")
open fun <Context : Any> cos(value: Field<Context, Double?>): Value<Context, Double?>

The cosine of a value that is measured in radians.

cosh

inline fun cosh(value: Double?): Value<Any, Double?>

The hyperbolic cosine of a value that is measured in radians.

@JvmName(name = "coshByProperty")
open fun <Context : Any> cosh(value: KProperty1<Context, Double?>): Value<Context, Double?>

The hyperbolic cosine of a value that is measured in radians.

open fun <Context : Any> cosh(value: Value<Context, Double?>): Value<Context, Double?>

The hyperbolic cosine of a value that is measured in radians.

@JvmName(name = "coshByField")
open fun <Context : Any> cosh(value: Field<Context, Double?>): Value<Context, Double?>

The hyperbolic cosine of a value that is measured in radians.

div

@JvmName(name = "divResultReceiverByResult")
inline operator fun <Context : Any, Result> Result.div(other: Result): Value<Context, Result>

Divides one aggregation value by another.

@JvmName(name = "divResultReceiverByValue")
inline operator fun <Context : Any, Result> Result.div(other: Value<Context, Result>): Value<Context, Result>

Divides one aggregation value by another.

@JvmName(name = "divResultReceiverByField")
inline operator fun <Context : Any, Result> Result.div(other: Field<Context, Result>): Value<Context, Result>

Divides one aggregation value by another.

inline operator fun <Context : Any, Result> Value<Context, Result>.div(other: Result): Value<Context, Result>

Divides one aggregation value by another.

open operator fun <Context : Any, Result> Value<Context, Result>.div(other: Value<Context, Result>): Value<Context, Result>

Divides one aggregation value by another.

@JvmName(name = "divByField")
open operator fun <Context : Any, Result> Value<Context, Result>.div(other: Field<Context, Result>): Value<Context, Result>

Divides one aggregation value by another.

@JvmName(name = "divFieldReceiverByResult")
inline operator fun <Context : Any, Result> Field<Context, Result>.div(other: Result): Value<Context, Result>

Divides one aggregation value by another.

@JvmName(name = "divFieldReceiverByValue")
open operator fun <Context : Any, Result> Field<Context, Result>.div(other: Value<Context, Result>): Value<Context, Result>

Divides one aggregation value by another.

@JvmName(name = "divFieldReceiverByField")
open operator fun <Context : Any, Result> Field<Context, Result>.div(other: Field<Context, Result>): Value<Context, Result>

Divides one aggregation value by another.

@JvmName(name = "divResultReceiver")
inline operator fun <Context : Any, Root, Child> Root.div(field: KProperty1<Root, Child>): Value<Context, Child>

Refers to field as a nested field of the current value.

@JvmName(name = "divResultReceiver")
inline operator fun <Context : Any, Root, Child> Root.div(field: Field<Root, Child>): Value<Context, Child>

Refers to field as a nested field of the current value.

open operator fun <Context : Any, Root, Child> Value<Context, Root>.div(field: KProperty1<Root, Child>): Value<Context, Child>

Refers to field as a nested field of the current value.

open operator fun <Context : Any, Root, Child> Value<Context, Root>.div(field: Field<Root, Child>): Value<Context, Child>

Refers to field as a nested field of the current value.

@JvmName(name = "divFieldReceiver")
open operator fun <Context : Any, Root, Child> Field<Context, Root>.div(field: KProperty1<Root, Child>): Value<Context, Child>

Refers to field as a nested field of the current value.

@JvmName(name = "divFieldReceiver")
open operator fun <Context : Any, Root, Child> Field<Context, Root>.div(field: Field<Root, Child>): Value<Context, Child>

Refers to field as a nested field of the current value.

open operator fun <Root, Parent, Child> KProperty1<Root, Parent>.div(child: KProperty1<Parent & Any, Child>): Field<Root, Child>

Refers to child as a nested field of the current field.

open operator fun <Root, Type, Child> Field<Root, Type>.div(child: KProperty1<in Type & Any, Child>): Field<Root, Child>

Refers to child as a nested field of the current field.

open operator fun <Root, Type, Child> Field<Root, Type>.div(child: Field<Type, Child>): Field<Root, Child>

Refers to child as a nested field of the current field.

eq

@JvmName(name = "eqResultReceiverByResult")
infix inline fun <Context : Any, Result> Result.eq(other: Result): Value<Context, Boolean>

Compares two aggregation values and returns true if they are equivalent.

@JvmName(name = "eqResultReceiverByProperty")
infix inline fun <Context : Any, Result> Result.eq(other: KProperty1<Context, Result>): Value<Context, Boolean>

Compares two aggregation values and returns true if they are equivalent.

@JvmName(name = "eqResultReceiverByValue")
infix inline fun <Context : Any, Result> Result.eq(other: Value<Context, Result>): Value<Context, Boolean>

Compares two aggregation values and returns true if they are equivalent.

@JvmName(name = "eqResultReceiverByField")
infix inline fun <Context : Any, Result> Result.eq(other: Field<Context, Result>): Value<Context, Boolean>

Compares two aggregation values and returns true if they are equivalent.

@JvmName(name = "eqPropertyReceiverByResult")
infix inline fun <Context : Any, Result> KProperty1<Context, Result>.eq(other: Result): Value<Context, Boolean>

Compares two aggregation values and returns true if they are equivalent.

@JvmName(name = "eqPropertyReceiverByProperty")
open infix fun <Context : Any, Result> KProperty1<Context, Result>.eq(other: KProperty1<Context, Result>): Value<Context, Boolean>

Compares two aggregation values and returns true if they are equivalent.

@JvmName(name = "eqPropertyReceiverByValue")
open infix fun <Context : Any, Result> KProperty1<Context, Result>.eq(other: Value<Context, Result>): Value<Context, Boolean>

Compares two aggregation values and returns true if they are equivalent.

@JvmName(name = "eqPropertyReceiverByField")
open infix fun <Context : Any, Result> KProperty1<Context, Result>.eq(other: Field<Context, Result>): Value<Context, Boolean>

Compares two aggregation values and returns true if they are equivalent.

infix inline fun <Context : Any, Result> Value<Context, Result>.eq(other: Result): Value<Context, Boolean>

Compares two aggregation values and returns true if they are equivalent.

@JvmName(name = "eqByProperty")
open infix fun <Context : Any, Result> Value<Context, Result>.eq(other: KProperty1<Context, Result>): Value<Context, Boolean>

Compares two aggregation values and returns true if they are equivalent.

open infix fun <Context : Any, Result> Value<Context, Result>.eq(other: Value<Context, Result>): Value<Context, Boolean>

Compares two aggregation values and returns true if they are equivalent.

@JvmName(name = "eqByField")
open infix fun <Context : Any, Result> Value<Context, Result>.eq(other: Field<Context, Result>): Value<Context, Boolean>

Compares two aggregation values and returns true if they are equivalent.

@JvmName(name = "eqFieldReceiverByResult")
infix inline fun <Context : Any, Result> Field<Context, Result>.eq(other: Result): Value<Context, Boolean>

Compares two aggregation values and returns true if they are equivalent.

@JvmName(name = "eqFieldReceiverByProperty")
open infix fun <Context : Any, Result> Field<Context, Result>.eq(other: KProperty1<Context, Result>): Value<Context, Boolean>

Compares two aggregation values and returns true if they are equivalent.

@JvmName(name = "eqFieldReceiverByValue")
open infix fun <Context : Any, Result> Field<Context, Result>.eq(other: Value<Context, Result>): Value<Context, Boolean>

Compares two aggregation values and returns true if they are equivalent.

@JvmName(name = "eqFieldReceiverByField")
open infix fun <Context : Any, Result> Field<Context, Result>.eq(other: Field<Context, Result>): Value<Context, Boolean>

Compares two aggregation values and returns true if they are equivalent.

filter

@JvmName(name = "filterResultReceiverByResult")
open fun <Context : Any, T> Collection<T>.filter(
    limit: Int, 
    variableName: String = "this", 
    predicate: AggregationOperators.(Value<Any, T>) -> Value<T & Any, Boolean>
): Value<Context, List<T>>

Selects a subset of an array to return based on the specified predicate, similarly to Kotlin'sfilter``.

@JvmName(name = "filterResultReceiverByProperty")
open fun <Context : Any, T> Collection<T>.filter(
    limit: KProperty1<Context, Int>, 
    variableName: String = "this", 
    predicate: AggregationOperators.(Value<Any, T>) -> Value<T & Any, Boolean>
): Value<Context, List<T>>

Selects a subset of an array to return based on the specified predicate, similarly to Kotlin'sfilter``.

@JvmName(name = "filterResultReceiverByValue")
open fun <Context : Any, T> Collection<T>.filter(
    limit: Value<Context, Int>? = null, 
    variableName: String = "this", 
    predicate: AggregationOperators.(Value<Any, T>) -> Value<T & Any, Boolean>
): Value<Context, List<T>>

Selects a subset of an array to return based on the specified predicate, similarly to Kotlin'sfilter``.

@JvmName(name = "filterResultReceiverByField")
open fun <Context : Any, T> Collection<T>.filter(
    limit: Field<Context, Int>, 
    variableName: String = "this", 
    predicate: AggregationOperators.(Value<Any, T>) -> Value<T & Any, Boolean>
): Value<Context, List<T>>

Selects a subset of an array to return based on the specified predicate, similarly to Kotlin'sfilter``.

@JvmName(name = "filterPropertyReceiverByResult")
open fun <Context : Any, T> KProperty1<Context, Collection<T>>.filter(
    limit: Int, 
    variableName: String = "this", 
    predicate: AggregationOperators.(Value<Any, T>) -> Value<T & Any, Boolean>
): Value<Context, List<T>>

Selects a subset of an array to return based on the specified predicate, similarly to Kotlin'sfilter``.

@JvmName(name = "filterPropertyReceiverByProperty")
open fun <Context : Any, T> KProperty1<Context, Collection<T>>.filter(
    limit: KProperty1<Context, Int>, 
    variableName: String = "this", 
    predicate: AggregationOperators.(Value<Any, T>) -> Value<T & Any, Boolean>
): Value<Context, List<T>>

Selects a subset of an array to return based on the specified predicate, similarly to Kotlin'sfilter``.

@JvmName(name = "filterPropertyReceiverByValue")
open fun <Context : Any, T> KProperty1<Context, Collection<T>>.filter(
    limit: Value<Context, Int>? = null, 
    variableName: String = "this", 
    predicate: AggregationOperators.(Value<Any, T>) -> Value<T & Any, Boolean>
): Value<Context, List<T>>

Selects a subset of an array to return based on the specified predicate, similarly to Kotlin'sfilter``.

@JvmName(name = "filterPropertyReceiverByField")
open fun <Context : Any, T> KProperty1<Context, Collection<T>>.filter(
    limit: Field<Context, Int>, 
    variableName: String = "this", 
    predicate: AggregationOperators.(Value<Any, T>) -> Value<T & Any, Boolean>
): Value<Context, List<T>>

Selects a subset of an array to return based on the specified predicate, similarly to Kotlin'sfilter``.

open fun <Context : Any, T> Value<Context, Collection<T>>.filter(
    limit: Int, 
    variableName: String = "this", 
    predicate: AggregationOperators.(Value<Any, T>) -> Value<T & Any, Boolean>
): Value<Context, List<T>>

Selects a subset of an array to return based on the specified predicate, similarly to Kotlin'sfilter``.

@JvmName(name = "filterByProperty")
open fun <Context : Any, T> Value<Context, Collection<T>>.filter(
    limit: KProperty1<Context, Int>, 
    variableName: String = "this", 
    predicate: AggregationOperators.(Value<Any, T>) -> Value<T & Any, Boolean>
): Value<Context, List<T>>

Selects a subset of an array to return based on the specified predicate, similarly to Kotlin'sfilter``.

open fun <Context : Any, T> Value<Context, Collection<T>>.filter(
    limit: Value<Context, Int>? = null, 
    variableName: String = "this", 
    predicate: AggregationOperators.(Value<Any, T>) -> Value<T & Any, Boolean>
): Value<Context, List<T>>

Selects a subset of an array to return based on the specified predicate, similarly to Kotlin'sfilter``.

@JvmName(name = "filterByField")
open fun <Context : Any, T> Value<Context, Collection<T>>.filter(
    limit: Field<Context, Int>, 
    variableName: String = "this", 
    predicate: AggregationOperators.(Value<Any, T>) -> Value<T & Any, Boolean>
): Value<Context, List<T>>

Selects a subset of an array to return based on the specified predicate, similarly to Kotlin'sfilter``.

@JvmName(name = "filterFieldReceiverByResult")
open fun <Context : Any, T> Field<Context, Collection<T>>.filter(
    limit: Int, 
    variableName: String = "this", 
    predicate: AggregationOperators.(Value<Any, T>) -> Value<T & Any, Boolean>
): Value<Context, List<T>>

Selects a subset of an array to return based on the specified predicate, similarly to Kotlin'sfilter``.

@JvmName(name = "filterFieldReceiverByProperty")
open fun <Context : Any, T> Field<Context, Collection<T>>.filter(
    limit: KProperty1<Context, Int>, 
    variableName: String = "this", 
    predicate: AggregationOperators.(Value<Any, T>) -> Value<T & Any, Boolean>
): Value<Context, List<T>>

Selects a subset of an array to return based on the specified predicate, similarly to Kotlin'sfilter``.

@JvmName(name = "filterFieldReceiverByValue")
open fun <Context : Any, T> Field<Context, Collection<T>>.filter(
    limit: Value<Context, Int>? = null, 
    variableName: String = "this", 
    predicate: AggregationOperators.(Value<Any, T>) -> Value<T & Any, Boolean>
): Value<Context, List<T>>

Selects a subset of an array to return based on the specified predicate, similarly to Kotlin'sfilter``.

@JvmName(name = "filterFieldReceiverByField")
open fun <Context : Any, T> Field<Context, Collection<T>>.filter(
    limit: Field<Context, Int>, 
    variableName: String = "this", 
    predicate: AggregationOperators.(Value<Any, T>) -> Value<T & Any, Boolean>
): Value<Context, List<T>>

Selects a subset of an array to return based on the specified predicate, similarly to Kotlin'sfilter``.

floor

inline fun <Context : Any, Result : Number?> floor(value: Result): Value<Context, Result>

The largest integer less than or equal to the specified value.

@JvmName(name = "floorByProperty")
open fun <Context : Any, Result : Number?> floor(value: KProperty1<Context, Result>): Value<Context, Result>

The largest integer less than or equal to the specified value.

open fun <Context : Any, Result : Number?> floor(value: Value<Context, Result>): Value<Context, Result>

The largest integer less than or equal to the specified value.

@JvmName(name = "floorByField")
open fun <Context : Any, Result : Number?> floor(value: Field<Context, Result>): Value<Context, Result>

The largest integer less than or equal to the specified value.

freeze

@LowLevelApi
abstract override fun freeze()

Makes this expression immutable.

from

abstract fun from(foreignPipeline: HasLookupPipelineCompatibility<ForeignDocument>)

Specifies the foreign collection to join with.

To learn more about the $lookup stage, see HasLookup.lookup.

Example

class Department(
    val _id: ObjectId,
    val name: String,
)

class User(
    val _id: ObjectId,
    val name: String,
    val department: ObjectId,
    val departments: List<Department>,
)

users.aggregate()
    .lookup {
        into(User::departments)
        from(departments.aggregate())
        on(User::department, Department::_id)
    }

External resources

get

open operator fun <Root, Type> KProperty1<Root, Collection<Type>>.get(index: Int): Field<Root, Type>

Refers to a specific item in an array, by its index.

open operator fun <Root, Type> KProperty1<Root, Map<String, Type>>.get(index: String): Field<Root, Type>

Refers to a specific item in a map, by its name.

open operator fun <Root, Type> Field<Root, Collection<Type>>.get(index: Int): Field<Root, Type>

Refers to a specific item in an array, by its index.

open operator fun <Root, Type> Field<Root, Map<String, Type>>.get(key: String): Field<Root, Type>

Refers to a specific item in a map, by its name.

gt

@JvmName(name = "gtResultReceiverByResult")
infix inline fun <Context : Any, Result> Result.gt(other: Result): Value<Context, Boolean>
@JvmName(name = "gtResultReceiverByProperty")
infix inline fun <Context : Any, Result> Result.gt(other: KProperty1<Context, Result>): Value<Context, Boolean>
@JvmName(name = "gtResultReceiverByValue")
infix inline fun <Context : Any, Result> Result.gt(other: Value<Context, Result>): Value<Context, Boolean>
@JvmName(name = "gtResultReceiverByField")
infix inline fun <Context : Any, Result> Result.gt(other: Field<Context, Result>): Value<Context, Boolean>
@JvmName(name = "gtPropertyReceiverByResult")
infix inline fun <Context : Any, Result> KProperty1<Context, Result>.gt(other: Result): Value<Context, Boolean>
@JvmName(name = "gtPropertyReceiverByProperty")
open infix fun <Context : Any, Result> KProperty1<Context, Result>.gt(other: KProperty1<Context, Result>): Value<Context, Boolean>
@JvmName(name = "gtPropertyReceiverByValue")
open infix fun <Context : Any, Result> KProperty1<Context, Result>.gt(other: Value<Context, Result>): Value<Context, Boolean>
@JvmName(name = "gtPropertyReceiverByField")
open infix fun <Context : Any, Result> KProperty1<Context, Result>.gt(other: Field<Context, Result>): Value<Context, Boolean>
infix inline fun <Context : Any, Result> Value<Context, Result>.gt(other: Result): Value<Context, Boolean>
@JvmName(name = "gtByProperty")
open infix fun <Context : Any, Result> Value<Context, Result>.gt(other: KProperty1<Context, Result>): Value<Context, Boolean>
open infix fun <Context : Any, Result> Value<Context, Result>.gt(other: Value<Context, Result>): Value<Context, Boolean>
@JvmName(name = "gtByField")
open infix fun <Context : Any, Result> Value<Context, Result>.gt(other: Field<Context, Result>): Value<Context, Boolean>
@JvmName(name = "gtFieldReceiverByResult")
infix inline fun <Context : Any, Result> Field<Context, Result>.gt(other: Result): Value<Context, Boolean>
@JvmName(name = "gtFieldReceiverByProperty")
open infix fun <Context : Any, Result> Field<Context, Result>.gt(other: KProperty1<Context, Result>): Value<Context, Boolean>
@JvmName(name = "gtFieldReceiverByValue")
open infix fun <Context : Any, Result> Field<Context, Result>.gt(other: Value<Context, Result>): Value<Context, Boolean>
@JvmName(name = "gtFieldReceiverByField")
open infix fun <Context : Any, Result> Field<Context, Result>.gt(other: Field<Context, Result>): Value<Context, Boolean>

gte

@JvmName(name = "gteResultReceiverByResult")
infix inline fun <Context : Any, Result> Result.gte(other: Result): Value<Context, Boolean>
@JvmName(name = "gteResultReceiverByProperty")
infix inline fun <Context : Any, Result> Result.gte(other: KProperty1<Context, Result>): Value<Context, Boolean>
@JvmName(name = "gteResultReceiverByValue")
infix inline fun <Context : Any, Result> Result.gte(other: Value<Context, Result>): Value<Context, Boolean>
@JvmName(name = "gteResultReceiverByField")
infix inline fun <Context : Any, Result> Result.gte(other: Field<Context, Result>): Value<Context, Boolean>
@JvmName(name = "gtePropertyReceiverByResult")
infix inline fun <Context : Any, Result> KProperty1<Context, Result>.gte(other: Result): Value<Context, Boolean>
@JvmName(name = "gtePropertyReceiverByProperty")
open infix fun <Context : Any, Result> KProperty1<Context, Result>.gte(other: KProperty1<Context, Result>): Value<Context, Boolean>
@JvmName(name = "gtePropertyReceiverByValue")
open infix fun <Context : Any, Result> KProperty1<Context, Result>.gte(other: Value<Context, Result>): Value<Context, Boolean>
@JvmName(name = "gtePropertyReceiverByField")
open infix fun <Context : Any, Result> KProperty1<Context, Result>.gte(other: Field<Context, Result>): Value<Context, Boolean>
infix inline fun <Context : Any, Result> Value<Context, Result>.gte(other: Result): Value<Context, Boolean>
@JvmName(name = "gteByProperty")
open infix fun <Context : Any, Result> Value<Context, Result>.gte(other: KProperty1<Context, Result>): Value<Context, Boolean>
@JvmName(name = "gteByField")
open infix fun <Context : Any, Result> Value<Context, Result>.gte(other: Field<Context, Result>): Value<Context, Boolean>
@JvmName(name = "gteFieldReceiverByResult")
infix inline fun <Context : Any, Result> Field<Context, Result>.gte(other: Result): Value<Context, Boolean>
@JvmName(name = "gteFieldReceiverByProperty")
open infix fun <Context : Any, Result> Field<Context, Result>.gte(other: KProperty1<Context, Result>): Value<Context, Boolean>
@JvmName(name = "gteFieldReceiverByValue")
open infix fun <Context : Any, Result> Field<Context, Result>.gte(other: Value<Context, Result>): Value<Context, Boolean>
@JvmName(name = "gteFieldReceiverByField")
open infix fun <Context : Any, Result> Field<Context, Result>.gte(other: Field<Context, Result>): Value<Context, Boolean>

into

Specifies in which field the result of the lookup will be stored into.

Specifying this parameter is mandatory.

To learn more about the $lookup stage, see HasLookup.lookup.

Example

class Department(
    val _id: ObjectId,
    val name: String,
)

class User(
    val _id: ObjectId,
    val name: String,
    val department: ObjectId,
    val departments: List<Department>,
)

users.aggregate()
    .lookup {
        into(User::departments)
        from(departments.aggregate())
        on(User::department, Department::_id)
    }

Arrays and subdocuments

If you specify a field in a subdocument, the subdocument will be created even if no results are found. The field itself will not.

For example:

class Department(
    val _id: ObjectId,
    val name: String,
)

class DepartmentInfo(
    val _id: ObjectId,
    val department: Department? = null,
)

class User(
    val _id: ObjectId,
    val name: String,
    val departmentInfo: DepartmentInfo? = null,
)

users.aggregate()
    .lookup {
        into(User::departmentInfo / DepartmentInfo::department)
        from(departments.aggregate())
        on(User::departmentInfo / DepartmentInfo::_id, Department::_id)
    }

If no departments are found, here is a potential returned user:

{
    "_id": { "$oid": "699dfad90ca573f85c0eec1c" },
    "name": "Bob",
    "departmentInfo": {}
}

Even though no results were found, "departmentInfo" is still set to an empty document. Since DepartmentInfo._id does not have a default value, this request will fail during deserialization (missing mandatory field).

External resources

let

abstract fun <T> let(value: Value<LocalDocument, T>, name: String?): Value<ForeignDocument, T>

@JvmName(name = "letByField")
open fun <T> let(value: Field<LocalDocument, T>, name: String?): Value<ForeignDocument, T>

@JvmName(name = "letByProperty")
open fun <T> let(value: KProperty1<LocalDocument, T>, name: String?): Value<ForeignDocument, T>

inline fun <T> let(value: T, name: String?): Value<ForeignDocument, T>

Creates a binding allowing to use an arbitrary value computed from the local documents within the foreign pipeline.

By default, when using a pipeline in from, each foreign pipeline computes the exact same results. Using let, we can inject an arbitrary value within any stage of the foreign pipeline to force it to return different results.

Example

class Department(
    val _id: ObjectId,
    val name: String,
    val creationDate: Instant,
)

class User(
    val _id: ObjectId,
    val name: String,
    val creationDate: Instant,
    val departments: List<Department>,
)

users.aggregate()
    .lookup {
        into(User::departments)

        val userCreationDate = let(User::creationDate)

        from(
            departments.aggregate()
                .matchExpr { Department::creationDate gte userCreationDate }
        )
    }

To perform a simple equality between one local and one foreign field, see on.

External resources

Parameters

  • name: The name of the generated variable. If null, a name is generated automatically.
open fun <T> let(value: Value<LocalDocument, T>): Value<ForeignDocument, T>

@JvmName(name = "letByField")
open fun <T> let(value: Field<LocalDocument, T>): Value<ForeignDocument, T>

@JvmName(name = "letByProperty")
open fun <T> let(value: KProperty1<LocalDocument, T>): Value<ForeignDocument, T>

inline fun <T> let(value: T): Value<ForeignDocument, T>

Creates a binding allowing to use an arbitrary value computed from the local documents within the foreign pipeline.

By default, when using a pipeline in from, each foreign pipeline computes the exact same results. Using let, we can inject an arbitrary value within any stage of the foreign pipeline to force it to return different results.

Example

class Department(
    val _id: ObjectId,
    val name: String,
    val creationDate: Instant,
)

class User(
    val _id: ObjectId,
    val name: String,
    val creationDate: Instant,
    val departments: List<Department>,
)

users.aggregate()
    .lookup {
        into(User::departments)

        val userCreationDate = let(User::creationDate)

        from(
            departments.aggregate()
                .matchExpr { Department::creationDate gte userCreationDate }
        )
    }

To perform a simple equality between one local and one foreign field, see on.

External resources

lowercase

@JvmName(name = "lowercaseResultReceiver")
inline fun String?.lowercase(): Value<Any, String?>

Converts a string to lowercase, returning the result.

@JvmName(name = "lowercasePropertyReceiver")
open fun <Context : Any> KProperty1<Context, String?>.lowercase(): Value<Context, String?>

Converts a string to lowercase, returning the result.

Converts a string to lowercase, returning the result.

@JvmName(name = "lowercaseFieldReceiver")
open fun <Context : Any> Field<Context, String?>.lowercase(): Value<Context, String?>

Converts a string to lowercase, returning the result.

lt

@JvmName(name = "ltResultReceiverByResult")
infix inline fun <Context : Any, Result> Result.lt(other: Result): Value<Context, Boolean>
@JvmName(name = "ltResultReceiverByProperty")
infix inline fun <Context : Any, Result> Result.lt(other: KProperty1<Context, Result>): Value<Context, Boolean>
@JvmName(name = "ltResultReceiverByValue")
infix inline fun <Context : Any, Result> Result.lt(other: Value<Context, Result>): Value<Context, Boolean>
@JvmName(name = "ltResultReceiverByField")
infix inline fun <Context : Any, Result> Result.lt(other: Field<Context, Result>): Value<Context, Boolean>
@JvmName(name = "ltPropertyReceiverByResult")
infix inline fun <Context : Any, Result> KProperty1<Context, Result>.lt(other: Result): Value<Context, Boolean>
@JvmName(name = "ltPropertyReceiverByProperty")
open infix fun <Context : Any, Result> KProperty1<Context, Result>.lt(other: KProperty1<Context, Result>): Value<Context, Boolean>
@JvmName(name = "ltPropertyReceiverByValue")
open infix fun <Context : Any, Result> KProperty1<Context, Result>.lt(other: Value<Context, Result>): Value<Context, Boolean>
@JvmName(name = "ltPropertyReceiverByField")
open infix fun <Context : Any, Result> KProperty1<Context, Result>.lt(other: Field<Context, Result>): Value<Context, Boolean>
infix inline fun <Context : Any, Result> Value<Context, Result>.lt(other: Result): Value<Context, Boolean>
@JvmName(name = "ltByProperty")
open infix fun <Context : Any, Result> Value<Context, Result>.lt(other: KProperty1<Context, Result>): Value<Context, Boolean>
open infix fun <Context : Any, Result> Value<Context, Result>.lt(other: Value<Context, Result>): Value<Context, Boolean>
@JvmName(name = "ltByField")
open infix fun <Context : Any, Result> Value<Context, Result>.lt(other: Field<Context, Result>): Value<Context, Boolean>
@JvmName(name = "ltFieldReceiverByResult")
infix inline fun <Context : Any, Result> Field<Context, Result>.lt(other: Result): Value<Context, Boolean>
@JvmName(name = "ltFieldReceiverByProperty")
open infix fun <Context : Any, Result> Field<Context, Result>.lt(other: KProperty1<Context, Result>): Value<Context, Boolean>
@JvmName(name = "ltFieldReceiverByValue")
open infix fun <Context : Any, Result> Field<Context, Result>.lt(other: Value<Context, Result>): Value<Context, Boolean>
@JvmName(name = "ltFieldReceiverByField")
open infix fun <Context : Any, Result> Field<Context, Result>.lt(other: Field<Context, Result>): Value<Context, Boolean>

lte

@JvmName(name = "lteResultReceiverByResult")
infix inline fun <Context : Any, Result> Result.lte(other: Result): Value<Context, Boolean>
@JvmName(name = "lteResultReceiverByProperty")
infix inline fun <Context : Any, Result> Result.lte(other: KProperty1<Context, Result>): Value<Context, Boolean>
@JvmName(name = "lteResultReceiverByValue")
infix inline fun <Context : Any, Result> Result.lte(other: Value<Context, Result>): Value<Context, Boolean>
@JvmName(name = "lteResultReceiverByField")
infix inline fun <Context : Any, Result> Result.lte(other: Field<Context, Result>): Value<Context, Boolean>
@JvmName(name = "ltePropertyReceiverByResult")
infix inline fun <Context : Any, Result> KProperty1<Context, Result>.lte(other: Result): Value<Context, Boolean>
@JvmName(name = "ltePropertyReceiverByProperty")
open infix fun <Context : Any, Result> KProperty1<Context, Result>.lte(other: KProperty1<Context, Result>): Value<Context, Boolean>
@JvmName(name = "ltePropertyReceiverByValue")
open infix fun <Context : Any, Result> KProperty1<Context, Result>.lte(other: Value<Context, Result>): Value<Context, Boolean>
@JvmName(name = "ltePropertyReceiverByField")
open infix fun <Context : Any, Result> KProperty1<Context, Result>.lte(other: Field<Context, Result>): Value<Context, Boolean>
infix inline fun <Context : Any, Result> Value<Context, Result>.lte(other: Result): Value<Context, Boolean>
@JvmName(name = "lteByProperty")
open infix fun <Context : Any, Result> Value<Context, Result>.lte(other: KProperty1<Context, Result>): Value<Context, Boolean>
@JvmName(name = "lteByField")
open infix fun <Context : Any, Result> Value<Context, Result>.lte(other: Field<Context, Result>): Value<Context, Boolean>
@JvmName(name = "lteFieldReceiverByResult")
infix inline fun <Context : Any, Result> Field<Context, Result>.lte(other: Result): Value<Context, Boolean>
@JvmName(name = "lteFieldReceiverByProperty")
open infix fun <Context : Any, Result> Field<Context, Result>.lte(other: KProperty1<Context, Result>): Value<Context, Boolean>
@JvmName(name = "lteFieldReceiverByValue")
open infix fun <Context : Any, Result> Field<Context, Result>.lte(other: Value<Context, Result>): Value<Context, Boolean>
@JvmName(name = "lteFieldReceiverByField")
open infix fun <Context : Any, Result> Field<Context, Result>.lte(other: Field<Context, Result>): Value<Context, Boolean>

map

@JvmName(name = "mapResultReceiver")
open fun <Context : Any, T, R> Collection<T>.map(variableName: String = "this", transform: AggregationOperators.(Value<Any, T>) -> Value<Context, R>): Value<Context, List<R>>

Applies a transform to all elements in an array and returns the array with the applied results, similar to kotlin.collections.map.

@JvmName(name = "mapPropertyReceiver")
open fun <Context : Any, T, R> KProperty1<Context, Collection<T>>.map(variableName: String = "this", transform: AggregationOperators.(Value<Any, T>) -> Value<Context, R>): Value<Context, List<R>>

Applies a transform to all elements in an array and returns the array with the applied results, similar to kotlin.collections.map.

open fun <Context : Any, T, R> Value<Context, Collection<T>>.map(variableName: String = "this", transform: AggregationOperators.(Value<Any, T>) -> Value<Context, R>): Value<Context, List<R>>

Applies a transform to all elements in an array and returns the array with the applied results, similar to kotlin.collections.map.

@JvmName(name = "mapFieldReceiver")
open fun <Context : Any, T, R> Field<Context, Collection<T>>.map(variableName: String = "this", transform: AggregationOperators.(Value<Any, T>) -> Value<Context, R>): Value<Context, List<R>>

Applies a transform to all elements in an array and returns the array with the applied results, similar to kotlin.collections.map.

minus

@JvmName(name = "minusResultReceiverByResult")
inline operator fun <Context : Any, Result> Result.minus(other: Result): Value<Context, Result>

Subtracts one aggregation value from another.

@JvmName(name = "minusResultReceiverByProperty")
inline operator fun <Context : Any, Result> Result.minus(other: KProperty1<Context, Result>): Value<Context, Result>

Subtracts one aggregation value from another.

@JvmName(name = "minusResultReceiverByValue")
inline operator fun <Context : Any, Result> Result.minus(other: Value<Context, Result>): Value<Context, Result>

Subtracts one aggregation value from another.

@JvmName(name = "minusResultReceiverByField")
inline operator fun <Context : Any, Result> Result.minus(other: Field<Context, Result>): Value<Context, Result>

Subtracts one aggregation value from another.

@JvmName(name = "minusPropertyReceiverByResult")
inline operator fun <Context : Any, Result> KProperty1<Context, Result>.minus(other: Result): Value<Context, Result>

Subtracts one aggregation value from another.

@JvmName(name = "minusPropertyReceiverByProperty")
open operator fun <Context : Any, Result> KProperty1<Context, Result>.minus(other: KProperty1<Context, Result>): Value<Context, Result>

Subtracts one aggregation value from another.

@JvmName(name = "minusPropertyReceiverByValue")
open operator fun <Context : Any, Result> KProperty1<Context, Result>.minus(other: Value<Context, Result>): Value<Context, Result>

Subtracts one aggregation value from another.

@JvmName(name = "minusPropertyReceiverByField")
open operator fun <Context : Any, Result> KProperty1<Context, Result>.minus(other: Field<Context, Result>): Value<Context, Result>

Subtracts one aggregation value from another.

inline operator fun <Context : Any, Result> Value<Context, Result>.minus(other: Result): Value<Context, Result>

Subtracts one aggregation value from another.

@JvmName(name = "minusByProperty")
open operator fun <Context : Any, Result> Value<Context, Result>.minus(other: KProperty1<Context, Result>): Value<Context, Result>

Subtracts one aggregation value from another.

open operator fun <Context : Any, Result> Value<Context, Result>.minus(other: Value<Context, Result>): Value<Context, Result>

Subtracts one aggregation value from another.

@JvmName(name = "minusByField")
open operator fun <Context : Any, Result> Value<Context, Result>.minus(other: Field<Context, Result>): Value<Context, Result>

Subtracts one aggregation value from another.

@JvmName(name = "minusFieldReceiverByResult")
inline operator fun <Context : Any, Result> Field<Context, Result>.minus(other: Result): Value<Context, Result>

Subtracts one aggregation value from another.

@JvmName(name = "minusFieldReceiverByProperty")
open operator fun <Context : Any, Result> Field<Context, Result>.minus(other: KProperty1<Context, Result>): Value<Context, Result>

Subtracts one aggregation value from another.

@JvmName(name = "minusFieldReceiverByValue")
open operator fun <Context : Any, Result> Field<Context, Result>.minus(other: Value<Context, Result>): Value<Context, Result>

Subtracts one aggregation value from another.

@JvmName(name = "minusFieldReceiverByField")
open operator fun <Context : Any, Result> Field<Context, Result>.minus(other: Field<Context, Result>): Value<Context, Result>

Subtracts one aggregation value from another.

ne

@JvmName(name = "neResultReceiverByResult")
infix inline fun <Context : Any, Result> Result.ne(other: Result): Value<Context, Boolean>

Compares two aggregation values and returns true if they are not equivalent.

@JvmName(name = "neResultReceiverByProperty")
infix inline fun <Context : Any, Result> Result.ne(other: KProperty1<Context, Result>): Value<Context, Boolean>

Compares two aggregation values and returns true if they are not equivalent.

@JvmName(name = "neResultReceiverByValue")
infix inline fun <Context : Any, Result> Result.ne(other: Value<Context, Result>): Value<Context, Boolean>

Compares two aggregation values and returns true if they are not equivalent.

@JvmName(name = "neResultReceiverByField")
infix inline fun <Context : Any, Result> Result.ne(other: Field<Context, Result>): Value<Context, Boolean>

Compares two aggregation values and returns true if they are not equivalent.

@JvmName(name = "nePropertyReceiverByResult")
infix inline fun <Context : Any, Result> KProperty1<Context, Result>.ne(other: Result): Value<Context, Boolean>

Compares two aggregation values and returns true if they are not equivalent.

@JvmName(name = "nePropertyReceiverByProperty")
open infix fun <Context : Any, Result> KProperty1<Context, Result>.ne(other: KProperty1<Context, Result>): Value<Context, Boolean>

Compares two aggregation values and returns true if they are not equivalent.

@JvmName(name = "nePropertyReceiverByValue")
open infix fun <Context : Any, Result> KProperty1<Context, Result>.ne(other: Value<Context, Result>): Value<Context, Boolean>

Compares two aggregation values and returns true if they are not equivalent.

@JvmName(name = "nePropertyReceiverByField")
open infix fun <Context : Any, Result> KProperty1<Context, Result>.ne(other: Field<Context, Result>): Value<Context, Boolean>

Compares two aggregation values and returns true if they are not equivalent.

infix inline fun <Context : Any, Result> Value<Context, Result>.ne(other: Result): Value<Context, Boolean>

Compares two aggregation values and returns true if they are not equivalent.

@JvmName(name = "neByProperty")
open infix fun <Context : Any, Result> Value<Context, Result>.ne(other: KProperty1<Context, Result>): Value<Context, Boolean>

Compares two aggregation values and returns true if they are not equivalent.

open infix fun <Context : Any, Result> Value<Context, Result>.ne(other: Value<Context, Result>): Value<Context, Boolean>

Compares two aggregation values and returns true if they are not equivalent.

@JvmName(name = "neByField")
open infix fun <Context : Any, Result> Value<Context, Result>.ne(other: Field<Context, Result>): Value<Context, Boolean>

Compares two aggregation values and returns true if they are not equivalent.

@JvmName(name = "neFieldReceiverByResult")
infix inline fun <Context : Any, Result> Field<Context, Result>.ne(other: Result): Value<Context, Boolean>

Compares two aggregation values and returns true if they are not equivalent.

@JvmName(name = "neFieldReceiverByProperty")
open infix fun <Context : Any, Result> Field<Context, Result>.ne(other: KProperty1<Context, Result>): Value<Context, Boolean>

Compares two aggregation values and returns true if they are not equivalent.

@JvmName(name = "neFieldReceiverByValue")
open infix fun <Context : Any, Result> Field<Context, Result>.ne(other: Value<Context, Result>): Value<Context, Boolean>

Compares two aggregation values and returns true if they are not equivalent.

@JvmName(name = "neFieldReceiverByField")
open infix fun <Context : Any, Result> Field<Context, Result>.ne(other: Field<Context, Result>): Value<Context, Boolean>

Compares two aggregation values and returns true if they are not equivalent.

of

inline fun <Result> of(value: Result): Value<Any, Result>

Refers to a Kotlin value within an aggregation value.

Refers to a field within an aggregation value.

open fun of(value: BsonType): Value<Any, BsonType>

Refers to a BsonType within an aggregation value.

open fun <Context : Any, Result> of(field: Field<Context, Result>): Value<Context, Result>

Refers to a field within an aggregation value.

open fun <Result> of(value: Result, type: KType): Value<Any, Result>

Refers to a Kotlin value within an aggregation value.

on

abstract fun <Key> on(localField: Field<LocalDocument, Key>, foreignField: Field<ForeignDocument, Key>)

open fun <Key> on(localField: Field<LocalDocument, Key>, foreignField: KProperty1<ForeignDocument, Key>)

open fun <Key> on(localField: KProperty1<LocalDocument, Key>, foreignField: Field<ForeignDocument, Key>)

open fun <Key> on(localField: KProperty1<LocalDocument, Key>, foreignField: KProperty1<ForeignDocument, Key>)

Specifies that the field foreignField in the foreign collection must have a value that is strictly equal to the value of the local field localField.

To learn more about the $lookup stage, see HasLookup.lookup.

Example

class Department(
    val _id: ObjectId,
    val name: String,
)

class User(
    val _id: ObjectId,
    val name: String,
    val department: ObjectId,
    val departments: List<Department>,
)

users.aggregate()
    .lookup {
        into(User::departments)
        from(departments.aggregate())
        on(User::department, Department::_id)
    }

The on operator is semantically equivalent to a match stage using a let binding:

users.aggregate()
    .lookup {
        into(User::departments)
        val department = let(User::department)
        from(
            departments.aggregate()
                .matchExpr { Department::_id eq department }
        )
    }

External resources

onEach

open fun <Key> onEach(localField: Field<LocalDocument, Collection<Key>>, foreignField: Field<ForeignDocument, Key>)

open fun <Key> onEach(localField: KProperty1<LocalDocument, Collection<Key>>, foreignField: Field<ForeignDocument, Key>)

open fun <Key> onEach(localField: Field<LocalDocument, Collection<Key>>, foreignField: KProperty1<ForeignDocument, Key>)

open fun <Key> onEach(localField: KProperty1<LocalDocument, Collection<Key>>, foreignField: KProperty1<ForeignDocument, Key>)

Specifies that the field foreignField in the foreign collection must have a value that is strictly equal to one of the elements of the local array localField.

To learn more about the $lookup stage, see HasLookup.lookup.

Example

class Department(
    val _id: ObjectId,
    val name: String,
)

class User(
    val _id: ObjectId,
    val name: String,
    val departmentIds: List<ObjectId>,
    val departments: List<Department>,
)

users.aggregate()
    .lookup {
        into(User::departments)
        from(departments.aggregate())
        onEach(User::departmentIds, Department::_id)
    }

The on operator is semantically equivalent to a match stage using a let binding:

users.aggregate()
    .lookup {
        into(User::departments)
        val departmentIds = let(User::departmentIds)
        from(
            departments.aggregate()
                .matchExpr { Department::_id isOneOf departmentIds }
        )
    }

External resources

plus

@JvmName(name = "plusResultReceiverByResult")
inline operator fun <Context : Any, Result> Result.plus(other: Result): Value<Context, Result>

Sums two aggregation values.

@JvmName(name = "plusResultReceiverByProperty")
inline operator fun <Context : Any, Result> Result.plus(other: KProperty1<Context, Result>): Value<Context, Result>

Sums two aggregation values.

@JvmName(name = "plusResultReceiverByValue")
inline operator fun <Context : Any, Result> Result.plus(other: Value<Context, Result>): Value<Context, Result>

Sums two aggregation values.

@JvmName(name = "plusResultReceiverByField")
inline operator fun <Context : Any, Result> Result.plus(other: Field<Context, Result>): Value<Context, Result>

Sums two aggregation values.

@JvmName(name = "plusPropertyReceiverByResult")
inline operator fun <Context : Any, Result> KProperty1<Context, Result>.plus(other: Result): Value<Context, Result>

Sums two aggregation values.

@JvmName(name = "plusPropertyReceiverByProperty")
open operator fun <Context : Any, Result> KProperty1<Context, Result>.plus(other: KProperty1<Context, Result>): Value<Context, Result>

Sums two aggregation values.

@JvmName(name = "plusPropertyReceiverByValue")
open operator fun <Context : Any, Result> KProperty1<Context, Result>.plus(other: Value<Context, Result>): Value<Context, Result>

Sums two aggregation values.

@JvmName(name = "plusPropertyReceiverByField")
open operator fun <Context : Any, Result> KProperty1<Context, Result>.plus(other: Field<Context, Result>): Value<Context, Result>

Sums two aggregation values.

inline operator fun <Context : Any, Result> Value<Context, Result>.plus(other: Result): Value<Context, Result>

Sums two aggregation values.

@JvmName(name = "plusByProperty")
open operator fun <Context : Any, Result> Value<Context, Result>.plus(other: KProperty1<Context, Result>): Value<Context, Result>

Sums two aggregation values.

open operator fun <Context : Any, Result> Value<Context, Result>.plus(other: Value<Context, Result>): Value<Context, Result>

Sums two aggregation values.

@JvmName(name = "plusByField")
open operator fun <Context : Any, Result> Value<Context, Result>.plus(other: Field<Context, Result>): Value<Context, Result>

Sums two aggregation values.

@JvmName(name = "plusFieldReceiverByResult")
inline operator fun <Context : Any, Result> Field<Context, Result>.plus(other: Result): Value<Context, Result>

Sums two aggregation values.

@JvmName(name = "plusFieldReceiverByProperty")
open operator fun <Context : Any, Result> Field<Context, Result>.plus(other: KProperty1<Context, Result>): Value<Context, Result>

Sums two aggregation values.

@JvmName(name = "plusFieldReceiverByValue")
open operator fun <Context : Any, Result> Field<Context, Result>.plus(other: Value<Context, Result>): Value<Context, Result>

Sums two aggregation values.

@JvmName(name = "plusFieldReceiverByField")
open operator fun <Context : Any, Result> Field<Context, Result>.plus(other: Field<Context, Result>): Value<Context, Result>

Sums two aggregation values.

replace

@JvmName(name = "replaceResultReceiverByResultByResult")
inline fun String?.replace(find: String?, replacement: String?): Value<Any, String?>

Replaces all instances of find with a replacement string.

@JvmName(name = "replaceResultReceiverByResultByProperty")
inline fun <Context : Any> String?.replace(find: String?, replacement: KProperty1<Context, String?>): Value<Context, String?>

Replaces all instances of find with a replacement string.

@JvmName(name = "replaceResultReceiverByResultByValue")
inline fun <Context : Any> String?.replace(find: String?, replacement: Value<Context, String?>): Value<Context, String?>

Replaces all instances of find with a replacement string.

@JvmName(name = "replaceResultReceiverByResultByField")
inline fun <Context : Any> String?.replace(find: String?, replacement: Field<Context, String?>): Value<Context, String?>

Replaces all instances of find with a replacement string.

@JvmName(name = "replaceResultReceiverByPropertyByResult")
inline fun <Context : Any> String?.replace(find: KProperty1<Context, String?>, replacement: String?): Value<Context, String?>

Replaces all instances of find with a replacement string.

@JvmName(name = "replaceResultReceiverByPropertyByProperty")
inline fun <Context : Any> String?.replace(find: KProperty1<Context, String?>, replacement: KProperty1<Context, String?>): Value<Context, String?>

Replaces all instances of find with a replacement string.

@JvmName(name = "replaceResultReceiverByPropertyByValue")
inline fun <Context : Any> String?.replace(find: KProperty1<Context, String?>, replacement: Value<Context, String?>): Value<Context, String?>

Replaces all instances of find with a replacement string.

@JvmName(name = "replaceResultReceiverByPropertyByField")
inline fun <Context : Any> String?.replace(find: KProperty1<Context, String?>, replacement: Field<Context, String?>): Value<Context, String?>

Replaces all instances of find with a replacement string.

@JvmName(name = "replaceResultReceiverByValueByResult")
inline fun <Context : Any> String?.replace(find: Value<Context, String?>, replacement: String?): Value<Context, String?>

Replaces all instances of find with a replacement string.

@JvmName(name = "replaceResultReceiverByValueByProperty")
inline fun <Context : Any> String?.replace(find: Value<Context, String?>, replacement: KProperty1<Context, String?>): Value<Context, String?>

Replaces all instances of find with a replacement string.

@JvmName(name = "replaceResultReceiverByValueByValue")
inline fun <Context : Any> String?.replace(find: Value<Context, String?>, replacement: Value<Context, String?>): Value<Context, String?>

Replaces all instances of find with a replacement string.

@JvmName(name = "replaceResultReceiverByValueByField")
inline fun <Context : Any> String?.replace(find: Value<Context, String?>, replacement: Field<Context, String?>): Value<Context, String?>

Replaces all instances of find with a replacement string.

@JvmName(name = "replaceResultReceiverByFieldByResult")
inline fun <Context : Any> String?.replace(find: Field<Context, String?>, replacement: String?): Value<Context, String?>

Replaces all instances of find with a replacement string.

@JvmName(name = "replaceResultReceiverByFieldByProperty")
inline fun <Context : Any> String?.replace(find: Field<Context, String?>, replacement: KProperty1<Context, String?>): Value<Context, String?>

Replaces all instances of find with a replacement string.

@JvmName(name = "replaceResultReceiverByFieldByValue")
inline fun <Context : Any> String?.replace(find: Field<Context, String?>, replacement: Value<Context, String?>): Value<Context, String?>

Replaces all instances of find with a replacement string.

@JvmName(name = "replaceResultReceiverByFieldByField")
inline fun <Context : Any> String?.replace(find: Field<Context, String?>, replacement: Field<Context, String?>): Value<Context, String?>

Replaces all instances of find with a replacement string.

@JvmName(name = "replacePropertyReceiverByResultByResult")
inline fun <Context : Any> KProperty1<Context, String?>.replace(find: String?, replacement: String?): Value<Context, String?>

Replaces all instances of find with a replacement string.

@JvmName(name = "replacePropertyReceiverByResultByProperty")
inline fun <Context : Any> KProperty1<Context, String?>.replace(find: String?, replacement: KProperty1<Context, String?>): Value<Context, String?>

Replaces all instances of find with a replacement string.

@JvmName(name = "replacePropertyReceiverByResultByValue")
inline fun <Context : Any> KProperty1<Context, String?>.replace(find: String?, replacement: Value<Context, String?>): Value<Context, String?>

Replaces all instances of find with a replacement string.

@JvmName(name = "replacePropertyReceiverByResultByField")
inline fun <Context : Any> KProperty1<Context, String?>.replace(find: String?, replacement: Field<Context, String?>): Value<Context, String?>

Replaces all instances of find with a replacement string.

@JvmName(name = "replacePropertyReceiverByPropertyByResult")
inline fun <Context : Any> KProperty1<Context, String?>.replace(find: KProperty1<Context, String?>, replacement: String?): Value<Context, String?>

Replaces all instances of find with a replacement string.

@JvmName(name = "replacePropertyReceiverByPropertyByProperty")
open fun <Context : Any> KProperty1<Context, String?>.replace(find: KProperty1<Context, String?>, replacement: KProperty1<Context, String?>): Value<Context, String?>

Replaces all instances of find with a replacement string.

@JvmName(name = "replacePropertyReceiverByPropertyByValue")
open fun <Context : Any> KProperty1<Context, String?>.replace(find: KProperty1<Context, String?>, replacement: Value<Context, String?>): Value<Context, String?>

Replaces all instances of find with a replacement string.

@JvmName(name = "replacePropertyReceiverByPropertyByField")
open fun <Context : Any> KProperty1<Context, String?>.replace(find: KProperty1<Context, String?>, replacement: Field<Context, String?>): Value<Context, String?>

Replaces all instances of find with a replacement string.

@JvmName(name = "replacePropertyReceiverByValueByResult")
inline fun <Context : Any> KProperty1<Context, String?>.replace(find: Value<Context, String?>, replacement: String?): Value<Context, String?>

Replaces all instances of find with a replacement string.

@JvmName(name = "replacePropertyReceiverByValueByProperty")
open fun <Context : Any> KProperty1<Context, String?>.replace(find: Value<Context, String?>, replacement: KProperty1<Context, String?>): Value<Context, String?>

Replaces all instances of find with a replacement string.

@JvmName(name = "replacePropertyReceiverByValueByValue")
open fun <Context : Any> KProperty1<Context, String?>.replace(find: Value<Context, String?>, replacement: Value<Context, String?>): Value<Context, String?>

Replaces all instances of find with a replacement string.

@JvmName(name = "replacePropertyReceiverByValueByField")
open fun <Context : Any> KProperty1<Context, String?>.replace(find: Value<Context, String?>, replacement: Field<Context, String?>): Value<Context, String?>

Replaces all instances of find with a replacement string.

@JvmName(name = "replacePropertyReceiverByFieldByResult")
inline fun <Context : Any> KProperty1<Context, String?>.replace(find: Field<Context, String?>, replacement: String?): Value<Context, String?>

Replaces all instances of find with a replacement string.

@JvmName(name = "replacePropertyReceiverByFieldByProperty")
open fun <Context : Any> KProperty1<Context, String?>.replace(find: Field<Context, String?>, replacement: KProperty1<Context, String?>): Value<Context, String?>

Replaces all instances of find with a replacement string.

@JvmName(name = "replacePropertyReceiverByFieldByValue")
open fun <Context : Any> KProperty1<Context, String?>.replace(find: Field<Context, String?>, replacement: Value<Context, String?>): Value<Context, String?>

Replaces all instances of find with a replacement string.

@JvmName(name = "replacePropertyReceiverByFieldByField")
open fun <Context : Any> KProperty1<Context, String?>.replace(find: Field<Context, String?>, replacement: Field<Context, String?>): Value<Context, String?>

Replaces all instances of find with a replacement string.

inline fun <Context : Any> Value<Context, String?>.replace(find: String?, replacement: String?): Value<Context, String?>

Replaces all instances of find with a replacement string.

@JvmName(name = "replaceByResultByProperty")
inline fun <Context : Any> Value<Context, String?>.replace(find: String?, replacement: KProperty1<Context, String?>): Value<Context, String?>

Replaces all instances of find with a replacement string.

inline fun <Context : Any> Value<Context, String?>.replace(find: String?, replacement: Value<Context, String?>): Value<Context, String?>

Replaces all instances of find with a replacement string.

@JvmName(name = "replaceByResultByField")
inline fun <Context : Any> Value<Context, String?>.replace(find: String?, replacement: Field<Context, String?>): Value<Context, String?>

Replaces all instances of find with a replacement string.

@JvmName(name = "replaceByPropertyByResult")
inline fun <Context : Any> Value<Context, String?>.replace(find: KProperty1<Context, String?>, replacement: String?): Value<Context, String?>

Replaces all instances of find with a replacement string.

@JvmName(name = "replaceByPropertyByProperty")
open fun <Context : Any> Value<Context, String?>.replace(find: KProperty1<Context, String?>, replacement: KProperty1<Context, String?>): Value<Context, String?>

Replaces all instances of find with a replacement string.

@JvmName(name = "replaceByPropertyByValue")
open fun <Context : Any> Value<Context, String?>.replace(find: KProperty1<Context, String?>, replacement: Value<Context, String?>): Value<Context, String?>

Replaces all instances of find with a replacement string.

@JvmName(name = "replaceByPropertyByField")
open fun <Context : Any> Value<Context, String?>.replace(find: KProperty1<Context, String?>, replacement: Field<Context, String?>): Value<Context, String?>

Replaces all instances of find with a replacement string.

inline fun <Context : Any> Value<Context, String?>.replace(find: Value<Context, String?>, replacement: String?): Value<Context, String?>

Replaces all instances of find with a replacement string.

@JvmName(name = "replaceByValueByProperty")
open fun <Context : Any> Value<Context, String?>.replace(find: Value<Context, String?>, replacement: KProperty1<Context, String?>): Value<Context, String?>

Replaces all instances of find with a replacement string.

open fun <Context : Any> Value<Context, String?>.replace(find: Value<Context, String?>, replacement: Value<Context, String?>): Value<Context, String?>

Replaces all instances of find with a replacement string.

@JvmName(name = "replaceByValueByField")
open fun <Context : Any> Value<Context, String?>.replace(find: Value<Context, String?>, replacement: Field<Context, String?>): Value<Context, String?>

Replaces all instances of find with a replacement string.

@JvmName(name = "replaceByFieldByResult")
inline fun <Context : Any> Value<Context, String?>.replace(find: Field<Context, String?>, replacement: String?): Value<Context, String?>

Replaces all instances of find with a replacement string.

@JvmName(name = "replaceByFieldByProperty")
open fun <Context : Any> Value<Context, String?>.replace(find: Field<Context, String?>, replacement: KProperty1<Context, String?>): Value<Context, String?>

Replaces all instances of find with a replacement string.

@JvmName(name = "replaceByFieldByValue")
open fun <Context : Any> Value<Context, String?>.replace(find: Field<Context, String?>, replacement: Value<Context, String?>): Value<Context, String?>

Replaces all instances of find with a replacement string.

@JvmName(name = "replaceByFieldByField")
open fun <Context : Any> Value<Context, String?>.replace(find: Field<Context, String?>, replacement: Field<Context, String?>): Value<Context, String?>

Replaces all instances of find with a replacement string.

@JvmName(name = "replaceFieldReceiverByResultByResult")
inline fun <Context : Any> Field<Context, String?>.replace(find: String?, replacement: String?): Value<Context, String?>

Replaces all instances of find with a replacement string.

@JvmName(name = "replaceFieldReceiverByResultByProperty")
inline fun <Context : Any> Field<Context, String?>.replace(find: String?, replacement: KProperty1<Context, String?>): Value<Context, String?>

Replaces all instances of find with a replacement string.

@JvmName(name = "replaceFieldReceiverByResultByValue")
inline fun <Context : Any> Field<Context, String?>.replace(find: String?, replacement: Value<Context, String?>): Value<Context, String?>

Replaces all instances of find with a replacement string.

@JvmName(name = "replaceFieldReceiverByResultByField")
inline fun <Context : Any> Field<Context, String?>.replace(find: String?, replacement: Field<Context, String?>): Value<Context, String?>

Replaces all instances of find with a replacement string.

@JvmName(name = "replaceFieldReceiverByPropertyByResult")
inline fun <Context : Any> Field<Context, String?>.replace(find: KProperty1<Context, String?>, replacement: String?): Value<Context, String?>

Replaces all instances of find with a replacement string.

@JvmName(name = "replaceFieldReceiverByPropertyByProperty")
open fun <Context : Any> Field<Context, String?>.replace(find: KProperty1<Context, String?>, replacement: KProperty1<Context, String?>): Value<Context, String?>

Replaces all instances of find with a replacement string.

@JvmName(name = "replaceFieldReceiverByPropertyByValue")
open fun <Context : Any> Field<Context, String?>.replace(find: KProperty1<Context, String?>, replacement: Value<Context, String?>): Value<Context, String?>

Replaces all instances of find with a replacement string.

@JvmName(name = "replaceFieldReceiverByPropertyByField")
open fun <Context : Any> Field<Context, String?>.replace(find: KProperty1<Context, String?>, replacement: Field<Context, String?>): Value<Context, String?>

Replaces all instances of find with a replacement string.

@JvmName(name = "replaceFieldReceiverByValueByResult")
inline fun <Context : Any> Field<Context, String?>.replace(find: Value<Context, String?>, replacement: String?): Value<Context, String?>

Replaces all instances of find with a replacement string.

@JvmName(name = "replaceFieldReceiverByValueByProperty")
open fun <Context : Any> Field<Context, String?>.replace(find: Value<Context, String?>, replacement: KProperty1<Context, String?>): Value<Context, String?>

Replaces all instances of find with a replacement string.

@JvmName(name = "replaceFieldReceiverByValueByValue")
open fun <Context : Any> Field<Context, String?>.replace(find: Value<Context, String?>, replacement: Value<Context, String?>): Value<Context, String?>

Replaces all instances of find with a replacement string.

@JvmName(name = "replaceFieldReceiverByValueByField")
open fun <Context : Any> Field<Context, String?>.replace(find: Value<Context, String?>, replacement: Field<Context, String?>): Value<Context, String?>

Replaces all instances of find with a replacement string.

@JvmName(name = "replaceFieldReceiverByFieldByResult")
inline fun <Context : Any> Field<Context, String?>.replace(find: Field<Context, String?>, replacement: String?): Value<Context, String?>

Replaces all instances of find with a replacement string.

@JvmName(name = "replaceFieldReceiverByFieldByProperty")
open fun <Context : Any> Field<Context, String?>.replace(find: Field<Context, String?>, replacement: KProperty1<Context, String?>): Value<Context, String?>

Replaces all instances of find with a replacement string.

@JvmName(name = "replaceFieldReceiverByFieldByValue")
open fun <Context : Any> Field<Context, String?>.replace(find: Field<Context, String?>, replacement: Value<Context, String?>): Value<Context, String?>

Replaces all instances of find with a replacement string.

@JvmName(name = "replaceFieldReceiverByFieldByField")
open fun <Context : Any> Field<Context, String?>.replace(find: Field<Context, String?>, replacement: Field<Context, String?>): Value<Context, String?>

Replaces all instances of find with a replacement string.

replaceFirst

@JvmName(name = "replaceFirstResultReceiverByResultByResult")
inline fun String?.replaceFirst(find: String?, replacement: String?): Value<Any, String?>

Replaces the first instance of find with a replacement string.

@JvmName(name = "replaceFirstResultReceiverByResultByProperty")
inline fun <Context : Any> String?.replaceFirst(find: String?, replacement: KProperty1<Context, String?>): Value<Context, String?>

Replaces the first instance of find with a replacement string.

@JvmName(name = "replaceFirstResultReceiverByResultByValue")
inline fun <Context : Any> String?.replaceFirst(find: String?, replacement: Value<Context, String?>): Value<Context, String?>

Replaces the first instance of find with a replacement string.

@JvmName(name = "replaceFirstResultReceiverByResultByField")
inline fun <Context : Any> String?.replaceFirst(find: String?, replacement: Field<Context, String?>): Value<Context, String?>

Replaces the first instance of find with a replacement string.

@JvmName(name = "replaceFirstResultReceiverByPropertyByResult")
inline fun <Context : Any> String?.replaceFirst(find: KProperty1<Context, String?>, replacement: String?): Value<Context, String?>

Replaces the first instance of find with a replacement string.

@JvmName(name = "replaceFirstResultReceiverByPropertyByProperty")
inline fun <Context : Any> String?.replaceFirst(find: KProperty1<Context, String?>, replacement: KProperty1<Context, String?>): Value<Context, String?>

Replaces the first instance of find with a replacement string.

@JvmName(name = "replaceFirstResultReceiverByPropertyByValue")
inline fun <Context : Any> String?.replaceFirst(find: KProperty1<Context, String?>, replacement: Value<Context, String?>): Value<Context, String?>

Replaces the first instance of find with a replacement string.

@JvmName(name = "replaceFirstResultReceiverByPropertyByField")
inline fun <Context : Any> String?.replaceFirst(find: KProperty1<Context, String?>, replacement: Field<Context, String?>): Value<Context, String?>

Replaces the first instance of find with a replacement string.

@JvmName(name = "replaceFirstResultReceiverByValueByResult")
inline fun <Context : Any> String?.replaceFirst(find: Value<Context, String?>, replacement: String?): Value<Context, String?>

Replaces the first instance of find with a replacement string.

@JvmName(name = "replaceFirstResultReceiverByValueByProperty")
inline fun <Context : Any> String?.replaceFirst(find: Value<Context, String?>, replacement: KProperty1<Context, String?>): Value<Context, String?>

Replaces the first instance of find with a replacement string.

@JvmName(name = "replaceFirstResultReceiverByValueByValue")
inline fun <Context : Any> String?.replaceFirst(find: Value<Context, String?>, replacement: Value<Context, String?>): Value<Context, String?>

Replaces the first instance of find with a replacement string.

@JvmName(name = "replaceFirstResultReceiverByValueByField")
inline fun <Context : Any> String?.replaceFirst(find: Value<Context, String?>, replacement: Field<Context, String?>): Value<Context, String?>

Replaces the first instance of find with a replacement string.

@JvmName(name = "replaceFirstResultReceiverByFieldByResult")
inline fun <Context : Any> String?.replaceFirst(find: Field<Context, String?>, replacement: String?): Value<Context, String?>

Replaces the first instance of find with a replacement string.

@JvmName(name = "replaceFirstResultReceiverByFieldByProperty")
inline fun <Context : Any> String?.replaceFirst(find: Field<Context, String?>, replacement: KProperty1<Context, String?>): Value<Context, String?>

Replaces the first instance of find with a replacement string.

@JvmName(name = "replaceFirstResultReceiverByFieldByValue")
inline fun <Context : Any> String?.replaceFirst(find: Field<Context, String?>, replacement: Value<Context, String?>): Value<Context, String?>

Replaces the first instance of find with a replacement string.

@JvmName(name = "replaceFirstResultReceiverByFieldByField")
inline fun <Context : Any> String?.replaceFirst(find: Field<Context, String?>, replacement: Field<Context, String?>): Value<Context, String?>

Replaces the first instance of find with a replacement string.

@JvmName(name = "replaceFirstPropertyReceiverByResultByResult")
inline fun <Context : Any> KProperty1<Context, String?>.replaceFirst(find: String?, replacement: String?): Value<Context, String?>

Replaces the first instance of find with a replacement string.

@JvmName(name = "replaceFirstPropertyReceiverByResultByProperty")
inline fun <Context : Any> KProperty1<Context, String?>.replaceFirst(find: String?, replacement: KProperty1<Context, String?>): Value<Context, String?>

Replaces the first instance of find with a replacement string.

@JvmName(name = "replaceFirstPropertyReceiverByResultByValue")
inline fun <Context : Any> KProperty1<Context, String?>.replaceFirst(find: String?, replacement: Value<Context, String?>): Value<Context, String?>

Replaces the first instance of find with a replacement string.

@JvmName(name = "replaceFirstPropertyReceiverByResultByField")
inline fun <Context : Any> KProperty1<Context, String?>.replaceFirst(find: String?, replacement: Field<Context, String?>): Value<Context, String?>

Replaces the first instance of find with a replacement string.

@JvmName(name = "replaceFirstPropertyReceiverByPropertyByResult")
inline fun <Context : Any> KProperty1<Context, String?>.replaceFirst(find: KProperty1<Context, String?>, replacement: String?): Value<Context, String?>

Replaces the first instance of find with a replacement string.

@JvmName(name = "replaceFirstPropertyReceiverByPropertyByProperty")
open fun <Context : Any> KProperty1<Context, String?>.replaceFirst(find: KProperty1<Context, String?>, replacement: KProperty1<Context, String?>): Value<Context, String?>

Replaces the first instance of find with a replacement string.

@JvmName(name = "replaceFirstPropertyReceiverByPropertyByValue")
open fun <Context : Any> KProperty1<Context, String?>.replaceFirst(find: KProperty1<Context, String?>, replacement: Value<Context, String?>): Value<Context, String?>

Replaces the first instance of find with a replacement string.

@JvmName(name = "replaceFirstPropertyReceiverByPropertyByField")
open fun <Context : Any> KProperty1<Context, String?>.replaceFirst(find: KProperty1<Context, String?>, replacement: Field<Context, String?>): Value<Context, String?>

Replaces the first instance of find with a replacement string.

@JvmName(name = "replaceFirstPropertyReceiverByValueByResult")
inline fun <Context : Any> KProperty1<Context, String?>.replaceFirst(find: Value<Context, String?>, replacement: String?): Value<Context, String?>

Replaces the first instance of find with a replacement string.

@JvmName(name = "replaceFirstPropertyReceiverByValueByProperty")
open fun <Context : Any> KProperty1<Context, String?>.replaceFirst(find: Value<Context, String?>, replacement: KProperty1<Context, String?>): Value<Context, String?>

Replaces the first instance of find with a replacement string.

@JvmName(name = "replaceFirstPropertyReceiverByValueByValue")
open fun <Context : Any> KProperty1<Context, String?>.replaceFirst(find: Value<Context, String?>, replacement: Value<Context, String?>): Value<Context, String?>

Replaces the first instance of find with a replacement string.

@JvmName(name = "replaceFirstPropertyReceiverByValueByField")
open fun <Context : Any> KProperty1<Context, String?>.replaceFirst(find: Value<Context, String?>, replacement: Field<Context, String?>): Value<Context, String?>

Replaces the first instance of find with a replacement string.

@JvmName(name = "replaceFirstPropertyReceiverByFieldByResult")
inline fun <Context : Any> KProperty1<Context, String?>.replaceFirst(find: Field<Context, String?>, replacement: String?): Value<Context, String?>

Replaces the first instance of find with a replacement string.

@JvmName(name = "replaceFirstPropertyReceiverByFieldByProperty")
open fun <Context : Any> KProperty1<Context, String?>.replaceFirst(find: Field<Context, String?>, replacement: KProperty1<Context, String?>): Value<Context, String?>

Replaces the first instance of find with a replacement string.

@JvmName(name = "replaceFirstPropertyReceiverByFieldByValue")
open fun <Context : Any> KProperty1<Context, String?>.replaceFirst(find: Field<Context, String?>, replacement: Value<Context, String?>): Value<Context, String?>

Replaces the first instance of find with a replacement string.

@JvmName(name = "replaceFirstPropertyReceiverByFieldByField")
open fun <Context : Any> KProperty1<Context, String?>.replaceFirst(find: Field<Context, String?>, replacement: Field<Context, String?>): Value<Context, String?>

Replaces the first instance of find with a replacement string.

inline fun <Context : Any> Value<Context, String?>.replaceFirst(find: String?, replacement: String?): Value<Context, String?>

Replaces the first instance of find with a replacement string.

@JvmName(name = "replaceFirstByResultByProperty")
inline fun <Context : Any> Value<Context, String?>.replaceFirst(find: String?, replacement: KProperty1<Context, String?>): Value<Context, String?>

Replaces the first instance of find with a replacement string.

inline fun <Context : Any> Value<Context, String?>.replaceFirst(find: String?, replacement: Value<Context, String?>): Value<Context, String?>

Replaces the first instance of find with a replacement string.

@JvmName(name = "replaceFirstByResultByField")
inline fun <Context : Any> Value<Context, String?>.replaceFirst(find: String?, replacement: Field<Context, String?>): Value<Context, String?>

Replaces the first instance of find with a replacement string.

@JvmName(name = "replaceFirstByPropertyByResult")
inline fun <Context : Any> Value<Context, String?>.replaceFirst(find: KProperty1<Context, String?>, replacement: String?): Value<Context, String?>

Replaces the first instance of find with a replacement string.

@JvmName(name = "replaceFirstByPropertyByProperty")
open fun <Context : Any> Value<Context, String?>.replaceFirst(find: KProperty1<Context, String?>, replacement: KProperty1<Context, String?>): Value<Context, String?>

Replaces the first instance of find with a replacement string.

@JvmName(name = "replaceFirstByPropertyByValue")
open fun <Context : Any> Value<Context, String?>.replaceFirst(find: KProperty1<Context, String?>, replacement: Value<Context, String?>): Value<Context, String?>

Replaces the first instance of find with a replacement string.

@JvmName(name = "replaceFirstByPropertyByField")
open fun <Context : Any> Value<Context, String?>.replaceFirst(find: KProperty1<Context, String?>, replacement: Field<Context, String?>): Value<Context, String?>

Replaces the first instance of find with a replacement string.

inline fun <Context : Any> Value<Context, String?>.replaceFirst(find: Value<Context, String?>, replacement: String?): Value<Context, String?>

Replaces the first instance of find with a replacement string.

@JvmName(name = "replaceFirstByValueByProperty")
open fun <Context : Any> Value<Context, String?>.replaceFirst(find: Value<Context, String?>, replacement: KProperty1<Context, String?>): Value<Context, String?>

Replaces the first instance of find with a replacement string.

open fun <Context : Any> Value<Context, String?>.replaceFirst(find: Value<Context, String?>, replacement: Value<Context, String?>): Value<Context, String?>

Replaces the first instance of find with a replacement string.

@JvmName(name = "replaceFirstByValueByField")
open fun <Context : Any> Value<Context, String?>.replaceFirst(find: Value<Context, String?>, replacement: Field<Context, String?>): Value<Context, String?>

Replaces the first instance of find with a replacement string.

@JvmName(name = "replaceFirstByFieldByResult")
inline fun <Context : Any> Value<Context, String?>.replaceFirst(find: Field<Context, String?>, replacement: String?): Value<Context, String?>

Replaces the first instance of find with a replacement string.

@JvmName(name = "replaceFirstByFieldByProperty")
open fun <Context : Any> Value<Context, String?>.replaceFirst(find: Field<Context, String?>, replacement: KProperty1<Context, String?>): Value<Context, String?>

Replaces the first instance of find with a replacement string.

@JvmName(name = "replaceFirstByFieldByValue")
open fun <Context : Any> Value<Context, String?>.replaceFirst(find: Field<Context, String?>, replacement: Value<Context, String?>): Value<Context, String?>

Replaces the first instance of find with a replacement string.

@JvmName(name = "replaceFirstByFieldByField")
open fun <Context : Any> Value<Context, String?>.replaceFirst(find: Field<Context, String?>, replacement: Field<Context, String?>): Value<Context, String?>

Replaces the first instance of find with a replacement string.

@JvmName(name = "replaceFirstFieldReceiverByResultByResult")
inline fun <Context : Any> Field<Context, String?>.replaceFirst(find: String?, replacement: String?): Value<Context, String?>

Replaces the first instance of find with a replacement string.

@JvmName(name = "replaceFirstFieldReceiverByResultByProperty")
inline fun <Context : Any> Field<Context, String?>.replaceFirst(find: String?, replacement: KProperty1<Context, String?>): Value<Context, String?>

Replaces the first instance of find with a replacement string.

@JvmName(name = "replaceFirstFieldReceiverByResultByValue")
inline fun <Context : Any> Field<Context, String?>.replaceFirst(find: String?, replacement: Value<Context, String?>): Value<Context, String?>

Replaces the first instance of find with a replacement string.

@JvmName(name = "replaceFirstFieldReceiverByResultByField")
inline fun <Context : Any> Field<Context, String?>.replaceFirst(find: String?, replacement: Field<Context, String?>): Value<Context, String?>

Replaces the first instance of find with a replacement string.

@JvmName(name = "replaceFirstFieldReceiverByPropertyByResult")
inline fun <Context : Any> Field<Context, String?>.replaceFirst(find: KProperty1<Context, String?>, replacement: String?): Value<Context, String?>

Replaces the first instance of find with a replacement string.

@JvmName(name = "replaceFirstFieldReceiverByPropertyByProperty")
open fun <Context : Any> Field<Context, String?>.replaceFirst(find: KProperty1<Context, String?>, replacement: KProperty1<Context, String?>): Value<Context, String?>

Replaces the first instance of find with a replacement string.

@JvmName(name = "replaceFirstFieldReceiverByPropertyByValue")
open fun <Context : Any> Field<Context, String?>.replaceFirst(find: KProperty1<Context, String?>, replacement: Value<Context, String?>): Value<Context, String?>

Replaces the first instance of find with a replacement string.

@JvmName(name = "replaceFirstFieldReceiverByPropertyByField")
open fun <Context : Any> Field<Context, String?>.replaceFirst(find: KProperty1<Context, String?>, replacement: Field<Context, String?>): Value<Context, String?>

Replaces the first instance of find with a replacement string.

@JvmName(name = "replaceFirstFieldReceiverByValueByResult")
inline fun <Context : Any> Field<Context, String?>.replaceFirst(find: Value<Context, String?>, replacement: String?): Value<Context, String?>

Replaces the first instance of find with a replacement string.

@JvmName(name = "replaceFirstFieldReceiverByValueByProperty")
open fun <Context : Any> Field<Context, String?>.replaceFirst(find: Value<Context, String?>, replacement: KProperty1<Context, String?>): Value<Context, String?>

Replaces the first instance of find with a replacement string.

@JvmName(name = "replaceFirstFieldReceiverByValueByValue")
open fun <Context : Any> Field<Context, String?>.replaceFirst(find: Value<Context, String?>, replacement: Value<Context, String?>): Value<Context, String?>

Replaces the first instance of find with a replacement string.

@JvmName(name = "replaceFirstFieldReceiverByValueByField")
open fun <Context : Any> Field<Context, String?>.replaceFirst(find: Value<Context, String?>, replacement: Field<Context, String?>): Value<Context, String?>

Replaces the first instance of find with a replacement string.

@JvmName(name = "replaceFirstFieldReceiverByFieldByResult")
inline fun <Context : Any> Field<Context, String?>.replaceFirst(find: Field<Context, String?>, replacement: String?): Value<Context, String?>

Replaces the first instance of find with a replacement string.

@JvmName(name = "replaceFirstFieldReceiverByFieldByProperty")
open fun <Context : Any> Field<Context, String?>.replaceFirst(find: Field<Context, String?>, replacement: KProperty1<Context, String?>): Value<Context, String?>

Replaces the first instance of find with a replacement string.

@JvmName(name = "replaceFirstFieldReceiverByFieldByValue")
open fun <Context : Any> Field<Context, String?>.replaceFirst(find: Field<Context, String?>, replacement: Value<Context, String?>): Value<Context, String?>

Replaces the first instance of find with a replacement string.

@JvmName(name = "replaceFirstFieldReceiverByFieldByField")
open fun <Context : Any> Field<Context, String?>.replaceFirst(find: Field<Context, String?>, replacement: Field<Context, String?>): Value<Context, String?>

Replaces the first instance of find with a replacement string.

simplify

@LowLevelApi
abstract fun simplify(): BsonNode?

Returns a simplified (but equivalent) expression to the current expression.

sin

inline fun sin(value: Double?): Value<Any, Double?>

The sine of a value that is measured in radians.

@JvmName(name = "sinByProperty")
open fun <Context : Any> sin(value: KProperty1<Context, Double?>): Value<Context, Double?>

The sine of a value that is measured in radians.

open fun <Context : Any> sin(value: Value<Context, Double?>): Value<Context, Double?>

The sine of a value that is measured in radians.

@JvmName(name = "sinByField")
open fun <Context : Any> sin(value: Field<Context, Double?>): Value<Context, Double?>

The sine of a value that is measured in radians.

sinh

inline fun sinh(value: Double?): Value<Any, Double?>

The hyperbolic sine of a value that is measured in radians.

@JvmName(name = "sinhByProperty")
open fun <Context : Any> sinh(value: KProperty1<Context, Double?>): Value<Context, Double?>

The hyperbolic sine of a value that is measured in radians.

open fun <Context : Any> sinh(value: Value<Context, Double?>): Value<Context, Double?>

The hyperbolic sine of a value that is measured in radians.

@JvmName(name = "sinhByField")
open fun <Context : Any> sinh(value: Field<Context, Double?>): Value<Context, Double?>

The hyperbolic sine of a value that is measured in radians.

sorted

@JvmName(name = "sortedResultReceiver")
open fun <Context : Any, T> Collection<T>.sorted(): Value<Context, List<T>>

Sorts an array based on its elements, in ascending order.

@JvmName(name = "sortedPropertyReceiver")
open fun <Context : Any, T> KProperty1<Context, Collection<T>>.sorted(): Value<Context, List<T>>

Sorts an array based on its elements, in ascending order.

Sorts an array based on its elements, in ascending order.

@JvmName(name = "sortedFieldReceiver")
open fun <Context : Any, T> Field<Context, Collection<T>>.sorted(): Value<Context, List<T>>

Sorts an array based on its elements, in ascending order.

sortedBy

@JvmName(name = "sortedByResultReceiver")
open fun <Context : Any, T> Collection<T>.sortedBy(order: SortOptionDsl<T & Any>.() -> Unit): Value<Context, List<T>>

Sorts an array based on fields of its elements.

@JvmName(name = "sortedByPropertyReceiver")
open fun <Context : Any, T> KProperty1<Context, Collection<T>>.sortedBy(order: SortOptionDsl<T & Any>.() -> Unit): Value<Context, List<T>>

Sorts an array based on fields of its elements.

open fun <Context : Any, T> Value<Context, Collection<T>>.sortedBy(order: SortOptionDsl<T & Any>.() -> Unit): Value<Context, List<T>>

Sorts an array based on fields of its elements.

@JvmName(name = "sortedByFieldReceiver")
open fun <Context : Any, T> Field<Context, Collection<T>>.sortedBy(order: SortOptionDsl<T & Any>.() -> Unit): Value<Context, List<T>>

Sorts an array based on fields of its elements.

sortedDescending

@JvmName(name = "sortedDescendingResultReceiver")
open fun <Context : Any, T> Collection<T>.sortedDescending(): Value<Context, List<T>>

Sorts an array based on its elements, in descending order.

@JvmName(name = "sortedDescendingPropertyReceiver")
open fun <Context : Any, T> KProperty1<Context, Collection<T>>.sortedDescending(): Value<Context, List<T>>

Sorts an array based on its elements, in descending order.

Sorts an array based on its elements, in descending order.

@JvmName(name = "sortedDescendingFieldReceiver")
open fun <Context : Any, T> Field<Context, Collection<T>>.sortedDescending(): Value<Context, List<T>>

Sorts an array based on its elements, in descending order.

split

@JvmName(name = "splitResultReceiverByResult")
inline fun String.split(delimiter: String): Value<Any, List<String>?>

Divides a string into an array of substrings based on a delimiter.

@JvmName(name = "splitResultReceiverByProperty")
inline fun <Context : Any> String.split(delimiter: KProperty1<Context, String>): Value<Context, List<String>?>

Divides a string into an array of substrings based on a delimiter.

@JvmName(name = "splitResultReceiverByValue")
inline fun <Context : Any> String.split(delimiter: Value<Context, String>): Value<Context, List<String>?>

Divides a string into an array of substrings based on a delimiter.

@JvmName(name = "splitResultReceiverByField")
inline fun <Context : Any> String.split(delimiter: Field<Context, String>): Value<Context, List<String>?>

Divides a string into an array of substrings based on a delimiter.

@JvmName(name = "splitPropertyReceiverByResult")
inline fun <Context : Any> KProperty1<Context, String>.split(delimiter: String): Value<Context, List<String>?>

Divides a string into an array of substrings based on a delimiter.

@JvmName(name = "splitPropertyReceiverByProperty")
open fun <Context : Any> KProperty1<Context, String>.split(delimiter: KProperty1<Context, String>): Value<Context, List<String>?>

Divides a string into an array of substrings based on a delimiter.

@JvmName(name = "splitPropertyReceiverByValue")
open fun <Context : Any> KProperty1<Context, String>.split(delimiter: Value<Context, String>): Value<Context, List<String>?>

Divides a string into an array of substrings based on a delimiter.

@JvmName(name = "splitPropertyReceiverByField")
open fun <Context : Any> KProperty1<Context, String>.split(delimiter: Field<Context, String>): Value<Context, List<String>?>

Divides a string into an array of substrings based on a delimiter.

inline fun <Context : Any> Value<Context, String>.split(delimiter: String): Value<Context, List<String>?>

Divides a string into an array of substrings based on a delimiter.

@JvmName(name = "splitByProperty")
open fun <Context : Any> Value<Context, String>.split(delimiter: KProperty1<Context, String>): Value<Context, List<String>?>

Divides a string into an array of substrings based on a delimiter.

Divides a string into an array of substrings based on a delimiter.

@JvmName(name = "splitByField")
open fun <Context : Any> Value<Context, String>.split(delimiter: Field<Context, String>): Value<Context, List<String>?>

Divides a string into an array of substrings based on a delimiter.

@JvmName(name = "splitFieldReceiverByResult")
inline fun <Context : Any> Field<Context, String>.split(delimiter: String): Value<Context, List<String>?>

Divides a string into an array of substrings based on a delimiter.

@JvmName(name = "splitFieldReceiverByProperty")
open fun <Context : Any> Field<Context, String>.split(delimiter: KProperty1<Context, String>): Value<Context, List<String>?>

Divides a string into an array of substrings based on a delimiter.

@JvmName(name = "splitFieldReceiverByValue")
open fun <Context : Any> Field<Context, String>.split(delimiter: Value<Context, String>): Value<Context, List<String>?>

Divides a string into an array of substrings based on a delimiter.

@JvmName(name = "splitFieldReceiverByField")
open fun <Context : Any> Field<Context, String>.split(delimiter: Field<Context, String>): Value<Context, List<String>?>

Divides a string into an array of substrings based on a delimiter.

substring

@JvmName(name = "substringResultReceiver")
inline fun String?.substring(indexes: IntRange): Value<Any, String?>

Returns the substring of a string.

@JvmName(name = "substringPropertyReceiver")
open fun <Context : Any> KProperty1<Context, String?>.substring(indexes: IntRange): Value<Context, String?>

Returns the substring of a string.

Returns the substring of a string.

@JvmName(name = "substringFieldReceiver")
open fun <Context : Any> Field<Context, String?>.substring(indexes: IntRange): Value<Context, String?>

Returns the substring of a string.

@JvmName(name = "substringResultReceiverByResultByResult")
inline fun String?.substring(startIndex: Int, length: Int): Value<Any, String?>

Returns the substring of a string.

@JvmName(name = "substringResultReceiverByResultByProperty")
inline fun <Context : Any> String?.substring(startIndex: Int, length: KProperty1<Context, Int>): Value<Context, String?>

Returns the substring of a string.

@JvmName(name = "substringResultReceiverByResultByValue")
inline fun <Context : Any> String?.substring(startIndex: Int, length: Value<Context, Int>): Value<Context, String?>

Returns the substring of a string.

@JvmName(name = "substringResultReceiverByResultByField")
inline fun <Context : Any> String?.substring(startIndex: Int, length: Field<Context, Int>): Value<Context, String?>

Returns the substring of a string.

@JvmName(name = "substringResultReceiverByPropertyByResult")
inline fun <Context : Any> String?.substring(startIndex: KProperty1<Context, Int>, length: Int): Value<Context, String?>

Returns the substring of a string.

@JvmName(name = "substringResultReceiverByPropertyByProperty")
inline fun <Context : Any> String?.substring(startIndex: KProperty1<Context, Int>, length: KProperty1<Context, Int>): Value<Context, String?>

Returns the substring of a string.

@JvmName(name = "substringResultReceiverByPropertyByValue")
inline fun <Context : Any> String?.substring(startIndex: KProperty1<Context, Int>, length: Value<Context, Int>): Value<Context, String?>

Returns the substring of a string.

@JvmName(name = "substringResultReceiverByPropertyByField")
inline fun <Context : Any> String?.substring(startIndex: KProperty1<Context, Int>, length: Field<Context, Int>): Value<Context, String?>

Returns the substring of a string.

@JvmName(name = "substringResultReceiverByValueByResult")
inline fun <Context : Any> String?.substring(startIndex: Value<Context, Int>, length: Int): Value<Context, String?>

Returns the substring of a string.

@JvmName(name = "substringResultReceiverByValueByProperty")
inline fun <Context : Any> String?.substring(startIndex: Value<Context, Int>, length: KProperty1<Context, Int>): Value<Context, String?>

Returns the substring of a string.

@JvmName(name = "substringResultReceiverByValueByValue")
inline fun <Context : Any> String?.substring(startIndex: Value<Context, Int>, length: Value<Context, Int>): Value<Context, String?>

Returns the substring of a string.

@JvmName(name = "substringResultReceiverByValueByField")
inline fun <Context : Any> String?.substring(startIndex: Value<Context, Int>, length: Field<Context, Int>): Value<Context, String?>

Returns the substring of a string.

@JvmName(name = "substringResultReceiverByFieldByResult")
inline fun <Context : Any> String?.substring(startIndex: Field<Context, Int>, length: Int): Value<Context, String?>

Returns the substring of a string.

@JvmName(name = "substringResultReceiverByFieldByProperty")
inline fun <Context : Any> String?.substring(startIndex: Field<Context, Int>, length: KProperty1<Context, Int>): Value<Context, String?>

Returns the substring of a string.

@JvmName(name = "substringResultReceiverByFieldByValue")
inline fun <Context : Any> String?.substring(startIndex: Field<Context, Int>, length: Value<Context, Int>): Value<Context, String?>

Returns the substring of a string.

@JvmName(name = "substringResultReceiverByFieldByField")
inline fun <Context : Any> String?.substring(startIndex: Field<Context, Int>, length: Field<Context, Int>): Value<Context, String?>

Returns the substring of a string.

@JvmName(name = "substringPropertyReceiverByResultByResult")
inline fun <Context : Any> KProperty1<Context, String?>.substring(startIndex: Int, length: Int): Value<Context, String?>

Returns the substring of a string.

@JvmName(name = "substringPropertyReceiverByResultByProperty")
inline fun <Context : Any> KProperty1<Context, String?>.substring(startIndex: Int, length: KProperty1<Context, Int>): Value<Context, String?>

Returns the substring of a string.

@JvmName(name = "substringPropertyReceiverByResultByValue")
inline fun <Context : Any> KProperty1<Context, String?>.substring(startIndex: Int, length: Value<Context, Int>): Value<Context, String?>

Returns the substring of a string.

@JvmName(name = "substringPropertyReceiverByResultByField")
inline fun <Context : Any> KProperty1<Context, String?>.substring(startIndex: Int, length: Field<Context, Int>): Value<Context, String?>

Returns the substring of a string.

@JvmName(name = "substringPropertyReceiverByPropertyByResult")
inline fun <Context : Any> KProperty1<Context, String?>.substring(startIndex: KProperty1<Context, Int>, length: Int): Value<Context, String?>

Returns the substring of a string.

@JvmName(name = "substringPropertyReceiverByPropertyByProperty")
open fun <Context : Any> KProperty1<Context, String?>.substring(startIndex: KProperty1<Context, Int>, length: KProperty1<Context, Int>): Value<Context, String?>

Returns the substring of a string.

@JvmName(name = "substringPropertyReceiverByPropertyByValue")
open fun <Context : Any> KProperty1<Context, String?>.substring(startIndex: KProperty1<Context, Int>, length: Value<Context, Int>): Value<Context, String?>

Returns the substring of a string.

@JvmName(name = "substringPropertyReceiverByPropertyByField")
open fun <Context : Any> KProperty1<Context, String?>.substring(startIndex: KProperty1<Context, Int>, length: Field<Context, Int>): Value<Context, String?>

Returns the substring of a string.

@JvmName(name = "substringPropertyReceiverByValueByResult")
inline fun <Context : Any> KProperty1<Context, String?>.substring(startIndex: Value<Context, Int>, length: Int): Value<Context, String?>

Returns the substring of a string.

@JvmName(name = "substringPropertyReceiverByValueByProperty")
open fun <Context : Any> KProperty1<Context, String?>.substring(startIndex: Value<Context, Int>, length: KProperty1<Context, Int>): Value<Context, String?>

Returns the substring of a string.

@JvmName(name = "substringPropertyReceiverByValueByValue")
open fun <Context : Any> KProperty1<Context, String?>.substring(startIndex: Value<Context, Int>, length: Value<Context, Int>): Value<Context, String?>

Returns the substring of a string.

@JvmName(name = "substringPropertyReceiverByValueByField")
open fun <Context : Any> KProperty1<Context, String?>.substring(startIndex: Value<Context, Int>, length: Field<Context, Int>): Value<Context, String?>

Returns the substring of a string.

@JvmName(name = "substringPropertyReceiverByFieldByResult")
inline fun <Context : Any> KProperty1<Context, String?>.substring(startIndex: Field<Context, Int>, length: Int): Value<Context, String?>

Returns the substring of a string.

@JvmName(name = "substringPropertyReceiverByFieldByProperty")
open fun <Context : Any> KProperty1<Context, String?>.substring(startIndex: Field<Context, Int>, length: KProperty1<Context, Int>): Value<Context, String?>

Returns the substring of a string.

@JvmName(name = "substringPropertyReceiverByFieldByValue")
open fun <Context : Any> KProperty1<Context, String?>.substring(startIndex: Field<Context, Int>, length: Value<Context, Int>): Value<Context, String?>

Returns the substring of a string.

@JvmName(name = "substringPropertyReceiverByFieldByField")
open fun <Context : Any> KProperty1<Context, String?>.substring(startIndex: Field<Context, Int>, length: Field<Context, Int>): Value<Context, String?>

Returns the substring of a string.

inline fun <Context : Any> Value<Context, String?>.substring(startIndex: Int, length: Int): Value<Context, String?>

Returns the substring of a string.

@JvmName(name = "substringByResultByProperty")
inline fun <Context : Any> Value<Context, String?>.substring(startIndex: Int, length: KProperty1<Context, Int>): Value<Context, String?>

Returns the substring of a string.

inline fun <Context : Any> Value<Context, String?>.substring(startIndex: Int, length: Value<Context, Int>): Value<Context, String?>

Returns the substring of a string.

@JvmName(name = "substringByResultByField")
inline fun <Context : Any> Value<Context, String?>.substring(startIndex: Int, length: Field<Context, Int>): Value<Context, String?>

Returns the substring of a string.

@JvmName(name = "substringByPropertyByResult")
inline fun <Context : Any> Value<Context, String?>.substring(startIndex: KProperty1<Context, Int>, length: Int): Value<Context, String?>

Returns the substring of a string.

@JvmName(name = "substringByPropertyByProperty")
open fun <Context : Any> Value<Context, String?>.substring(startIndex: KProperty1<Context, Int>, length: KProperty1<Context, Int>): Value<Context, String?>

Returns the substring of a string.

@JvmName(name = "substringByPropertyByValue")
open fun <Context : Any> Value<Context, String?>.substring(startIndex: KProperty1<Context, Int>, length: Value<Context, Int>): Value<Context, String?>

Returns the substring of a string.

@JvmName(name = "substringByPropertyByField")
open fun <Context : Any> Value<Context, String?>.substring(startIndex: KProperty1<Context, Int>, length: Field<Context, Int>): Value<Context, String?>

Returns the substring of a string.

inline fun <Context : Any> Value<Context, String?>.substring(startIndex: Value<Context, Int>, length: Int): Value<Context, String?>

Returns the substring of a string.

@JvmName(name = "substringByValueByProperty")
open fun <Context : Any> Value<Context, String?>.substring(startIndex: Value<Context, Int>, length: KProperty1<Context, Int>): Value<Context, String?>

Returns the substring of a string.

open fun <Context : Any> Value<Context, String?>.substring(startIndex: Value<Context, Int>, length: Value<Context, Int>): Value<Context, String?>

Returns the substring of a string.

@JvmName(name = "substringByValueByField")
open fun <Context : Any> Value<Context, String?>.substring(startIndex: Value<Context, Int>, length: Field<Context, Int>): Value<Context, String?>

Returns the substring of a string.

@JvmName(name = "substringByFieldByResult")
inline fun <Context : Any> Value<Context, String?>.substring(startIndex: Field<Context, Int>, length: Int): Value<Context, String?>

Returns the substring of a string.

@JvmName(name = "substringByFieldByProperty")
open fun <Context : Any> Value<Context, String?>.substring(startIndex: Field<Context, Int>, length: KProperty1<Context, Int>): Value<Context, String?>

Returns the substring of a string.

@JvmName(name = "substringByFieldByValue")
open fun <Context : Any> Value<Context, String?>.substring(startIndex: Field<Context, Int>, length: Value<Context, Int>): Value<Context, String?>

Returns the substring of a string.

@JvmName(name = "substringByFieldByField")
open fun <Context : Any> Value<Context, String?>.substring(startIndex: Field<Context, Int>, length: Field<Context, Int>): Value<Context, String?>

Returns the substring of a string.

@JvmName(name = "substringFieldReceiverByResultByResult")
inline fun <Context : Any> Field<Context, String?>.substring(startIndex: Int, length: Int): Value<Context, String?>

Returns the substring of a string.

@JvmName(name = "substringFieldReceiverByResultByProperty")
inline fun <Context : Any> Field<Context, String?>.substring(startIndex: Int, length: KProperty1<Context, Int>): Value<Context, String?>

Returns the substring of a string.

@JvmName(name = "substringFieldReceiverByResultByValue")
inline fun <Context : Any> Field<Context, String?>.substring(startIndex: Int, length: Value<Context, Int>): Value<Context, String?>

Returns the substring of a string.

@JvmName(name = "substringFieldReceiverByResultByField")
inline fun <Context : Any> Field<Context, String?>.substring(startIndex: Int, length: Field<Context, Int>): Value<Context, String?>

Returns the substring of a string.

@JvmName(name = "substringFieldReceiverByPropertyByResult")
inline fun <Context : Any> Field<Context, String?>.substring(startIndex: KProperty1<Context, Int>, length: Int): Value<Context, String?>

Returns the substring of a string.

@JvmName(name = "substringFieldReceiverByPropertyByProperty")
open fun <Context : Any> Field<Context, String?>.substring(startIndex: KProperty1<Context, Int>, length: KProperty1<Context, Int>): Value<Context, String?>

Returns the substring of a string.

@JvmName(name = "substringFieldReceiverByPropertyByValue")
open fun <Context : Any> Field<Context, String?>.substring(startIndex: KProperty1<Context, Int>, length: Value<Context, Int>): Value<Context, String?>

Returns the substring of a string.

@JvmName(name = "substringFieldReceiverByPropertyByField")
open fun <Context : Any> Field<Context, String?>.substring(startIndex: KProperty1<Context, Int>, length: Field<Context, Int>): Value<Context, String?>

Returns the substring of a string.

@JvmName(name = "substringFieldReceiverByValueByResult")
inline fun <Context : Any> Field<Context, String?>.substring(startIndex: Value<Context, Int>, length: Int): Value<Context, String?>

Returns the substring of a string.

@JvmName(name = "substringFieldReceiverByValueByProperty")
open fun <Context : Any> Field<Context, String?>.substring(startIndex: Value<Context, Int>, length: KProperty1<Context, Int>): Value<Context, String?>

Returns the substring of a string.

@JvmName(name = "substringFieldReceiverByValueByValue")
open fun <Context : Any> Field<Context, String?>.substring(startIndex: Value<Context, Int>, length: Value<Context, Int>): Value<Context, String?>

Returns the substring of a string.

@JvmName(name = "substringFieldReceiverByValueByField")
open fun <Context : Any> Field<Context, String?>.substring(startIndex: Value<Context, Int>, length: Field<Context, Int>): Value<Context, String?>

Returns the substring of a string.

@JvmName(name = "substringFieldReceiverByFieldByResult")
inline fun <Context : Any> Field<Context, String?>.substring(startIndex: Field<Context, Int>, length: Int): Value<Context, String?>

Returns the substring of a string.

@JvmName(name = "substringFieldReceiverByFieldByProperty")
open fun <Context : Any> Field<Context, String?>.substring(startIndex: Field<Context, Int>, length: KProperty1<Context, Int>): Value<Context, String?>

Returns the substring of a string.

@JvmName(name = "substringFieldReceiverByFieldByValue")
open fun <Context : Any> Field<Context, String?>.substring(startIndex: Field<Context, Int>, length: Value<Context, Int>): Value<Context, String?>

Returns the substring of a string.

@JvmName(name = "substringFieldReceiverByFieldByField")
open fun <Context : Any> Field<Context, String?>.substring(startIndex: Field<Context, Int>, length: Field<Context, Int>): Value<Context, String?>

Returns the substring of a string.

substringUTF8

@JvmName(name = "substringUTF8ResultReceiver")
inline fun String?.substringUTF8(indexes: IntRange): Value<Any, String?>

Returns the substring of a string.

@JvmName(name = "substringUTF8PropertyReceiver")
open fun <Context : Any> KProperty1<Context, String?>.substringUTF8(indexes: IntRange): Value<Context, String?>

Returns the substring of a string.

Returns the substring of a string.

@JvmName(name = "substringUTF8FieldReceiver")
open fun <Context : Any> Field<Context, String?>.substringUTF8(indexes: IntRange): Value<Context, String?>

Returns the substring of a string.

@JvmName(name = "substringUTF8ResultReceiverByResultByResult")
inline fun String?.substringUTF8(startIndex: Int, byteCount: Int): Value<Any, String?>

Returns the substring of a string.

@JvmName(name = "substringUTF8ResultReceiverByResultByProperty")
inline fun <Context : Any> String?.substringUTF8(startIndex: Int, byteCount: KProperty1<Context, Int>): Value<Context, String?>

Returns the substring of a string.

@JvmName(name = "substringUTF8ResultReceiverByResultByValue")
inline fun <Context : Any> String?.substringUTF8(startIndex: Int, byteCount: Value<Context, Int>): Value<Context, String?>

Returns the substring of a string.

@JvmName(name = "substringUTF8ResultReceiverByResultByField")
inline fun <Context : Any> String?.substringUTF8(startIndex: Int, byteCount: Field<Context, Int>): Value<Context, String?>

Returns the substring of a string.

@JvmName(name = "substringUTF8ResultReceiverByPropertyByResult")
inline fun <Context : Any> String?.substringUTF8(startIndex: KProperty1<Context, Int>, byteCount: Int): Value<Context, String?>

Returns the substring of a string.

@JvmName(name = "substringUTF8ResultReceiverByPropertyByProperty")
inline fun <Context : Any> String?.substringUTF8(startIndex: KProperty1<Context, Int>, byteCount: KProperty1<Context, Int>): Value<Context, String?>

Returns the substring of a string.

@JvmName(name = "substringUTF8ResultReceiverByPropertyByValue")
inline fun <Context : Any> String?.substringUTF8(startIndex: KProperty1<Context, Int>, byteCount: Value<Context, Int>): Value<Context, String?>

Returns the substring of a string.

@JvmName(name = "substringUTF8ResultReceiverByPropertyByField")
inline fun <Context : Any> String?.substringUTF8(startIndex: KProperty1<Context, Int>, byteCount: Field<Context, Int>): Value<Context, String?>

Returns the substring of a string.

@JvmName(name = "substringUTF8ResultReceiverByValueByResult")
inline fun <Context : Any> String?.substringUTF8(startIndex: Value<Context, Int>, byteCount: Int): Value<Context, String?>

Returns the substring of a string.

@JvmName(name = "substringUTF8ResultReceiverByValueByProperty")
inline fun <Context : Any> String?.substringUTF8(startIndex: Value<Context, Int>, byteCount: KProperty1<Context, Int>): Value<Context, String?>

Returns the substring of a string.

@JvmName(name = "substringUTF8ResultReceiverByValueByValue")
inline fun <Context : Any> String?.substringUTF8(startIndex: Value<Context, Int>, byteCount: Value<Context, Int>): Value<Context, String?>

Returns the substring of a string.

@JvmName(name = "substringUTF8ResultReceiverByValueByField")
inline fun <Context : Any> String?.substringUTF8(startIndex: Value<Context, Int>, byteCount: Field<Context, Int>): Value<Context, String?>

Returns the substring of a string.

@JvmName(name = "substringUTF8ResultReceiverByFieldByResult")
inline fun <Context : Any> String?.substringUTF8(startIndex: Field<Context, Int>, byteCount: Int): Value<Context, String?>

Returns the substring of a string.

@JvmName(name = "substringUTF8ResultReceiverByFieldByProperty")
inline fun <Context : Any> String?.substringUTF8(startIndex: Field<Context, Int>, byteCount: KProperty1<Context, Int>): Value<Context, String?>

Returns the substring of a string.

@JvmName(name = "substringUTF8ResultReceiverByFieldByValue")
inline fun <Context : Any> String?.substringUTF8(startIndex: Field<Context, Int>, byteCount: Value<Context, Int>): Value<Context, String?>

Returns the substring of a string.

@JvmName(name = "substringUTF8ResultReceiverByFieldByField")
inline fun <Context : Any> String?.substringUTF8(startIndex: Field<Context, Int>, byteCount: Field<Context, Int>): Value<Context, String?>

Returns the substring of a string.

@JvmName(name = "substringUTF8PropertyReceiverByResultByResult")
inline fun <Context : Any> KProperty1<Context, String?>.substringUTF8(startIndex: Int, byteCount: Int): Value<Context, String?>

Returns the substring of a string.

@JvmName(name = "substringUTF8PropertyReceiverByResultByProperty")
inline fun <Context : Any> KProperty1<Context, String?>.substringUTF8(startIndex: Int, byteCount: KProperty1<Context, Int>): Value<Context, String?>

Returns the substring of a string.

@JvmName(name = "substringUTF8PropertyReceiverByResultByValue")
inline fun <Context : Any> KProperty1<Context, String?>.substringUTF8(startIndex: Int, byteCount: Value<Context, Int>): Value<Context, String?>

Returns the substring of a string.

@JvmName(name = "substringUTF8PropertyReceiverByResultByField")
inline fun <Context : Any> KProperty1<Context, String?>.substringUTF8(startIndex: Int, byteCount: Field<Context, Int>): Value<Context, String?>

Returns the substring of a string.

@JvmName(name = "substringUTF8PropertyReceiverByPropertyByResult")
inline fun <Context : Any> KProperty1<Context, String?>.substringUTF8(startIndex: KProperty1<Context, Int>, byteCount: Int): Value<Context, String?>

Returns the substring of a string.

@JvmName(name = "substringUTF8PropertyReceiverByPropertyByProperty")
open fun <Context : Any> KProperty1<Context, String?>.substringUTF8(startIndex: KProperty1<Context, Int>, byteCount: KProperty1<Context, Int>): Value<Context, String?>

Returns the substring of a string.

@JvmName(name = "substringUTF8PropertyReceiverByPropertyByValue")
open fun <Context : Any> KProperty1<Context, String?>.substringUTF8(startIndex: KProperty1<Context, Int>, byteCount: Value<Context, Int>): Value<Context, String?>

Returns the substring of a string.

@JvmName(name = "substringUTF8PropertyReceiverByPropertyByField")
open fun <Context : Any> KProperty1<Context, String?>.substringUTF8(startIndex: KProperty1<Context, Int>, byteCount: Field<Context, Int>): Value<Context, String?>

Returns the substring of a string.

@JvmName(name = "substringUTF8PropertyReceiverByValueByResult")
inline fun <Context : Any> KProperty1<Context, String?>.substringUTF8(startIndex: Value<Context, Int>, byteCount: Int): Value<Context, String?>

Returns the substring of a string.

@JvmName(name = "substringUTF8PropertyReceiverByValueByProperty")
open fun <Context : Any> KProperty1<Context, String?>.substringUTF8(startIndex: Value<Context, Int>, byteCount: KProperty1<Context, Int>): Value<Context, String?>

Returns the substring of a string.

@JvmName(name = "substringUTF8PropertyReceiverByValueByValue")
open fun <Context : Any> KProperty1<Context, String?>.substringUTF8(startIndex: Value<Context, Int>, byteCount: Value<Context, Int>): Value<Context, String?>

Returns the substring of a string.

@JvmName(name = "substringUTF8PropertyReceiverByValueByField")
open fun <Context : Any> KProperty1<Context, String?>.substringUTF8(startIndex: Value<Context, Int>, byteCount: Field<Context, Int>): Value<Context, String?>

Returns the substring of a string.

@JvmName(name = "substringUTF8PropertyReceiverByFieldByResult")
inline fun <Context : Any> KProperty1<Context, String?>.substringUTF8(startIndex: Field<Context, Int>, byteCount: Int): Value<Context, String?>

Returns the substring of a string.

@JvmName(name = "substringUTF8PropertyReceiverByFieldByProperty")
open fun <Context : Any> KProperty1<Context, String?>.substringUTF8(startIndex: Field<Context, Int>, byteCount: KProperty1<Context, Int>): Value<Context, String?>

Returns the substring of a string.

@JvmName(name = "substringUTF8PropertyReceiverByFieldByValue")
open fun <Context : Any> KProperty1<Context, String?>.substringUTF8(startIndex: Field<Context, Int>, byteCount: Value<Context, Int>): Value<Context, String?>

Returns the substring of a string.

@JvmName(name = "substringUTF8PropertyReceiverByFieldByField")
open fun <Context : Any> KProperty1<Context, String?>.substringUTF8(startIndex: Field<Context, Int>, byteCount: Field<Context, Int>): Value<Context, String?>

Returns the substring of a string.

inline fun <Context : Any> Value<Context, String?>.substringUTF8(startIndex: Int, byteCount: Int): Value<Context, String?>

Returns the substring of a string.

@JvmName(name = "substringUTF8ByResultByProperty")
inline fun <Context : Any> Value<Context, String?>.substringUTF8(startIndex: Int, byteCount: KProperty1<Context, Int>): Value<Context, String?>

Returns the substring of a string.

inline fun <Context : Any> Value<Context, String?>.substringUTF8(startIndex: Int, byteCount: Value<Context, Int>): Value<Context, String?>

Returns the substring of a string.

@JvmName(name = "substringUTF8ByResultByField")
inline fun <Context : Any> Value<Context, String?>.substringUTF8(startIndex: Int, byteCount: Field<Context, Int>): Value<Context, String?>

Returns the substring of a string.

@JvmName(name = "substringUTF8ByPropertyByResult")
inline fun <Context : Any> Value<Context, String?>.substringUTF8(startIndex: KProperty1<Context, Int>, byteCount: Int): Value<Context, String?>

Returns the substring of a string.

@JvmName(name = "substringUTF8ByPropertyByProperty")
open fun <Context : Any> Value<Context, String?>.substringUTF8(startIndex: KProperty1<Context, Int>, byteCount: KProperty1<Context, Int>): Value<Context, String?>

Returns the substring of a string.

@JvmName(name = "substringUTF8ByPropertyByValue")
open fun <Context : Any> Value<Context, String?>.substringUTF8(startIndex: KProperty1<Context, Int>, byteCount: Value<Context, Int>): Value<Context, String?>

Returns the substring of a string.

@JvmName(name = "substringUTF8ByPropertyByField")
open fun <Context : Any> Value<Context, String?>.substringUTF8(startIndex: KProperty1<Context, Int>, byteCount: Field<Context, Int>): Value<Context, String?>

Returns the substring of a string.

inline fun <Context : Any> Value<Context, String?>.substringUTF8(startIndex: Value<Context, Int>, byteCount: Int): Value<Context, String?>

Returns the substring of a string.

@JvmName(name = "substringUTF8ByValueByProperty")
open fun <Context : Any> Value<Context, String?>.substringUTF8(startIndex: Value<Context, Int>, byteCount: KProperty1<Context, Int>): Value<Context, String?>

Returns the substring of a string.

open fun <Context : Any> Value<Context, String?>.substringUTF8(startIndex: Value<Context, Int>, byteCount: Value<Context, Int>): Value<Context, String?>

Returns the substring of a string.

@JvmName(name = "substringUTF8ByValueByField")
open fun <Context : Any> Value<Context, String?>.substringUTF8(startIndex: Value<Context, Int>, byteCount: Field<Context, Int>): Value<Context, String?>

Returns the substring of a string.

@JvmName(name = "substringUTF8ByFieldByResult")
inline fun <Context : Any> Value<Context, String?>.substringUTF8(startIndex: Field<Context, Int>, byteCount: Int): Value<Context, String?>

Returns the substring of a string.

@JvmName(name = "substringUTF8ByFieldByProperty")
open fun <Context : Any> Value<Context, String?>.substringUTF8(startIndex: Field<Context, Int>, byteCount: KProperty1<Context, Int>): Value<Context, String?>

Returns the substring of a string.

@JvmName(name = "substringUTF8ByFieldByValue")
open fun <Context : Any> Value<Context, String?>.substringUTF8(startIndex: Field<Context, Int>, byteCount: Value<Context, Int>): Value<Context, String?>

Returns the substring of a string.

@JvmName(name = "substringUTF8ByFieldByField")
open fun <Context : Any> Value<Context, String?>.substringUTF8(startIndex: Field<Context, Int>, byteCount: Field<Context, Int>): Value<Context, String?>

Returns the substring of a string.

@JvmName(name = "substringUTF8FieldReceiverByResultByResult")
inline fun <Context : Any> Field<Context, String?>.substringUTF8(startIndex: Int, byteCount: Int): Value<Context, String?>

Returns the substring of a string.

@JvmName(name = "substringUTF8FieldReceiverByResultByProperty")
inline fun <Context : Any> Field<Context, String?>.substringUTF8(startIndex: Int, byteCount: KProperty1<Context, Int>): Value<Context, String?>

Returns the substring of a string.

@JvmName(name = "substringUTF8FieldReceiverByResultByValue")
inline fun <Context : Any> Field<Context, String?>.substringUTF8(startIndex: Int, byteCount: Value<Context, Int>): Value<Context, String?>

Returns the substring of a string.

@JvmName(name = "substringUTF8FieldReceiverByResultByField")
inline fun <Context : Any> Field<Context, String?>.substringUTF8(startIndex: Int, byteCount: Field<Context, Int>): Value<Context, String?>

Returns the substring of a string.

@JvmName(name = "substringUTF8FieldReceiverByPropertyByResult")
inline fun <Context : Any> Field<Context, String?>.substringUTF8(startIndex: KProperty1<Context, Int>, byteCount: Int): Value<Context, String?>

Returns the substring of a string.

@JvmName(name = "substringUTF8FieldReceiverByPropertyByProperty")
open fun <Context : Any> Field<Context, String?>.substringUTF8(startIndex: KProperty1<Context, Int>, byteCount: KProperty1<Context, Int>): Value<Context, String?>

Returns the substring of a string.

@JvmName(name = "substringUTF8FieldReceiverByPropertyByValue")
open fun <Context : Any> Field<Context, String?>.substringUTF8(startIndex: KProperty1<Context, Int>, byteCount: Value<Context, Int>): Value<Context, String?>

Returns the substring of a string.

@JvmName(name = "substringUTF8FieldReceiverByPropertyByField")
open fun <Context : Any> Field<Context, String?>.substringUTF8(startIndex: KProperty1<Context, Int>, byteCount: Field<Context, Int>): Value<Context, String?>

Returns the substring of a string.

@JvmName(name = "substringUTF8FieldReceiverByValueByResult")
inline fun <Context : Any> Field<Context, String?>.substringUTF8(startIndex: Value<Context, Int>, byteCount: Int): Value<Context, String?>

Returns the substring of a string.

@JvmName(name = "substringUTF8FieldReceiverByValueByProperty")
open fun <Context : Any> Field<Context, String?>.substringUTF8(startIndex: Value<Context, Int>, byteCount: KProperty1<Context, Int>): Value<Context, String?>

Returns the substring of a string.

@JvmName(name = "substringUTF8FieldReceiverByValueByValue")
open fun <Context : Any> Field<Context, String?>.substringUTF8(startIndex: Value<Context, Int>, byteCount: Value<Context, Int>): Value<Context, String?>

Returns the substring of a string.

@JvmName(name = "substringUTF8FieldReceiverByValueByField")
open fun <Context : Any> Field<Context, String?>.substringUTF8(startIndex: Value<Context, Int>, byteCount: Field<Context, Int>): Value<Context, String?>

Returns the substring of a string.

@JvmName(name = "substringUTF8FieldReceiverByFieldByResult")
inline fun <Context : Any> Field<Context, String?>.substringUTF8(startIndex: Field<Context, Int>, byteCount: Int): Value<Context, String?>

Returns the substring of a string.

@JvmName(name = "substringUTF8FieldReceiverByFieldByProperty")
open fun <Context : Any> Field<Context, String?>.substringUTF8(startIndex: Field<Context, Int>, byteCount: KProperty1<Context, Int>): Value<Context, String?>

Returns the substring of a string.

@JvmName(name = "substringUTF8FieldReceiverByFieldByValue")
open fun <Context : Any> Field<Context, String?>.substringUTF8(startIndex: Field<Context, Int>, byteCount: Value<Context, Int>): Value<Context, String?>

Returns the substring of a string.

@JvmName(name = "substringUTF8FieldReceiverByFieldByField")
open fun <Context : Any> Field<Context, String?>.substringUTF8(startIndex: Field<Context, Int>, byteCount: Field<Context, Int>): Value<Context, String?>

Returns the substring of a string.

switch

inline fun <R : Any, T> switch(vararg cases: ConditionalValueOperators.Case<R, T>, default: T): Value<R, T>

Selects one value based on multiple conditions.

@JvmName(name = "switchByProperty")
open fun <R : Any, T> switch(vararg cases: ConditionalValueOperators.Case<R, T>, default: KProperty1<R, T>): Value<R, T>

Selects one value based on multiple conditions.

open fun <R : Any, T> switch(vararg cases: ConditionalValueOperators.Case<R, T>, default: Value<R, T>? = null): Value<R, T>

Selects one value based on multiple conditions.

@JvmName(name = "switchByField")
open fun <R : Any, T> switch(vararg cases: ConditionalValueOperators.Case<R, T>, default: Field<R, T>): Value<R, T>

Selects one value based on multiple conditions.

take

@JvmName(name = "takeResultReceiverByResult")
inline fun <Context : Any, T> Collection<T>.take(limit: Int): Value<Context, List<T>>

Returns the first limit elements in an array, similar to kotlin.collections.take.

@JvmName(name = "takeResultReceiverByProperty")
open fun <Context : Any, T> Collection<T>.take(limit: KProperty1<Context, Int>): Value<Context, List<T>>

Returns the first limit elements in an array, similar to kotlin.collections.take.

@JvmName(name = "takeResultReceiverByValue")
open fun <Context : Any, T> Collection<T>.take(limit: Value<Context, Int>): Value<Context, List<T>>

Returns the first limit elements in an array, similar to kotlin.collections.take.

@JvmName(name = "takeResultReceiverByField")
open fun <Context : Any, T> Collection<T>.take(limit: Field<Context, Int>): Value<Context, List<T>>

Returns the first limit elements in an array, similar to kotlin.collections.take.

@JvmName(name = "takePropertyReceiverByResult")
inline fun <Context : Any, T> KProperty1<Context, Collection<T>>.take(limit: Int): Value<Context, List<T>>

Returns the first limit elements in an array, similar to kotlin.collections.take.

@JvmName(name = "takePropertyReceiverByProperty")
open fun <Context : Any, T> KProperty1<Context, Collection<T>>.take(limit: KProperty1<Context, Int>): Value<Context, List<T>>

Returns the first limit elements in an array, similar to kotlin.collections.take.

@JvmName(name = "takePropertyReceiverByValue")
open fun <Context : Any, T> KProperty1<Context, Collection<T>>.take(limit: Value<Context, Int>): Value<Context, List<T>>

Returns the first limit elements in an array, similar to kotlin.collections.take.

@JvmName(name = "takePropertyReceiverByField")
open fun <Context : Any, T> KProperty1<Context, Collection<T>>.take(limit: Field<Context, Int>): Value<Context, List<T>>

Returns the first limit elements in an array, similar to kotlin.collections.take.

inline fun <Context : Any, T> Value<Context, Collection<T>>.take(limit: Int): Value<Context, List<T>>

Returns the first limit elements in an array, similar to kotlin.collections.take.

@JvmName(name = "takeByProperty")
open fun <Context : Any, T> Value<Context, Collection<T>>.take(limit: KProperty1<Context, Int>): Value<Context, List<T>>

Returns the first limit elements in an array, similar to kotlin.collections.take.

open fun <Context : Any, T> Value<Context, Collection<T>>.take(limit: Value<Context, Int>): Value<Context, List<T>>

Returns the first limit elements in an array, similar to kotlin.collections.take.

@JvmName(name = "takeByField")
open fun <Context : Any, T> Value<Context, Collection<T>>.take(limit: Field<Context, Int>): Value<Context, List<T>>

Returns the first limit elements in an array, similar to kotlin.collections.take.

@JvmName(name = "takeFieldReceiverByResult")
inline fun <Context : Any, T> Field<Context, Collection<T>>.take(limit: Int): Value<Context, List<T>>

Returns the first limit elements in an array, similar to kotlin.collections.take.

@JvmName(name = "takeFieldReceiverByProperty")
open fun <Context : Any, T> Field<Context, Collection<T>>.take(limit: KProperty1<Context, Int>): Value<Context, List<T>>

Returns the first limit elements in an array, similar to kotlin.collections.take.

@JvmName(name = "takeFieldReceiverByValue")
open fun <Context : Any, T> Field<Context, Collection<T>>.take(limit: Value<Context, Int>): Value<Context, List<T>>

Returns the first limit elements in an array, similar to kotlin.collections.take.

@JvmName(name = "takeFieldReceiverByField")
open fun <Context : Any, T> Field<Context, Collection<T>>.take(limit: Field<Context, Int>): Value<Context, List<T>>

Returns the first limit elements in an array, similar to kotlin.collections.take.

takeLast

@JvmName(name = "takeLastResultReceiverByResult")
inline fun <Context : Any, T> Collection<T>.takeLast(limit: Int): Value<Context, List<T>>

Returns the last limit elements in an array, similar to kotlin.collections.takeLast.

@JvmName(name = "takeLastResultReceiverByProperty")
open fun <Context : Any, T> Collection<T>.takeLast(limit: KProperty1<Context, Int>): Value<Context, List<T>>

Returns the last limit elements in an array, similar to kotlin.collections.takeLast.

@JvmName(name = "takeLastResultReceiverByValue")
open fun <Context : Any, T> Collection<T>.takeLast(limit: Value<Context, Int>): Value<Context, List<T>>

Returns the last limit elements in an array, similar to kotlin.collections.takeLast.

@JvmName(name = "takeLastResultReceiverByField")
open fun <Context : Any, T> Collection<T>.takeLast(limit: Field<Context, Int>): Value<Context, List<T>>

Returns the last limit elements in an array, similar to kotlin.collections.takeLast.

@JvmName(name = "takeLastPropertyReceiverByResult")
inline fun <Context : Any, T> KProperty1<Context, Collection<T>>.takeLast(limit: Int): Value<Context, List<T>>

Returns the last limit elements in an array, similar to kotlin.collections.takeLast.

@JvmName(name = "takeLastPropertyReceiverByProperty")
open fun <Context : Any, T> KProperty1<Context, Collection<T>>.takeLast(limit: KProperty1<Context, Int>): Value<Context, List<T>>

Returns the last limit elements in an array, similar to kotlin.collections.takeLast.

@JvmName(name = "takeLastPropertyReceiverByValue")
open fun <Context : Any, T> KProperty1<Context, Collection<T>>.takeLast(limit: Value<Context, Int>): Value<Context, List<T>>

Returns the last limit elements in an array, similar to kotlin.collections.takeLast.

@JvmName(name = "takeLastPropertyReceiverByField")
open fun <Context : Any, T> KProperty1<Context, Collection<T>>.takeLast(limit: Field<Context, Int>): Value<Context, List<T>>

Returns the last limit elements in an array, similar to kotlin.collections.takeLast.

inline fun <Context : Any, T> Value<Context, Collection<T>>.takeLast(limit: Int): Value<Context, List<T>>

Returns the last limit elements in an array, similar to kotlin.collections.takeLast.

@JvmName(name = "takeLastByProperty")
open fun <Context : Any, T> Value<Context, Collection<T>>.takeLast(limit: KProperty1<Context, Int>): Value<Context, List<T>>

Returns the last limit elements in an array, similar to kotlin.collections.takeLast.

Returns the last limit elements in an array, similar to kotlin.collections.takeLast.

@JvmName(name = "takeLastByField")
open fun <Context : Any, T> Value<Context, Collection<T>>.takeLast(limit: Field<Context, Int>): Value<Context, List<T>>

Returns the last limit elements in an array, similar to kotlin.collections.takeLast.

@JvmName(name = "takeLastFieldReceiverByResult")
inline fun <Context : Any, T> Field<Context, Collection<T>>.takeLast(limit: Int): Value<Context, List<T>>

Returns the last limit elements in an array, similar to kotlin.collections.takeLast.

@JvmName(name = "takeLastFieldReceiverByProperty")
open fun <Context : Any, T> Field<Context, Collection<T>>.takeLast(limit: KProperty1<Context, Int>): Value<Context, List<T>>

Returns the last limit elements in an array, similar to kotlin.collections.takeLast.

@JvmName(name = "takeLastFieldReceiverByValue")
open fun <Context : Any, T> Field<Context, Collection<T>>.takeLast(limit: Value<Context, Int>): Value<Context, List<T>>

Returns the last limit elements in an array, similar to kotlin.collections.takeLast.

@JvmName(name = "takeLastFieldReceiverByField")
open fun <Context : Any, T> Field<Context, Collection<T>>.takeLast(limit: Field<Context, Int>): Value<Context, List<T>>

Returns the last limit elements in an array, similar to kotlin.collections.takeLast.

tan

inline fun tan(value: Double?): Value<Any, Double?>

The tangent of a value that is measured in radians.

@JvmName(name = "tanByProperty")
open fun <Context : Any> tan(value: KProperty1<Context, Double?>): Value<Context, Double?>

The tangent of a value that is measured in radians.

open fun <Context : Any> tan(value: Value<Context, Double?>): Value<Context, Double?>

The tangent of a value that is measured in radians.

@JvmName(name = "tanByField")
open fun <Context : Any> tan(value: Field<Context, Double?>): Value<Context, Double?>

The tangent of a value that is measured in radians.

tanh

inline fun tanh(value: Double?): Value<Any, Double?>

The hyperbolic tangent of a value that is measured in radians.

@JvmName(name = "tanhByProperty")
open fun <Context : Any> tanh(value: KProperty1<Context, Double?>): Value<Context, Double?>

The hyperbolic tangent of a value that is measured in radians.

open fun <Context : Any> tanh(value: Value<Context, Double?>): Value<Context, Double?>

The hyperbolic tangent of a value that is measured in radians.

@JvmName(name = "tanhByField")
open fun <Context : Any> tanh(value: Field<Context, Double?>): Value<Context, Double?>

The hyperbolic tangent of a value that is measured in radians.

then

@JvmName(name = "thenResultReceiverByResult")
infix inline fun <R : Any, T> Boolean.then(value: T): ConditionalValueOperators.Case<R, T>

Instantiates a Case for the switch operator.

@JvmName(name = "thenResultReceiverByProperty")
infix inline fun <R : Any, T> Boolean.then(value: KProperty1<R, T>): ConditionalValueOperators.Case<R, T>

Instantiates a Case for the switch operator.

@JvmName(name = "thenResultReceiverByValue")
infix inline fun <R : Any, T> Boolean.then(value: Value<R, T>): ConditionalValueOperators.Case<R, T>

Instantiates a Case for the switch operator.

@JvmName(name = "thenResultReceiverByField")
infix inline fun <R : Any, T> Boolean.then(value: Field<R, T>): ConditionalValueOperators.Case<R, T>

Instantiates a Case for the switch operator.

@JvmName(name = "thenPropertyReceiverByResult")
infix inline fun <R : Any, T> KProperty1<R, Boolean>.then(value: T): ConditionalValueOperators.Case<R, T>

Instantiates a Case for the switch operator.

@JvmName(name = "thenPropertyReceiverByProperty")
open infix fun <R : Any, T> KProperty1<R, Boolean>.then(value: KProperty1<R, T>): ConditionalValueOperators.Case<R, T>

Instantiates a Case for the switch operator.

@JvmName(name = "thenPropertyReceiverByValue")
open infix fun <R : Any, T> KProperty1<R, Boolean>.then(value: Value<R, T>): ConditionalValueOperators.Case<R, T>

Instantiates a Case for the switch operator.

@JvmName(name = "thenPropertyReceiverByField")
open infix fun <R : Any, T> KProperty1<R, Boolean>.then(value: Field<R, T>): ConditionalValueOperators.Case<R, T>

Instantiates a Case for the switch operator.

infix inline fun <R : Any, T> Value<R, Boolean>.then(value: T): ConditionalValueOperators.Case<R, T>

Instantiates a Case for the switch operator.

@JvmName(name = "thenByProperty")
open infix fun <R : Any, T> Value<R, Boolean>.then(value: KProperty1<R, T>): ConditionalValueOperators.Case<R, T>

Instantiates a Case for the switch operator.

open infix fun <R : Any, T> Value<R, Boolean>.then(value: Value<R, T>): ConditionalValueOperators.Case<R, T>

Instantiates a Case for the switch operator.

@JvmName(name = "thenByField")
open infix fun <R : Any, T> Value<R, Boolean>.then(value: Field<R, T>): ConditionalValueOperators.Case<R, T>

Instantiates a Case for the switch operator.

@JvmName(name = "thenFieldReceiverByResult")
infix inline fun <R : Any, T> Field<R, Boolean>.then(value: T): ConditionalValueOperators.Case<R, T>

Instantiates a Case for the switch operator.

@JvmName(name = "thenFieldReceiverByProperty")
open infix fun <R : Any, T> Field<R, Boolean>.then(value: KProperty1<R, T>): ConditionalValueOperators.Case<R, T>

Instantiates a Case for the switch operator.

@JvmName(name = "thenFieldReceiverByValue")
open infix fun <R : Any, T> Field<R, Boolean>.then(value: Value<R, T>): ConditionalValueOperators.Case<R, T>

Instantiates a Case for the switch operator.

@JvmName(name = "thenFieldReceiverByField")
open infix fun <R : Any, T> Field<R, Boolean>.then(value: Field<R, T>): ConditionalValueOperators.Case<R, T>

Instantiates a Case for the switch operator.

times

@JvmName(name = "timesResultReceiverByResult")
inline operator fun <Context : Any, Result> Result.times(other: Result): Value<Context, Result>

Multiplies two or more aggregation values.

@JvmName(name = "timesResultReceiverByProperty")
inline operator fun <Context : Any, Result> Result.times(other: KProperty1<Context, Result>): Value<Context, Result>

Multiplies two or more aggregation values.

@JvmName(name = "timesResultReceiverByValue")
inline operator fun <Context : Any, Result> Result.times(other: Value<Context, Result>): Value<Context, Result>

Multiplies two or more aggregation values.

@JvmName(name = "timesResultReceiverByField")
inline operator fun <Context : Any, Result> Result.times(other: Field<Context, Result>): Value<Context, Result>

Multiplies two or more aggregation values.

@JvmName(name = "timesPropertyReceiverByResult")
inline operator fun <Context : Any, Result> KProperty1<Context, Result>.times(other: Result): Value<Context, Result>

Multiplies two or more aggregation values.

@JvmName(name = "timesPropertyReceiverByProperty")
open operator fun <Context : Any, Result> KProperty1<Context, Result>.times(other: KProperty1<Context, Result>): Value<Context, Result>

Multiplies two or more aggregation values.

@JvmName(name = "timesPropertyReceiverByValue")
open operator fun <Context : Any, Result> KProperty1<Context, Result>.times(other: Value<Context, Result>): Value<Context, Result>

Multiplies two or more aggregation values.

@JvmName(name = "timesPropertyReceiverByField")
open operator fun <Context : Any, Result> KProperty1<Context, Result>.times(other: Field<Context, Result>): Value<Context, Result>

Multiplies two or more aggregation values.

inline operator fun <Context : Any, Result> Value<Context, Result>.times(other: Result): Value<Context, Result>

Multiplies two or more aggregation values.

@JvmName(name = "timesByProperty")
open operator fun <Context : Any, Result> Value<Context, Result>.times(other: KProperty1<Context, Result>): Value<Context, Result>

Multiplies two or more aggregation values.

open operator fun <Context : Any, Result> Value<Context, Result>.times(other: Value<Context, Result>): Value<Context, Result>

Multiplies two or more aggregation values.

@JvmName(name = "timesByField")
open operator fun <Context : Any, Result> Value<Context, Result>.times(other: Field<Context, Result>): Value<Context, Result>

Multiplies two or more aggregation values.

@JvmName(name = "timesFieldReceiverByResult")
inline operator fun <Context : Any, Result> Field<Context, Result>.times(other: Result): Value<Context, Result>

Multiplies two or more aggregation values.

@JvmName(name = "timesFieldReceiverByProperty")
open operator fun <Context : Any, Result> Field<Context, Result>.times(other: KProperty1<Context, Result>): Value<Context, Result>

Multiplies two or more aggregation values.

@JvmName(name = "timesFieldReceiverByValue")
open operator fun <Context : Any, Result> Field<Context, Result>.times(other: Value<Context, Result>): Value<Context, Result>

Multiplies two or more aggregation values.

@JvmName(name = "timesFieldReceiverByField")
open operator fun <Context : Any, Result> Field<Context, Result>.times(other: Field<Context, Result>): Value<Context, Result>

Multiplies two or more aggregation values.

toBoolean

@JvmName(name = "toBooleanResultReceiver")
inline fun Any?.toBoolean(): Value<Any, Boolean>

Converts this value to a BsonType.Boolean.

@JvmName(name = "toBooleanPropertyReceiver")
open fun <R : Any> KProperty1<R, *>.toBoolean(): Value<R, Boolean>

Converts this value to a BsonType.Boolean.

open fun <R : Any> Value<R, *>.toBoolean(): Value<R, Boolean>

Converts this value to a BsonType.Boolean.

@JvmName(name = "toBooleanFieldReceiver")
open fun <R : Any> Field<R, *>.toBoolean(): Value<R, Boolean>

Converts this value to a BsonType.Boolean.

toBson

Writes the result of simplifying to a new BsonDocument.

toDegrees

@JvmName(name = "toDegreesResultReceiver")
inline fun Double.toDegrees(): Value<Any, Double>

Converts an angle in radians to an angle in degrees.

@JvmName(name = "toDegreesPropertyReceiver")
open fun <Context : Any> KProperty1<Context, Double>.toDegrees(): Value<Context, Double>

Converts an angle in radians to an angle in degrees.

Converts an angle in radians to an angle in degrees.

@JvmName(name = "toDegreesFieldReceiver")
open fun <Context : Any> Field<Context, Double>.toDegrees(): Value<Context, Double>

Converts an angle in radians to an angle in degrees.

toDouble

@JvmName(name = "toDoubleResultReceiver")
inline fun Any?.toDouble(): Value<Any, Double>

Converts this value to a BsonType.Double.

@JvmName(name = "toDoublePropertyReceiver")
open fun <R : Any> KProperty1<R, *>.toDouble(): Value<R, Double>

Converts this value to a BsonType.Double.

open fun <R : Any> Value<R, *>.toDouble(): Value<R, Double>

Converts this value to a BsonType.Double.

@JvmName(name = "toDoubleFieldReceiver")
open fun <R : Any> Field<R, *>.toDouble(): Value<R, Double>

Converts this value to a BsonType.Double.

toInstant

@JvmName(name = "toInstantResultReceiver")
inline fun Any?.toInstant(): Value<Any, Instant>

Converts this value to an Instant (BsonType.Datetime).

@JvmName(name = "toInstantPropertyReceiver")
open fun <R : Any> KProperty1<R, *>.toInstant(): Value<R, Instant>

Converts this value to an Instant (BsonType.Datetime).

open fun <R : Any> Value<R, *>.toInstant(): Value<R, Instant>

Converts this value to an Instant (BsonType.Datetime).

@JvmName(name = "toInstantFieldReceiver")
open fun <R : Any> Field<R, *>.toInstant(): Value<R, Instant>

Converts this value to an Instant (BsonType.Datetime).

toInt

@JvmName(name = "toIntResultReceiver")
inline fun Any?.toInt(): Value<Any, Int>

Converts this value to an Int (BsonType.Int32).

@JvmName(name = "toIntPropertyReceiver")
open fun <R : Any> KProperty1<R, *>.toInt(): Value<R, Int>

Converts this value to an Int (BsonType.Int32).

open fun <R : Any> Value<R, *>.toInt(): Value<R, Int>

Converts this value to an Int (BsonType.Int32).

@JvmName(name = "toIntFieldReceiver")
open fun <R : Any> Field<R, *>.toInt(): Value<R, Int>

Converts this value to an Int (BsonType.Int32).

toLong

@JvmName(name = "toLongResultReceiver")
inline fun Any?.toLong(): Value<Any, Long>

Converts this value to an Long (BsonType.Int64).

@JvmName(name = "toLongPropertyReceiver")
open fun <R : Any> KProperty1<R, *>.toLong(): Value<R, Long>

Converts this value to an Long (BsonType.Int64).

open fun <R : Any> Value<R, *>.toLong(): Value<R, Long>

Converts this value to an Long (BsonType.Int64).

@JvmName(name = "toLongFieldReceiver")
open fun <R : Any> Field<R, *>.toLong(): Value<R, Long>

Converts this value to an Long (BsonType.Int64).

toObjectId

@JvmName(name = "toObjectIdResultReceiver")
inline fun Any?.toObjectId(): Value<Any, ObjectId>

Converts this value to an ObjectId.

@JvmName(name = "toObjectIdPropertyReceiver")
open fun <R : Any> KProperty1<R, *>.toObjectId(): Value<R, ObjectId>

Converts this value to an ObjectId.

open fun <R : Any> Value<R, *>.toObjectId(): Value<R, ObjectId>

Converts this value to an ObjectId.

@JvmName(name = "toObjectIdFieldReceiver")
open fun <R : Any> Field<R, *>.toObjectId(): Value<R, ObjectId>

Converts this value to an ObjectId.

toRadians

@JvmName(name = "toRadiansResultReceiver")
inline fun Double.toRadians(): Value<Any, Double>

Converts an angle in degrees to an angle in radians.

@JvmName(name = "toRadiansPropertyReceiver")
open fun <Context : Any> KProperty1<Context, Double>.toRadians(): Value<Context, Double>

Converts an angle in degrees to an angle in radians.

Converts an angle in degrees to an angle in radians.

@JvmName(name = "toRadiansFieldReceiver")
open fun <Context : Any> Field<Context, Double>.toRadians(): Value<Context, Double>

Converts an angle in degrees to an angle in radians.

toString

abstract override fun toString(): String

JSON representation of this expression.

toText

@JvmName(name = "toTextResultReceiver")
inline fun Any?.toText(): Value<Any, String>

Converts this value to a String.

@JvmName(name = "toTextPropertyReceiver")
open fun <R : Any> KProperty1<R, *>.toText(): Value<R, String>

Converts this value to a String.

open fun <R : Any> Value<R, *>.toText(): Value<R, String>

Converts this value to a String.

@JvmName(name = "toTextFieldReceiver")
open fun <R : Any> Field<R, *>.toText(): Value<R, String>

Converts this value to a String.

toUuid

@JvmName(name = "toUuidResultReceiver")
@ExperimentalUuidApi
inline fun Any?.toUuid(): Value<Any, Uuid>

Converts a string value to a Uuid (BsonType.BinaryData).

@JvmName(name = "toUuidPropertyReceiver")
@ExperimentalUuidApi
open fun <R : Any> KProperty1<R, *>.toUuid(): Value<R, Uuid>

Converts a string value to a Uuid (BsonType.BinaryData).

@ExperimentalUuidApi
open fun <R : Any> Value<R, *>.toUuid(): Value<R, Uuid>

Converts a string value to a Uuid (BsonType.BinaryData).

@JvmName(name = "toUuidFieldReceiver")
@ExperimentalUuidApi
open fun <R : Any> Field<R, *>.toUuid(): Value<R, Uuid>

Converts a string value to a Uuid (BsonType.BinaryData).

trim

@JvmName(name = "trimResultReceiver")
inline fun String?.trim(): Value<Any, String?>

Removes whitespace characters, including null, or the specified characters from the beginning and end of a string.

@JvmName(name = "trimPropertyReceiver")
open fun <Context : Any> KProperty1<Context, String?>.trim(): Value<Context, String?>

Removes whitespace characters, including null, or the specified characters from the beginning and end of a string.

Removes whitespace characters, including null, or the specified characters from the beginning and end of a string.

@JvmName(name = "trimFieldReceiver")
open fun <Context : Any> Field<Context, String?>.trim(): Value<Context, String?>

Removes whitespace characters, including null, or the specified characters from the beginning and end of a string.

@JvmName(name = "trimResultReceiverByResult")
inline fun String?.trim(characters: String?): Value<Any, String?>

Removes the specified characters from the beginning and end of a string.

@JvmName(name = "trimResultReceiverByProperty")
inline fun <Context : Any> String?.trim(characters: KProperty1<Context, String?>): Value<Context, String?>

Removes the specified characters from the beginning and end of a string.

@JvmName(name = "trimResultReceiverByValue")
inline fun <Context : Any> String?.trim(characters: Value<Context, String?>): Value<Context, String?>

Removes the specified characters from the beginning and end of a string.

@JvmName(name = "trimResultReceiverByField")
inline fun <Context : Any> String?.trim(characters: Field<Context, String?>): Value<Context, String?>

Removes the specified characters from the beginning and end of a string.

@JvmName(name = "trimResultReceiver")
inline fun String?.trim(vararg characters: Char): Value<Any, String?>

Removes the specified characters from the beginning and end of a string.

@JvmName(name = "trimPropertyReceiverByResult")
inline fun <Context : Any> KProperty1<Context, String?>.trim(characters: String?): Value<Context, String?>

Removes the specified characters from the beginning and end of a string.

@JvmName(name = "trimPropertyReceiverByProperty")
open fun <Context : Any> KProperty1<Context, String?>.trim(characters: KProperty1<Context, String?>): Value<Context, String?>

Removes the specified characters from the beginning and end of a string.

@JvmName(name = "trimPropertyReceiverByValue")
open fun <Context : Any> KProperty1<Context, String?>.trim(characters: Value<Context, String?>): Value<Context, String?>

Removes the specified characters from the beginning and end of a string.

@JvmName(name = "trimPropertyReceiverByField")
open fun <Context : Any> KProperty1<Context, String?>.trim(characters: Field<Context, String?>): Value<Context, String?>

Removes the specified characters from the beginning and end of a string.

@JvmName(name = "trimPropertyReceiver")
open fun <Context : Any> KProperty1<Context, String?>.trim(vararg characters: Char): Value<Context, String?>

Removes the specified characters from the beginning and end of a string.

inline fun <Context : Any> Value<Context, String?>.trim(characters: String?): Value<Context, String?>

Removes the specified characters from the beginning and end of a string.

@JvmName(name = "trimByProperty")
open fun <Context : Any> Value<Context, String?>.trim(characters: KProperty1<Context, String?>): Value<Context, String?>

Removes the specified characters from the beginning and end of a string.

open fun <Context : Any> Value<Context, String?>.trim(characters: Value<Context, String?>): Value<Context, String?>

Removes the specified characters from the beginning and end of a string.

@JvmName(name = "trimByField")
open fun <Context : Any> Value<Context, String?>.trim(characters: Field<Context, String?>): Value<Context, String?>

Removes the specified characters from the beginning and end of a string.

open fun <Context : Any> Value<Context, String?>.trim(vararg characters: Char): Value<Context, String?>

Removes the specified characters from the beginning and end of a string.

@JvmName(name = "trimFieldReceiverByResult")
inline fun <Context : Any> Field<Context, String?>.trim(characters: String?): Value<Context, String?>

Removes the specified characters from the beginning and end of a string.

@JvmName(name = "trimFieldReceiverByProperty")
open fun <Context : Any> Field<Context, String?>.trim(characters: KProperty1<Context, String?>): Value<Context, String?>

Removes the specified characters from the beginning and end of a string.

@JvmName(name = "trimFieldReceiverByValue")
open fun <Context : Any> Field<Context, String?>.trim(characters: Value<Context, String?>): Value<Context, String?>

Removes the specified characters from the beginning and end of a string.

@JvmName(name = "trimFieldReceiverByField")
open fun <Context : Any> Field<Context, String?>.trim(characters: Field<Context, String?>): Value<Context, String?>

Removes the specified characters from the beginning and end of a string.

@JvmName(name = "trimFieldReceiver")
open fun <Context : Any> Field<Context, String?>.trim(vararg characters: Char): Value<Context, String?>

Removes the specified characters from the beginning and end of a string.

trimEnd

@JvmName(name = "trimEndResultReceiver")
inline fun String?.trimEnd(): Value<Any, String?>

Removes whitespace characters, including null, or the specified characters from the end of a string.

@JvmName(name = "trimEndPropertyReceiver")
open fun <Context : Any> KProperty1<Context, String?>.trimEnd(): Value<Context, String?>

Removes whitespace characters, including null, or the specified characters from the end of a string.

Removes whitespace characters, including null, or the specified characters from the end of a string.

@JvmName(name = "trimEndFieldReceiver")
open fun <Context : Any> Field<Context, String?>.trimEnd(): Value<Context, String?>

Removes whitespace characters, including null, or the specified characters from the end of a string.

@JvmName(name = "trimEndResultReceiverByResult")
inline fun String?.trimEnd(characters: String?): Value<Any, String?>

Removes the specified characters from the end of a string.

@JvmName(name = "trimEndResultReceiverByProperty")
inline fun <Context : Any> String?.trimEnd(characters: KProperty1<Context, String?>): Value<Context, String?>

Removes the specified characters from the end of a string.

@JvmName(name = "trimEndResultReceiverByValue")
inline fun <Context : Any> String?.trimEnd(characters: Value<Context, String?>): Value<Context, String?>

Removes the specified characters from the end of a string.

@JvmName(name = "trimEndResultReceiverByField")
inline fun <Context : Any> String?.trimEnd(characters: Field<Context, String?>): Value<Context, String?>

Removes the specified characters from the end of a string.

@JvmName(name = "trimEndResultReceiver")
inline fun String?.trimEnd(vararg characters: Char): Value<Any, String?>

Removes the specified characters from the end of a string.

@JvmName(name = "trimEndPropertyReceiverByResult")
inline fun <Context : Any> KProperty1<Context, String?>.trimEnd(characters: String?): Value<Context, String?>

Removes the specified characters from the end of a string.

@JvmName(name = "trimEndPropertyReceiverByProperty")
open fun <Context : Any> KProperty1<Context, String?>.trimEnd(characters: KProperty1<Context, String?>): Value<Context, String?>

Removes the specified characters from the end of a string.

@JvmName(name = "trimEndPropertyReceiverByValue")
open fun <Context : Any> KProperty1<Context, String?>.trimEnd(characters: Value<Context, String?>): Value<Context, String?>

Removes the specified characters from the end of a string.

@JvmName(name = "trimEndPropertyReceiverByField")
open fun <Context : Any> KProperty1<Context, String?>.trimEnd(characters: Field<Context, String?>): Value<Context, String?>

Removes the specified characters from the end of a string.

@JvmName(name = "trimEndPropertyReceiver")
open fun <Context : Any> KProperty1<Context, String?>.trimEnd(vararg characters: Char): Value<Context, String?>

Removes the specified characters from the end of a string.

inline fun <Context : Any> Value<Context, String?>.trimEnd(characters: String?): Value<Context, String?>

Removes the specified characters from the end of a string.

@JvmName(name = "trimEndByProperty")
open fun <Context : Any> Value<Context, String?>.trimEnd(characters: KProperty1<Context, String?>): Value<Context, String?>

Removes the specified characters from the end of a string.

open fun <Context : Any> Value<Context, String?>.trimEnd(characters: Value<Context, String?>): Value<Context, String?>

Removes the specified characters from the end of a string.

@JvmName(name = "trimEndByField")
open fun <Context : Any> Value<Context, String?>.trimEnd(characters: Field<Context, String?>): Value<Context, String?>

Removes the specified characters from the end of a string.

open fun <Context : Any> Value<Context, String?>.trimEnd(vararg characters: Char): Value<Context, String?>

Removes the specified characters from the end of a string.

@JvmName(name = "trimEndFieldReceiverByResult")
inline fun <Context : Any> Field<Context, String?>.trimEnd(characters: String?): Value<Context, String?>

Removes the specified characters from the end of a string.

@JvmName(name = "trimEndFieldReceiverByProperty")
open fun <Context : Any> Field<Context, String?>.trimEnd(characters: KProperty1<Context, String?>): Value<Context, String?>

Removes the specified characters from the end of a string.

@JvmName(name = "trimEndFieldReceiverByValue")
open fun <Context : Any> Field<Context, String?>.trimEnd(characters: Value<Context, String?>): Value<Context, String?>

Removes the specified characters from the end of a string.

@JvmName(name = "trimEndFieldReceiverByField")
open fun <Context : Any> Field<Context, String?>.trimEnd(characters: Field<Context, String?>): Value<Context, String?>

Removes the specified characters from the end of a string.

@JvmName(name = "trimEndFieldReceiver")
open fun <Context : Any> Field<Context, String?>.trimEnd(vararg characters: Char): Value<Context, String?>

Removes the specified characters from the end of a string.

trimStart

@JvmName(name = "trimStartResultReceiver")
inline fun String?.trimStart(): Value<Any, String?>

Removes whitespace characters, including null, or the specified characters from the beginning of a string.

@JvmName(name = "trimStartPropertyReceiver")
open fun <Context : Any> KProperty1<Context, String?>.trimStart(): Value<Context, String?>

Removes whitespace characters, including null, or the specified characters from the beginning of a string.

Removes whitespace characters, including null, or the specified characters from the beginning of a string.

@JvmName(name = "trimStartFieldReceiver")
open fun <Context : Any> Field<Context, String?>.trimStart(): Value<Context, String?>

Removes whitespace characters, including null, or the specified characters from the beginning of a string.

@JvmName(name = "trimStartResultReceiverByResult")
inline fun String?.trimStart(characters: String?): Value<Any, String?>

Removes the specified characters from the beginning of a string.

@JvmName(name = "trimStartResultReceiverByProperty")
inline fun <Context : Any> String?.trimStart(characters: KProperty1<Context, String?>): Value<Context, String?>

Removes the specified characters from the beginning of a string.

@JvmName(name = "trimStartResultReceiverByValue")
inline fun <Context : Any> String?.trimStart(characters: Value<Context, String?>): Value<Context, String?>

Removes the specified characters from the beginning of a string.

@JvmName(name = "trimStartResultReceiverByField")
inline fun <Context : Any> String?.trimStart(characters: Field<Context, String?>): Value<Context, String?>

Removes the specified characters from the beginning of a string.

@JvmName(name = "trimStartResultReceiver")
inline fun String?.trimStart(vararg characters: Char): Value<Any, String?>

Removes the specified characters from the beginning of a string.

@JvmName(name = "trimStartPropertyReceiverByResult")
inline fun <Context : Any> KProperty1<Context, String?>.trimStart(characters: String?): Value<Context, String?>

Removes the specified characters from the beginning of a string.

@JvmName(name = "trimStartPropertyReceiverByProperty")
open fun <Context : Any> KProperty1<Context, String?>.trimStart(characters: KProperty1<Context, String?>): Value<Context, String?>

Removes the specified characters from the beginning of a string.

@JvmName(name = "trimStartPropertyReceiverByValue")
open fun <Context : Any> KProperty1<Context, String?>.trimStart(characters: Value<Context, String?>): Value<Context, String?>

Removes the specified characters from the beginning of a string.

@JvmName(name = "trimStartPropertyReceiverByField")
open fun <Context : Any> KProperty1<Context, String?>.trimStart(characters: Field<Context, String?>): Value<Context, String?>

Removes the specified characters from the beginning of a string.

@JvmName(name = "trimStartPropertyReceiver")
open fun <Context : Any> KProperty1<Context, String?>.trimStart(vararg characters: Char): Value<Context, String?>

Removes the specified characters from the beginning of a string.

inline fun <Context : Any> Value<Context, String?>.trimStart(characters: String?): Value<Context, String?>

Removes the specified characters from the beginning of a string.

@JvmName(name = "trimStartByProperty")
open fun <Context : Any> Value<Context, String?>.trimStart(characters: KProperty1<Context, String?>): Value<Context, String?>

Removes the specified characters from the beginning of a string.

open fun <Context : Any> Value<Context, String?>.trimStart(characters: Value<Context, String?>): Value<Context, String?>

Removes the specified characters from the beginning of a string.

@JvmName(name = "trimStartByField")
open fun <Context : Any> Value<Context, String?>.trimStart(characters: Field<Context, String?>): Value<Context, String?>

Removes the specified characters from the beginning of a string.

open fun <Context : Any> Value<Context, String?>.trimStart(vararg characters: Char): Value<Context, String?>

Removes the specified characters from the beginning of a string.

@JvmName(name = "trimStartFieldReceiverByResult")
inline fun <Context : Any> Field<Context, String?>.trimStart(characters: String?): Value<Context, String?>

Removes the specified characters from the beginning of a string.

@JvmName(name = "trimStartFieldReceiverByProperty")
open fun <Context : Any> Field<Context, String?>.trimStart(characters: KProperty1<Context, String?>): Value<Context, String?>

Removes the specified characters from the beginning of a string.

@JvmName(name = "trimStartFieldReceiverByValue")
open fun <Context : Any> Field<Context, String?>.trimStart(characters: Value<Context, String?>): Value<Context, String?>

Removes the specified characters from the beginning of a string.

@JvmName(name = "trimStartFieldReceiverByField")
open fun <Context : Any> Field<Context, String?>.trimStart(characters: Field<Context, String?>): Value<Context, String?>

Removes the specified characters from the beginning of a string.

@JvmName(name = "trimStartFieldReceiver")
open fun <Context : Any> Field<Context, String?>.trimStart(vararg characters: Char): Value<Context, String?>

Removes the specified characters from the beginning of a string.

unsafe

open infix fun <Root, Child> KProperty1<Root, *>.unsafe(child: String): Field<Root, Child>

Refers to a field child of the current field, with no compile-time safety.

open infix fun <Root, Child> KProperty1<Root, *>.unsafe(child: KProperty1<*, Child>): Field<Root, Child>

Refers to a field child of the current field, without checking that it is a field available on the current object.

open infix fun <Root, Child> KProperty1<Root, *>.unsafe(child: Field<*, Child>): Field<Root, Child>

Refers to a field child of the current field, without checking that it is a field available on the current object.

open infix fun <Root, Child> Field<Root, *>.unsafe(child: KProperty1<*, Child>): Field<Root, Child>

Refers to a field child of the current field, without checking that it is a field available on the current object.

open infix fun <Root, Child> Field<Root, *>.unsafe(child: Field<*, Child>): Field<Root, Child>

Refers to a field child of the current field, without checking that it is a field available on the current object.

open infix fun <Root, Type, Child> Field<Root, Type>.unsafe(child: String): Field<Root, Child>

Refers to a field child of the current field, with no compile-time safety.

uppercase

@JvmName(name = "uppercaseResultReceiver")
inline fun String?.uppercase(): Value<Any, String?>

Converts a string to uppercase, returning the result.

@JvmName(name = "uppercasePropertyReceiver")
open fun <Context : Any> KProperty1<Context, String?>.uppercase(): Value<Context, String?>

Converts a string to uppercase, returning the result.

Converts a string to uppercase, returning the result.

@JvmName(name = "uppercaseFieldReceiver")
open fun <Context : Any> Field<Context, String?>.uppercase(): Value<Context, String?>

Converts a string to uppercase, returning the result.

writeTo

@LowLevelApi
abstract override fun writeTo(writer: BsonFieldWriter)

Writes the result of simplifying this expression into writer.