Coq_checklib.ValuesSourcetype value = | AnyA value that we won't check,
*)| Fail of stringA value that shouldn't be there at all,
*)| Tuple of string * value arrayA debug name and sub-values in this block
*)| Sum of string * int * value array arrayA debug name, a number of constant constructors, and sub-values at each position of each possible constructed variant
*)| Array of value| List of value| Opt of value| Int| StringBuiltin Ocaml types.
*)| Annot of string * valueAdds a debug note to the inner value
*)| DynCoq's Dyn.t
*)| Proxy of value refSame as the inner value, used to define recursive types
*)| Int64| Float64NB: List and Opt have their own constructors to make it easy to define eg let rec foo = List foo.