Module Cduce_core.Operators
type type_fun= Cduce_types.Types.t -> bool -> Cduce_types.Types.t
val register : string -> int -> (type_fun list -> type_fun) -> (Value.t list -> Value.t) -> unitval register_unary : string -> (type_fun -> type_fun) -> (Value.t -> Value.t) -> unitval register_binary : string -> (type_fun -> type_fun -> type_fun) -> (Value.t -> Value.t -> Value.t) -> unitval register_fun : string -> Cduce_types.Types.t -> Cduce_types.Types.t -> (Value.t -> Value.t) -> unitval register_fun2 : string -> Cduce_types.Types.t -> Cduce_types.Types.t -> Cduce_types.Types.t -> (Value.t -> Value.t -> Value.t) -> unitval register_fun3 : string -> Cduce_types.Types.t -> Cduce_types.Types.t -> Cduce_types.Types.t -> Cduce_types.Types.t -> (Value.t -> Value.t -> Value.t -> Value.t) -> unitval register_op : string -> ?expect:Cduce_types.Types.t -> (Cduce_types.Types.t -> Cduce_types.Types.t) -> (Value.t -> Value.t) -> unitval register_op2 : string -> Cduce_types.Types.t -> Cduce_types.Types.t -> Cduce_types.Types.t -> (Value.t -> Value.t -> Value.t) -> unit