ValueConverters

Implicit conversions for value types between play.api.libs.json and reactivemongo.api.bson.

import play.api.libs.json.JsValue
import reactivemongo.api.bson.BSONValue
import reactivemongo.play.json.compat.ValueConverters._

def foo(v: BSONValue): JsValue =
 implicitly[JsValue](v) // ValueConverters.fromValue

def bar(v: JsValue): BSONValue =
 implicitly[BSONValue](v) // ValueConverters.toValue

''Note:'' Logger reactivemongo.api.play.json.ValueConverters can be used to debug.

Companion:
object
trait ToValue
trait FromValue
class Object
trait Matchable
class Any
object ValueConverters.type

Type members

Types

final type JsonJavaScript = JsObject
final type JsonNumber = JsNumber
final type JsonObjectID = JsObject
final type JsonSymbol = JsObject

Inherited types

type JsonTime = JsObject
Inherited from:
TemporalObjectConverters (hidden)

Value members

Inherited methods

final protected def jsonJavaScript(bson: BSONJavaScript): JsObject
Inherited from:
SharedValueConverters (hidden)

Implicits

Implicits

final implicit def fromDouble(bson: BSONDouble): JsNumber
final implicit def fromInteger(bson: BSONInteger): JsNumber
implicit def fromJavaScript(bson: BSONJavaScript): JsObject

See syntax:

See syntax:

{ "$code": "<javascript>" }

final implicit def fromLong(bson: BSONLong): JsNumber
final implicit def fromObjectID(bson: BSONObjectID): JsObject

See syntax:

See syntax:

{ "$oid": "<ObjectId bytes>" }

See also:

dsl.objectID

final implicit def fromSymbol(bson: BSONSymbol): JsObject

See syntax:

See syntax:

{ "$symbol": "<name>" }

See also:

dsl.symbol

Inherited implicits

final implicit def fromArray(arr: BSONArray): JsArray
Inherited from:
FromValue
final implicit def fromBinary(bin: BSONBinary): JsObject

See syntax:

See syntax:

{ "$binary": { "base64": "<payload>", "subType": "<t>" } }

Inherited from:
SharedValueConverters (hidden)
final implicit def fromBoolean(bson: BSONBoolean): JsBoolean
Inherited from:
SharedValueConverters (hidden)
implicit def fromDateTime(bson: BSONDateTime): JsObject

See syntax:

See syntax:

{ "$date": { "$numberLong": "<millis>" } }

Inherited from:
TemporalObjectConverters (hidden)
final implicit def fromDecimal(bson: BSONDecimal): JsObject
Inherited from:
SharedValueConverters (hidden)
implicit def fromDocument(bson: BSONDocument)(implicit conv: FromValue): JsObject
Inherited from:
SharedValueConverters (hidden)
final implicit def fromJavaScriptWS(bson: BSONJavaScriptWS): JsObject

See syntax:

See syntax:

{ "$code": "<javascript>", "$scope": { } }

Inherited from:
SharedValueConverters (hidden)
final implicit def fromMaxKey(_max: BSONMaxKey): JsObject

See syntax:

See syntax:

{ "$maxKey": 1 }

Inherited from:
FromValueCompat (hidden)
final implicit def fromMinKey(_min: BSONMinKey): JsObject

See syntax:

See syntax:

{ "$minKey": 1 }

Inherited from:
FromValueCompat (hidden)
implicit def fromNull(_null: BSONNull): JsNull.type
Inherited from:
FromValueCompat (hidden)
final implicit def fromObject(js: JsObject): BSONValue
Inherited from:
SharedValueConverters (hidden)
final implicit def fromRegex(rx: BSONRegex): JsObject

See syntax:

See syntax:

{ "$regularExpression": { "pattern": "<regexPattern>", "options": "<options>" } }

Inherited from:
SharedValueConverters (hidden)
final implicit def fromStr(bson: BSONString): JsString
Inherited from:
FromValue
implicit def fromTimestamp(ts: BSONTimestamp): JsObject

See syntax:

See syntax:

{ "$timestamp": {"t": <t>, "i": <i>} }

Inherited from:
TemporalObjectConverters (hidden)
final implicit def fromUndefined(_undef: BSONUndefined): JsObject

See syntax:

See syntax:

{ "$undefined": true }

Inherited from:
FromValueCompat (hidden)
final implicit def fromValue(bson: BSONValue): JsValue
Inherited from:
LowPriority1Converters (hidden)
final implicit def toArray(arr: JsArray): BSONArray
Inherited from:
ToValue
final implicit def toBoolean(js: JsBoolean): BSONBoolean
Inherited from:
ToValue
final implicit def toDocument(js: JsObject): BSONDocument
Inherited from:
SharedValueConvertersLowPriority1 (hidden)
final implicit def toJsValueWrapper[T <: BSONValue](value: T): JsValueWrapper
Inherited from:
ToValue
final implicit def toNull(_null: JsNull.type): BSONNull
Inherited from:
ToValueCompat (hidden)
final implicit def toNumber(js: JsNumber): BSONValue
Inherited from:
SharedValueConverters (hidden)
@SuppressWarnings(scala.Array.apply[java.lang.String]("NullParameter")(scala.reflect.ClassTag.apply[java.lang.String](classOf[java.lang.String])))
final implicit def toStr(js: JsString): BSONValue
Inherited from:
ToValue
final implicit def toValue(js: JsValue): BSONValue
Inherited from:
SharedValueConvertersLowPriority1 (hidden)