sig
val layout_type : 'a Record.layout -> 'a Record.t Record.Type.t
val declare0 : name:string -> 's Record.layout
val declare1 :
name:string ->
f1_name:string ->
f1_type:'a Record.Type.t -> 's Record.layout * ('a, 's) Record.Field.t
val declare2 :
name:string ->
f1_name:string ->
f1_type:'a1 Record.Type.t ->
f2_name:string ->
f2_type:'a2 Record.Type.t ->
's Record.layout * ('a1, 's) Record.Field.t * ('a2, 's) Record.Field.t
val declare3 :
name:string ->
f1_name:string ->
f1_type:'a1 Record.Type.t ->
f2_name:string ->
f2_type:'a2 Record.Type.t ->
f3_name:string ->
f3_type:'a3 Record.Type.t ->
's Record.layout * ('a1, 's) Record.Field.t * ('a2, 's) Record.Field.t *
('a3, 's) Record.Field.t
val declare4 :
name:string ->
f1_name:string ->
f1_type:'a1 Record.Type.t ->
f2_name:string ->
f2_type:'a2 Record.Type.t ->
f3_name:string ->
f3_type:'a3 Record.Type.t ->
f4_name:string ->
f4_type:'a4 Record.Type.t ->
's Record.layout * ('a1, 's) Record.Field.t * ('a2, 's) Record.Field.t *
('a3, 's) Record.Field.t * ('a4, 's) Record.Field.t
end