i`O      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMN OPQRSTUVWXYZ OPQRSTUVWXYZ OPQRSTUVWXYZH[0Convert a BsonValue into a native Haskell type. 0Convert a native Haskell type into a BsonValue.  \]^_`abcdefghijklmnopq -Construct a BsonDoc from an associative list rUnwrap BsonDoc to be a Map ,Return the BsonValue for given key, if any. ?BSON Document: this is the top-level (but recursive) type that C all MongoDB collections work in terms of. It is a mapping between  strings ($Data.ByteString.Lazu.UTF8.ByteString) and s. % It can be constructed either from a Map (eg   myMap) or  from a associative list (eg   myAL). 5BsonValue is the type that can be used as a key in a  .  An empty BsonDoc stuvwxyz{|}~!  !    !     e!&Options that effect the behavior of a J operation. "#$'Options that control the behavior of a I operation. %&'()=This controls how many documents are returned at a time. The  cursor works by requesting  NumToReturn documents, which are then E immediately all transfered over the network; these are held locally  until the those  NumToReturn' are all consumed and then the network  will be hit again for the next  NumToReturn documents.  If the value 02 is given, the database will choose the number of  documents to return. GOtherwise choosing a good value is very dependant on the document size ' and the way the cursor is being used. *?Sets the number of documents to omit - starting from the first B document in the resulting dataset - when returning the result of  the query. +=A list of field names that limits the fields in the returned A documents. The list can contains zero or more elements, each of E which is the name of a field that should be returned. An empty list = means that no limiting is done and all fields are returned. ,A  5 representing restrictions for a query much like the  where part of an SQL query. -:The full collection name. The full collection name is the D concatenation of the database name with the collection name, using  a .6 for the concatenation. For example, for the database foo  and the collection bar, the full collection name is foo.bar. .The name of a database. /0-An Itertaor over the results of a query. Use K to get each  successive result document, or L or M to get lazy or  strict lists of results. 12%Maximum number of objects if capped. 3If , this is a capped collection. 4Desired initial size for the  collection (in bytes). must be  less than or equal to  10000000000. For capped " collections this size is the max  size of the collection. 5"A handle to a database connection 6,Estabilish a connection to a MongoDB server 7CEstabilish a connection to a MongoDB server on a non-standard port 8Close database connection 9 Alias for 8 :Drop a database. ; Return a list of collections in Database. <*Create a new collection in this database. @Normally collection creation is automatic. This function should ' only be needed if you want to specify 1s on creation.  /% is thrown if the collection already  exists. =Drop a collection. >9Return a string of validation info about the collection. &Example output (note this probably can/will change with different  versions of the server):  validate $ details: 0x7fe5cc2c1da4 ofs:e7da4 & firstExtent:0:24100 ns:test.foo.bar % lastExtent:0:24100 ns:test.foo.bar  # extents:1 0 datasize?:180 nrecords?:5 lastExtentSize:1024  padding:1  first extent: & loc:0:24100 xnext:null xprev:null  nsdiag:test.foo.bar 5 size:1024 firstRecord:0:241e4 lastRecord:0:24280  5 objects found, nobj:5  260 bytes data w/headers  180 bytes data wout/headers # deletedList: 0100100000000000000  deleted: n: 4 size: 588  nIndexes:1  test.foo.bar.$_id_ keys:5 ?"Return the number of documents in  Collection. @"Return the number of documents in  Collection matching Selector ADelete documents matching Selector from the given  Collection. B An alias for A. CInsert a single document into  Collection. D Insert a list of documents into  Collection. EAOpen a cursor to find documents. If you need full functionality,  see I F1Query, but only return the first result, if any. GAPerform a query and return the result as a lazy list. Be sure to = understand the comments about using the lazy list given for  L. H8Perform a query and return the result as a strict list. I#Open a cursor to find documents in  Collection that match  Selector). See the documentation for each argument' s type for - information about how it effects the query. JUpdate documents with BsonDoc in  Collection that match Selector. K5Return one document or Nothing if there are no more. < Automatically closes the curosr when last document is read L@Return a lazy list of all (of the rest) of the documents in the D cursor. This works much like hGetContents--it will lazily read the D cursor data out of the database as the list is used. The cursor is 9 automatically closed when the list has been fully read. AIf you manually finish the cursor before consuming off this list  you won'0t get all the original documents in the cursor.  If you don'4t consume to the end of the list, you must manually C close the cursor or you will leak the cursor, which may also leak  on the database side. M?Returns a strict list of all (of the rest) of the documents in C the cursor. This means that all of the documents will immediately 5 be read out of the database and loaded into memory. N9Manually close a cursor -- usually not needed if you use  L, M, or K. .!"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMN.56789:./1432;<=>-+*),$('&%!#"?@ACDIBJEFGH0LMNK.!#""#$('&%%&'()*+,-./0143223456789:;<=>?@ABCDEFGHIJKLMN      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~238 mongoDB-0.1Database.MongoDB.BSONDatabase.MongoDBDatabase.MongoDB.UtilfromBsontoBson BinarySubTypeBSTUserDefinedBSTMD5BSTUNDEFINED_2BSTUUID BSTByteArray BSTFunctionBSTUNDEFINED_1 toBsonDoclookupBsonDoc bdFromBsonDoc BsonValue BsonMaxKey BsonMinKey BsonInt64 BsonInt32 BsonSymbol BsonRegexBsonNullBsonDateBsonBool BsonObjectId BsonBinary BsonUndefined BsonArray BsonObject BsonString BsonDoubleempty UpdateFlagUF_Multiupdate UF_UpsertQueryOptQO_NoCursorTimeoutQO_OpLogReplay QO_SlaveOKQO_TailableCursor NumToReturn NumToSkip FieldSelectorSelector CollectionDatabaseMongoDBCollectionInvalidCursor ColCreateOptCCOMax CCOCappedCCOSize Connectionconnect connectOnPortconClose disconnect dropDatabasecollectionNamescreateCollectiondropCollectionvalidateCollectioncount countMatchingdeleteremoveinsert insertManyfindfindOne quickFind quickFind'queryupdatenextDocallDocsallDocs'finishgetCgetI8getI32getI64getSgetNullputI8putI32putI64 putNothingputNullputSBsonConvDataType Data_max_key Data_longData_timestampData_intData_code_w_scope Data_symbol Data_codeData_ref Data_regex Data_null Data_date Data_booleanData_oidData_undefined Data_binary Data_array Data_object Data_string Data_number Data_min_key BsonDocOps fromBsonDoc toDataType fromDataTypetoBinarySubTypefromBinarySubTypegetVal getInnerObj getRawObjgetDoc getDataTypeputTypeputValputObj putOutterObj putDataTypeunsupportedErrorReply rRespFlags rCursorIDHdrhMsgLenhRespTohOp RequestIDMongoDBOperationFailureMongoDBInternalErrorOpcodeOP_KILL_CURSORS OP_DELETE OP_GET_MOREOP_QUERY OP_GET_BY_OID OP_INSERT OP_UPDATEOP_MSGOP_REPLYcurConcurID curNumToRetcurCol curDocBytes curClosedghc-primGHC.BoolTruecHandlecRandcolCreateOptToBson dbFromCol colMinusDBdbCmdmongoDBInternalErrormongoDBCollectionInvalidthrowColInvalidmongoDBOperationFailurethrowOpFailure fromOpcodetoOpcode fromQueryOptsfromUpdateFlags getHeadergetReply getFirstDocgetMoreputColpackMsgrandNum