Implicit conversions for handler types
between reactivemongo.bson
and reactivemongo.api.bson
.
Implicit conversions for handler types
between reactivemongo.bson
and reactivemongo.api.bson
.
import reactivemongo.api.bson.compat.HandlerConverters._ def foo[T](lw: reactivemongo.bson.BSONDocumentWriter[T]) = { val w: reactivemongo.api.bson.BSONDocumentWriter[T] = lw w } import reactivemongo.bson.BSONValue def bar[T](lr: reactivemongo.api.bson.BSONReader[T]) = { val r: reactivemongo.bson.BSONReader[BSONValue, T] = lr r }
Implicit conversions for value types between
reactivemongo.bson
and reactivemongo.api.bson
.
Implicit conversions for value types between
reactivemongo.bson
and reactivemongo.api.bson
.
// Required import import reactivemongo.api.bson.compat.ValueConverters._ // From legacy reactivemongo.bson import reactivemongo.api.bson.{ BSONDouble, BSONString, BSONValue } val newStr: BSONString = reactivemongo.bson.BSONString("foo") val newVal: BSONValue = reactivemongo.bson.BSONInteger(2) // To legacy val oldStr: reactivemongo.bson.BSONString = BSONString("bar") val oldVal: reactivemongo.bson.BSONValue = BSONDouble(1.2D)
See compat$ and HandlerConverters
See compat$ and ValueConverters
Implicit conversion from new BSONDocumentHandler
to the legacy API.
Implicit conversion from new BSONDocumentHandler
to the legacy API.
import reactivemongo.api.bson.compat.HandlerConverters.fromDocumentHandler def bar[T](lh: reactivemongo.api.bson.BSONDocumentHandler[T]) = { val h: reactivemongo.bson.BSONDocumentHandler[T] = lh h }
import reactivemongo.api.bson.compat.HandlerConverters.fromDocumentReader def foo[T](r: reactivemongo.api.bson.BSONDocumentReader[T]) = { val lr: reactivemongo.bson.BSONDocumentReader[T] = r lr }
import reactivemongo.api.bson.compat.HandlerConverters.fromDocumentWriter def bar[T](lw: reactivemongo.api.bson.BSONDocumentWriter[T]) = { val w: reactivemongo.bson.BSONDocumentWriter[T] = lw w }
Based on the compatibility conversions,
provides instances of legacy BSONDocumentReader
for the new BSON value API.
Based on the compatibility conversions,
provides instances of legacy BSONDocumentReader
for the new BSON value API.
Based on the compatibility conversions,
provides instances of legacy BSONDocumentWriter
for the new BSON value API.
Based on the compatibility conversions,
provides instances of legacy BSONDocumentWriter
for the new BSON value API.
Provided there are both a BSONDocumentReader
and a BSONDocumentWriter
for the given type T
,
a BSONDocumentHandler
is materialized.
Provided there are both a BSONDocumentReader
and a BSONDocumentWriter
for the given type T
,
a BSONDocumentHandler
is materialized.
Implicit conversion from legacy BSONDocumentHandler
to the new API.
Implicit conversion from legacy BSONDocumentHandler
to the new API.
import reactivemongo.api.bson.compat.HandlerConverters.toDocumentHandler def foo[T](lh: reactivemongo.bson.BSONDocumentHandler[T]) = { val h: reactivemongo.api.bson.BSONDocumentHandler[T] = lh h }
Provided there is a legacy document reader, resolve a new one.
Provided there is a legacy document reader, resolve a new one.
import reactivemongo.api.bson.compat.HandlerConverters.toDocumentReaderConv def lorem[T](lw: reactivemongo.bson.BSONDocumentReader[T]) = { val w: reactivemongo.api.bson.BSONDocumentReader[T] = lw w }
Provided there is a legacy document writer, resolve a new one.
Provided there is a legacy document writer, resolve a new one.
import reactivemongo.api.bson.compat.HandlerConverters.toDocumentWriterConv def foo[T](lw: reactivemongo.bson.BSONDocumentWriter[T]) = { val w: reactivemongo.api.bson.BSONDocumentWriter[T] = lw w }
Implicit conversions for handler & values types between
reactivemongo.bson
andreactivemongo.api.bson
.import reactivemongo.api.bson.compat._
For more specific imports, see ValueConverters and HandlerConverters .