Module Middle.Transformation

Transformations (constraints) for global variable declarations

type 'e t =
  1. | Identity
  2. | Lower of 'e
  3. | Upper of 'e
  4. | LowerUpper of 'e * 'e
  5. | Offset of 'e
  6. | Multiplier of 'e
  7. | OffsetMultiplier of 'e * 'e
  8. | Ordered
  9. | PositiveOrdered
  10. | Simplex
  11. | UnitVector
  12. | SumToZero
  13. | CholeskyCorr
  14. | CholeskyCov
  15. | Correlation
  16. | Covariance
  17. | StochasticRow
  18. | StochasticColumn
  19. | TupleTransformation of 'e t list

Types of transformations. Polymorphic type is filled in with an expression fixed-point, e.g. Frontend.Ast.typed_expression

val map : ('a -> 'b) -> 'a t -> 'b t
val fold : ('a -> 'b -> 'a) -> 'a -> 'b t -> 'a
val t_of_sexp : 'e. (Sexplib0.Sexp.t -> 'e) -> Sexplib0.Sexp.t -> 'e t
val sexp_of_t : 'e. ('e -> Sexplib0.Sexp.t) -> 'e t -> Sexplib0.Sexp.t
val compare : 'e. ('e -> 'e -> Core__.Import.int) -> 'e t -> 'e t -> Core__.Import.int
val hash_fold_t : 'e. (Ppx_hash_lib.Std.Hash.state -> 'e -> Ppx_hash_lib.Std.Hash.state) -> Ppx_hash_lib.Std.Hash.state -> 'e t -> Ppx_hash_lib.Std.Hash.state
val has_check : 'a t -> bool