- data BsonValue
- = BsonDouble Double
- | BsonString ByteString
- | BsonObject BsonDoc
- | BsonArray [BsonValue]
- | BsonUndefined
- | BsonBinary BinarySubType ByteString
- | BsonObjectId ByteString
- | BsonBool !Bool
- | BsonDate POSIXTime
- | BsonNull
- | BsonRegex ByteString String
- | BsonSymbol ByteString
- | BsonInt32 Int32
- | BsonInt64 Int64
- | BsonMinKey
- | BsonMaxKey
- type BsonDoc = Map ByteString BsonValue
- data BinarySubType
- = BSTUNDEFINED1
- | BSTFunction
- | BSTByteArray
- | BSTUUID
- | BSTUNDEFINED2
- | BSTMD5
- | BSTUserDefined
- empty :: BsonDoc
- lookup :: BsonDocOps a => a -> BsonDoc -> Maybe BsonValue
- fromBson :: (BsonConv a b, Convertible a b) => a -> b
- toBson :: (BsonConv a b, Convertible b a) => b -> a
- fromBsonDoc :: BsonDocOps a => BsonDoc -> [(a, BsonValue)]
- toBsonDoc :: BsonDocOps a => [(a, BsonValue)] -> BsonDoc
- getBsonDoc :: Get BsonDoc
- putBsonDoc :: BsonDoc -> Put
Types
BsonValue is the type that can be used as a key in a BsonDoc
.
type BsonDoc = Map ByteString BsonValueSource
data BinarySubType Source
BsonDoc Operations
lookup :: BsonDocOps a => a -> BsonDoc -> Maybe BsonValueSource
Return the BsonValue for given key, if any.
Type Conversion
fromBson :: (BsonConv a b, Convertible a b) => a -> bSource
Convert a BsonValue into a native Haskell type.
toBson :: (BsonConv a b, Convertible b a) => b -> aSource
Convert a native Haskell type into a BsonValue.
fromBsonDoc :: BsonDocOps a => BsonDoc -> [(a, BsonValue)]Source
Unwrap BsonDoc to be a Map
toBsonDoc :: BsonDocOps a => [(a, BsonValue)] -> BsonDocSource
Construct a BsonDoc from an associative list
Binary encoding/decoding
putBsonDoc :: BsonDoc -> PutSource