Packages

  • package root

    Documentation/API for the Molecule library - a meta DSL for the Datomic database.

    Manual | scalamolecule.org | Github | Forum

    Definition Classes
    root
  • package molecule

    Molecule library - a Scala meta-DSL for the Datomic database.

    Molecule library - a Scala meta-DSL for the Datomic database.

    See api package for various api imports to start using Molecule.

    Sub-packages

    action Actions on molecules and entities.
    api Molecule import interfaces of various arities.
    ast Internal Molecule ASTs.
    boilerplate Internal interfaces for auto-generated DSL boilerplate code.
    composition    Builder methods to compose molecules.
    exceptions Exceptions thrown by Molecule.
    expression Attribute expressions and operations.
    facade Molecule facades to Datomic.
    factory Implicit macro methods `m` to instantiate molecules from custom DSL molecule constructs.
    generic Interfaces to generic information about datoms and Datomic database.
    input Input molecules awaiting input.
    macro Internal macros generating molecule code from custom DSL molecule constructs.
    ops Internal operational helpers for transforming DSL to molecule.
    schema Schema definition DSL.
    transform Internal transformers from DSL to Model/Query/Transaction.
    util Internal Java database functions for Datomic.

    Definition Classes
    root
  • package action

    Various actions and operations on molecules and entities.

    Various actions and operations on molecules and entities.

    Definition Classes
    molecule
  • package exception
    Definition Classes
    action
  • package get

    Package with various synchronous getter methods to retrieve data from Datomic with molecules.

    Package with various synchronous getter methods to retrieve data from Datomic with molecules.

    For the Datomic Peer model, Datomic returns data synchronously. The Peer lives in application memory and caches data aggressively to save roundtrips to disk or memcached. Query results that can fit in memory will therefore have near-zero latency and return extremely fast.

    Molecule has not yet addressed the Client api although the query engine would be the same as for the current Peer version.

    Molecule has 5 groups of getters each returning data in various formats:

    • GetList - default getter returning Lists of tuples. Convenient typed data, suitable for smaller data sets
    • GetArray - fastest retrieved typed data set. Can be traversed with a fast while loop
    • GetIterable - for lazily traversing row by row
    • GetRaw - fastest retrieved raw un-typed data from Datomic
    • GetJson - data formatted as Json string

    Getters in each of the 5 groups come with 5 time-dependent variations:

    • get [current data]
    • getAsOf
    • getSince
    • getWith
    • getHistory

    Each time variation has various overloads taking different parameters (see each group for more info).

    Definition Classes
    action
  • CompositeInserts
  • Entity
  • EntityOps
  • Molecule
  • OptionalMapOps
  • ShowDebug
t

molecule.action

ShowDebug

trait ShowDebug[Tpl] extends AnyRef

Debug methods

Call a debug method on a molecule to see the internal transformations and produced transaction statements or sample data.

Self Type
Molecule[Tpl]
Source
ShowDebug.scala
Linear Supertypes
AnyRef, Any
Type Hierarchy
Ordering
  1. Grouped
  2. Alphabetic
  3. By Inheritance
Inherited
  1. ShowDebug
  2. AnyRef
  3. Any
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. All

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. def _debugInsert(conn: Conn, data: Iterable[Seq[Any]]): Unit
    Attributes
    protected
  5. final def asInstanceOf[T0]: T0
    Definition Classes
    Any
  6. def clone(): AnyRef
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @native() @throws( ... )
  7. def debugGet(implicit conn: Conn): Unit

    Debug call to get on a molecule (without affecting the db).

    Debug call to get on a molecule (without affecting the db).

    Prints the following to output:

    1. Internal molecule transformation representations:
    Molecule DSL --> Model --> Query --> Datomic query

    2. Data returned from get query (max 500 rows).

    conn

    Implicit Conn value in scope

  8. def debugGetAsOf(date: Date)(implicit conn: Conn): Unit

    Debug call to getAsOf(date) on a molecule (without affecting the db).

    Debug call to getAsOf(date) on a molecule (without affecting the db).

    Prints the following to output:

    1. Internal molecule transformation representations:
    Molecule DSL --> Model --> Query --> Datomic query

    2. Data returned from get query (max 500 rows).

    conn

    Implicit Conn value in scope

  9. def debugGetAsOf(tx: TxReport)(implicit conn: Conn): Unit

    Debug call to getAsOf(tx) on a molecule (without affecting the db).

    Debug call to getAsOf(tx) on a molecule (without affecting the db).

    Prints the following to output:

    1. Internal molecule transformation representations:
    Molecule DSL --> Model --> Query --> Datomic query

    2. Data returned from get query (max 500 rows).

    tx

    TxReport

    conn

    Implicit Conn value in scope

  10. def debugGetAsOf(t: Long)(implicit conn: Conn): Unit

    Debug call to getAsOf(t) on a molecule (without affecting the db).

    Debug call to getAsOf(t) on a molecule (without affecting the db).

    Prints the following to output:

    1. Internal molecule transformation representations:
    Molecule DSL --> Model --> Query --> Datomic query

    2. Data returned from get query (max 500 rows).

    conn

    Implicit Conn value in scope

  11. def debugGetHistory(implicit conn: Conn): Unit

    Debug call to getHistory on a molecule (without affecting the db).

    Debug call to getHistory on a molecule (without affecting the db).

    Prints the following to output:

    1. Internal molecule transformation representations:
    Molecule DSL --> Model --> Query --> Datomic query

    2. Data returned from get query (max 500 rows).

    conn

    Implicit Conn value in scope

  12. def debugGetSince(date: Date)(implicit conn: Conn): Unit

    Debug call to getSince(date) on a molecule (without affecting the db).

    Debug call to getSince(date) on a molecule (without affecting the db).

    Prints the following to output:

    1. Internal molecule transformation representations:
    Molecule DSL --> Model --> Query --> Datomic query

    2. Data returned from get query (max 500 rows).

    conn

    Implicit Conn value in scope

  13. def debugGetSince(tx: TxReport)(implicit conn: Conn): Unit

    Debug call to getSince(tx) on a molecule (without affecting the db).

    Debug call to getSince(tx) on a molecule (without affecting the db).

    Prints the following to output:

    1. Internal molecule transformation representations:
    Molecule DSL --> Model --> Query --> Datomic query

    2. Data returned from get query (max 500 rows).

    tx

    TxReport

    conn

    Implicit Conn value in scope

  14. def debugGetSince(t: Long)(implicit conn: Conn): Unit

    Debug call to getSince(t) on a molecule (without affecting the db).

    Debug call to getSince(t) on a molecule (without affecting the db).

    Prints the following to output:

    1. Internal molecule transformation representations:
    Molecule DSL --> Model --> Query --> Datomic query

    2. Data returned from get query (max 500 rows).

    conn

    Implicit Conn value in scope

  15. def debugGetWith(txData: List[List[_]])(implicit conn: Conn): Unit

    Debug call to getWith(txData) on a molecule (without affecting the db).

    Debug call to getWith(txData) on a molecule (without affecting the db).

    Prints the following to output:

    1. Internal molecule transformation representations:
    Molecule DSL --> Model --> Query --> Datomic query

    2. Data returned from get query (max 500 rows).

    3. Transactions of applied transaction data.

    txData

    Raw transaction data as java.util.List[Object]

    conn

    Implicit Conn value in scope

  16. def debugGetWith(txMolecules: Seq[Seq[Statement]]*)(implicit conn: Conn): Unit

    Debug call to getWith(txMolecules) on a molecule (without affecting the db).

    Debug call to getWith(txMolecules) on a molecule (without affecting the db).

    Prints the following to output:

    1. Internal molecule transformation representations:
    Molecule DSL --> Model --> Query --> Datomic query

    2. Data returned from get query (max 500 rows).

    3. Transactions of applied transaction molecules.

    txMolecules

    Transaction statements from applied Molecules with test data

    conn

    Implicit Conn value in scope

  17. def debugSave(implicit conn: Conn): Unit

    Debug call to save on a molecule (without affecting the db).

    Debug call to save on a molecule (without affecting the db).

    Prints internal molecule transformation representations to output:

    Model --> Generic statements --> Datomic statements

    conn

    Implicit Conn value in scope

    returns

    Unit

  18. def debugUpdate(implicit conn: Conn): Unit

    Debug call to update on a molecule (without affecting the db).

    Debug call to update on a molecule (without affecting the db).

    Prints internal molecule transformation representations to output:

    Model --> Generic statements --> Datomic statements

    conn

    Implicit Conn value in scope

  19. final def eq(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  20. def equals(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  21. def finalize(): Unit
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( classOf[java.lang.Throwable] )
  22. final def getClass(): Class[_]
    Definition Classes
    AnyRef → Any
    Annotations
    @native()
  23. def hashCode(): Int
    Definition Classes
    AnyRef → Any
    Annotations
    @native()
  24. final def isInstanceOf[T0]: Boolean
    Definition Classes
    Any
  25. final def ne(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  26. final def notify(): Unit
    Definition Classes
    AnyRef
    Annotations
    @native()
  27. final def notifyAll(): Unit
    Definition Classes
    AnyRef
    Annotations
    @native()
  28. final def synchronized[T0](arg0: ⇒ T0): T0
    Definition Classes
    AnyRef
  29. def toString(): String
    Definition Classes
    AnyRef → Any
  30. final def wait(): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  31. final def wait(arg0: Long, arg1: Int): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  32. final def wait(arg0: Long): Unit
    Definition Classes
    AnyRef
    Annotations
    @native() @throws( ... )

Inherited from AnyRef

Inherited from Any

debugAction

debugGet

Ungrouped