Decoding DBObjects 

all decode operations in the-bson produce DecodeResult, defined as

// \/ and NonEmptyList come from scalaz
type DecodeResult[+A] = \/[NonEmptyList[DecodeError], A]

if any decode operation fails, all the errors involved will be reported.


DecodeError has fixed set of subtypes: