Middle.Mem_patternThis type represents whether or not an autodiff type can be represented as an Array of Structs (AoS) or as a Struct of Arrays. This applies to matrices, vectors, row vectors, and arrays of those types.
In the C++ this allows us to swap out matrix types from an Eigen::Matrix<stan::math::var_value<double>, Rows, Cols> to an stan::math::var_value<Eigen::Matrix<double, Rows, Cols>>.
val fold : 'a -> t -> 'aval t_of_sexp : Sexplib0.Sexp.t -> tval sexp_of_t : t -> Sexplib0.Sexp.tval hash_fold_t :
Ppx_hash_lib.Std.Hash.state ->
t ->
Ppx_hash_lib.Std.Hash.stateval hash : t -> Ppx_hash_lib.Std.Hash.hash_valueval pp : Stdlib.Format.formatter -> t -> unit