rethinkdb-2.2.0.9: A driver for RethinkDB 2.2

Safe HaskellNone
LanguageHaskell98

Database.RethinkDB.Driver

Synopsis

Documentation

run :: (Expr query, Result r) => RethinkDBHandle -> query -> IO r Source #

Run a given query and return a Result

>>> run h $ num 1 :: IO Int
1
>>> run h $ str "foo" :: IO (Either RethinkDBError Int)
  • ** Exception: RethinkDB: Unexpected response: "expected Int, encountered String"
>>> run h $ str "foo" :: IO (Maybe Int)
Nothing
>>> run h $ str "foo" :: IO Int
  • ** Exception: RethinkDB: Unexpected response: "expected Int, encountered String"
>>> c <- run h $ table "users" # orderBy [asc "name"] # (!"name"):: IO (Cursor Datum)
>>> next c
Just "bill"
>>> collect c
["bob","nancy"]

run' :: Expr query => RethinkDBHandle -> query -> IO Datum Source #

Run a given query and return a Datum

class Result r where Source #

Convert the raw query response into useful values

Instances

Result Bool Source # 
Result Char Source # 
Result Double Source # 
Result Float Source # 
Result Int Source # 
Result Int8 Source # 
Result Int16 Source # 
Result Int32 Source # 
Result Int64 Source # 
Result Integer Source # 
Result Word Source # 
Result Word8 Source # 
Result Word16 Source # 
Result Word32 Source # 
Result Word64 Source # 
Result () Source # 
Result ByteString Source # 
Result ByteString Source # 
Result Text Source # 
Result UTCTime Source # 
Result Value Source # 
Result Text Source # 
Result ZonedTime Source # 
Result LonLat Source # 
Result Datum Source # 
Result Response Source # 
Result WriteResponse Source # 
FromDatum a => Result [a] Source # 
FromDatum a => Result (Maybe a) Source # 
Result (Ratio Integer) Source # 
(Ord a, FromDatum a) => Result (Set a) Source # 
FromDatum a => Result (Vector a) Source # 
FromDatum a => Result (Cursor a) Source # 
(FromDatum b, (~) * a RethinkDBError) => Result (Either a b) Source # 
(FromDatum a, FromDatum b) => Result (a, b) Source # 

Methods

convertResult :: MVar Response -> IO (a, b) Source #

FromDatum a => Result (HashMap [Char] a) Source # 
FromDatum a => Result (HashMap Text a) Source # 
FromDatum a => Result (Map [Char] a) Source # 
FromDatum a => Result (Map Text a) Source # 
(FromDatum a, FromDatum b, FromDatum c) => Result (a, b, c) Source # 

Methods

convertResult :: MVar Response -> IO (a, b, c) Source #

(FromDatum a, FromDatum b, FromDatum c, FromDatum d) => Result (a, b, c, d) Source # 

Methods

convertResult :: MVar Response -> IO (a, b, c, d) Source #

(FromDatum a, FromDatum b, FromDatum c, FromDatum d, FromDatum e) => Result (a, b, c, d, e) Source # 

Methods

convertResult :: MVar Response -> IO (a, b, c, d, e) Source #

runOpts :: (Expr query, Result r) => RethinkDBHandle -> [RunFlag] -> query -> IO r Source #

Run a query with the given options

data RunFlag Source #

Per-query settings

Constructors

UseOutdated

Deprecated. Use `ReadMode Outdated` instead

ReadMode ReadMode 
NoReply 
Durability Durability 
Profile 
ArrayLimit Int 

data Durability Source #

Constructors

Hard 
Soft 

durability :: Durability -> Attribute a Source #

Optional argument for soft durability writes

data Change Source #

Constructors

Change 

Fields