Packages

  • package root
    Definition Classes
    root
  • package reactivemongo
    Definition Classes
    root
  • package api
    Definition Classes
    reactivemongo
  • package bson

    import reactivemongo.api.bson._
    
    // { "name": "Johny", "surname": "Doe", "age": 28, "months": [1, 2, 3] }
    document ++ ("name" -> "Johny") ++ ("surname" -> "Doe") ++
    ("age" -> 28) ++ ("months" -> array(1, 2, 3))
    
    // { "_id": generatedId, "name": "Jane", "surname": "Doe", "age": 28,
    //   "months": [1, 2, 3], "details": { "salary": 12345,
    //   "inventory": ["foo", 7.8, 0, false] } }
    document ++ ("_id" -> generateId, "name" -> "Jane", "surname" -> "Doe",
      "age" -> 28, "months" -> array(1, 2, 3),
      "details" -> document(
        "salary" -> 12345L, "inventory" -> array("foo", 7.8, 0L, false)))
    Definition Classes
    api
  • object Macros

    Macros for generating BSONReader and BSONWriter at compile time.

    Macros for generating BSONReader and BSONWriter at compile time.

    case class Person(name: String, surname: String)
    implicit val personHandler = Macros.handler[Person]
    Definition Classes
    bson
    See also

    MacroOptions for specific options

    MacroConfiguration for extended configuration

  • Annotations
  • LocalVar
  • Placeholder
  • WithOptions

object Annotations

Annotations to use on case classes that are being processed by macros.

Linear Supertypes
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. Annotations
  2. AnyRef
  3. Any
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. Protected

Type Members

  1. final class Flatten extends Annotation with StaticAnnotation

    Indicates that if a property is represented as a document itself, the document fields are directly included in top document, rather than nesting it.

    Indicates that if a property is represented as a document itself, the document fields are directly included in top document, rather than nesting it.

    case class Range(start: Int, end: Int)
    
    case class LabelledRange(
      name: String,
      @Flatten range: Range)
    
    // Flattened
    BSONDocument("name" -> "foo", "start" -> 0, "end" -> 1)
    
    // Rather than:
    // BSONDocument("name" -> "foo", "range" -> BSONDocument(
    //   "start" -> 0, "end" -> 1))
    Annotations
    @param()
  2. final class Ignore extends Annotation with StaticAnnotation

    Ignores a field

    Ignores a field

    Annotations
    @param()
  3. case class Key(key: String) extends Annotation with StaticAnnotation with Product with Serializable

    Specify a key different from field name in your case class.

    Specify a key different from field name in your case class. Convenient to use when you'd like to leverage mongo's _id index but don't want to actually use _id in your code.

    case class Website(@Key("_id") url: String)

    Generated handler will map the url field in your code to _id field in BSON

    key

    the desired key to use in BSON

    Annotations
    @param()
  4. final class NoneAsNull extends Annotation with StaticAnnotation

    Indicates that if an Option property is empty, it will be represented by BSONNull rather than being omitted.

    Indicates that if an Option property is empty, it will be represented by BSONNull rather than being omitted.

    case class Foo(
      title: String,
      @NoneAsNull description: Option[String])
    Annotations
    @param()

Value Members

  1. final def !=(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  2. final def ##(): Int
    Definition Classes
    AnyRef → Any
  3. final def ==(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  4. final def asInstanceOf[T0]: T0
    Definition Classes
    Any
  5. def clone(): AnyRef
    Attributes
    protected[lang]
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.CloneNotSupportedException]) @native()
  6. final def eq(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  7. def equals(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef → Any
  8. def finalize(): Unit
    Attributes
    protected[lang]
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.Throwable])
  9. final def getClass(): Class[_ <: AnyRef]
    Definition Classes
    AnyRef → Any
    Annotations
    @native()
  10. def hashCode(): Int
    Definition Classes
    AnyRef → Any
    Annotations
    @native()
  11. final def isInstanceOf[T0]: Boolean
    Definition Classes
    Any
  12. final def ne(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  13. final def notify(): Unit
    Definition Classes
    AnyRef
    Annotations
    @native()
  14. final def notifyAll(): Unit
    Definition Classes
    AnyRef
    Annotations
    @native()
  15. final def synchronized[T0](arg0: => T0): T0
    Definition Classes
    AnyRef
  16. def toString(): String
    Definition Classes
    AnyRef → Any
  17. final def wait(): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.InterruptedException])
  18. final def wait(arg0: Long, arg1: Int): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.InterruptedException])
  19. final def wait(arg0: Long): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.InterruptedException]) @native()

Inherited from AnyRef

Inherited from Any

Ungrouped