exception EncodeError({obj: Obj.t, reason: string})
exception DecodeError({
doc: BSON.t,
key: string,
value: option<Obj.t>,
reason: string,
exc: option<Printexc.t>,
})
this is how i use it. it’s a convenient way of say “some object/value” which is ok for debugging/errors. I don’t want to use JSON.t because JSON.t definitely isn’t “any object”