úÎQSL…,      !"#$%&'()*+ Safe-Infered#Extract a field as a value of type a. If the field does not # exist or cannot be parsed as type a, fail. ,4 when the field is defined and is true. Otherwise, -.  Safe-InferedBA computation that interacts with a CouchDB database. This monad  encapsulates the ., monad, a persistent HTTP connnection to a C CouchDB database and enough information to re-open the connection  if it is closed. <Describes a connection to a CouchDB database. This type is  encapsulated by . /DSend a request to the database. If the connection is closed, it is C reopened and the request is resent. On other errors, we raise an  exception. 2Connects to the CouchDB server at localhost:5984. ?Run a CouchDB computation with an existing CouchDB connection. 9Create a CouchDB connection for use with runCouchDBWith. ECreate a CouchDB from an URI connection for use with runCouchDBWith. "Closes an open CouchDB connection /path of the request dictionary of GET parameters body of the request URI to connect  hostname port  hostname port $URI with possible login credentials 0123456789:;<=>?@A/  / 01 Safe-InferedBECreates a new database. Throws an exception if the database already  exists. CHDelete a doc by document identifier (revision number not needed). This N operation first retreives the document to get its revision number. It fails  if the document doesn' t exist or there is a conflict. D?Gets a document as a raw JSON value. Returns the document id,  revision and value as a E$. These fields are queried lazily, B and may fail later if the response from the server is malformed. FDGets a document as a Maybe String. Returns the raw result of what > couchdb returns. Returns Nothing if the doc does not exist. GLike H4, but only returns the keys. Use this for key-only . views where the value is completely ignored. BI%False if the database does not exist JKdatabase name document name document body Returns L on a conflict. Returns M with the  revision number on success. N database document and revision  new value O database  all docs error or (id,rev) C database document identifier P database document and revision Qdatabase name document body id and rev of new document Rdatabase name document name S if the  doc does not exist Ddatabase name document name S! if the document does not exist. FT database document name update function If the update succeeds,  return the revision number  of the result. Udatabase name Vdatabase name view set name views Wdatabse query parameters : |Returns a list of rows. Each row is a key, value pair. H database design view query parameters : |Returns a list of rows. Each row is a key, value pair. G database design view query parameters BIJKNOCPQRDFTUVWHGBIJKNOCPQRDFTUVWHG Safe-Infered Document name Document revision number. Database name ?Returns a safe database name. Signals an error if the name is  invalid. Returns a Rev ?Returns a safe document name. Signals an error if the name is  invalid. ECreates a new database. Throws an exception if the database already  exists. HDelete a doc by document identifier (revision number not needed). This N operation first retreives the document to get its revision number. It fails  if the document doesn' t exist or there is a conflict. %?Gets a document as a raw JSON value. Returns the document id,  revision and value as a E$. These fields are queried lazily, B and may fail later if the response from the server is malformed. +Like *4, but only returns the keys. Use this for key-only . views where the value is completely ignored. %False if the database does not exist database name document name document body Returns L on a conflict.  database document and revision  new value  database  new docs  database document identifier ! database "database name document body id and rev of new document #database name document name S if the  doc does not exist $query parameters %database name document name S! if the document does not exist. &' database document name update function If the update succeeds,  return the revision number  of the result. (database name )database name view set name views * database design view query parameters : |Returns a list of rows. Each row is a key, value pair. + database design view query parameters XYZ[\]&  !"#$%&'()*+&  "! %&#$'()*+  !"#$%&'()*+XYZ[\]^      !"#$%&'()*+,-./01231241256789:;9:<9:=9:>9:?9:@9:A9:B9:C9:D9:E9:F9:G9:H9:I9:I%*JKL+0/ !"MNOMNP#$&'(MQR,-.)STUVWXY CouchDB-1.2Database.CouchDB.JSONDatabase.CouchDBDatabase.CouchDB.HTTPDatabase.CouchDB.Unsafe jsonStringjsonInt jsonObjectjsonBool jsonField jsonIsTrue CouchMonad CouchConn runCouchDBURI runCouchDB runCouchDB'runCouchDBWithcreateCouchConncreateCouchConnFromURIcloseCouchConn CouchView ViewMapReduceViewMapDocRevDB isDBStringdbrevdoc isDocStringcreateDBdropDB getAllDBs newNamedDoc updateDocbulkUpdateDocsforceDeleteDoc deleteDocnewDocgetDoc getAllDocs getDocPrim getDocRawgetAndUpdateDoc getAllDocIdsnewView queryView queryViewKeysghc-prim GHC.TypesTrueFalseIOrequest$fMonadIOCouchMonad$fMonadCouchMonad HTTP-4000.2.3Network.HTTP.BaseHEADPUTGETPOSTDELETEOPTIONSTRACECONNECTCustom RequestMethodrspBody rspHeaders rspReasonrspCodeResponsejson-0.5Text.JSON.TypesJSObjectbase Data.EitherLeftRight Data.MaybeNothing $fReadDoc $fJSONDoc $fShowDoc $fShowRev$fJSONDB$fShowDB