Module Genarg.Register

Warning: although the following APIs use genarg_type the values must always be ExtraArg some_tag.

Parameters

module M : GenObj

Signature

val register0 : ( 'raw, 'glb, 'top ) genarg_type -> ( 'raw, 'glb, 'top ) M.obj -> unit

Register a ground type manipulation function.

val obj : ( 'raw, 'glb, 'top ) genarg_type -> ( 'raw, 'glb, 'top ) M.obj

Recover a manipulation function at a given type.

val fold_keys : ( ArgT.any -> 'acc -> 'acc ) -> 'acc -> 'acc

Fold over the registered keys.