rethinkdb-0.1.0.0: Database/RethinkDB/Types.hs
-- | Some seperate types to solve problems with recursive modules
module Database.RethinkDB.Types where
-- | The type of a RQL expression
--
-- The type hierarchy has 3 branches:
--
-- - A read-only sequence: @StreamType False@
--
-- - A selection (also called a view): @StreamType True@
--
-- - A value (a JSON object, array or primitive type): @ExprType@
data ExprTypeKind =
StreamType Bool ValueTypeKind -- ^ When the flag is true, it can be updated or deleted
| ValueType ValueTypeKind
-- | The types of values
data ValueTypeKind = NumberType | BoolType | ObjectType | ArrayType |
StringType | NoneType | OtherValueType