type expr = Foo [@@deriving show { with_path = false }] let expr_of_parsetree : Parsetree.expression -> expr = function _ -> Foo let parsetree_of_expr : expr -> Parsetree.expression = let expression (pexp_desc : Parsetree.expression_desc) : Parsetree.expression = { pexp_desc; pexp_loc = Location.none; pexp_loc_stack = []; pexp_attributes = []; } in function Foo -> expression (Pexp_constant (Pconst_char '!'))