# Module Std_internal

    module Std_internal: sig .. end

type-safe runtime type introspection

    module Typerep: sig .. end

runtime type representations

    val typerep_of_int : int Typerep.t

    val typerep_of_int32 : int32 Typerep.t

    val typerep_of_int64 : int64 Typerep.t

    val typerep_of_nativeint : nativeint Typerep.t

    val typerep_of_char : char Typerep.t

    val typerep_of_float : float Typerep.t

    val typerep_of_string : string Typerep.t

    val typerep_of_bool : bool Typerep.t

    val typerep_of_unit : unit Typerep.t

    type tuple0

    val value_tuple0 : tuple0

    val typerep_of_option : 'a Typerep.t -> 'a option Typerep.t

    val typerep_of_list : 'a Typerep.t -> 'a list Typerep.t

    val typerep_of_array : 'a Typerep.t -> 'a array Typerep.t

    val typerep_of_lazy_t : 'a Typerep.t -> 'a lazy_t Typerep.t

    val typerep_of_ref : 'a Typerep.t -> 'a Pervasives.ref Typerep.t

    val typerep_of_function : 'a Typerep.t ->
           'b Typerep.t -> ('a -> 'b) Typerep.t

    val typerep_of_tuple0 : tuple0 Typerep.t

    val typerep_of_tuple2 : 'a Typerep.t ->
           'b Typerep.t -> ('a * 'b) Typerep.t

    val typerep_of_tuple3 : 'a Typerep.t ->
           'b Typerep.t ->
           'c Typerep.t -> ('a * 'b * 'c) Typerep.t

    val typerep_of_tuple4 : 'a Typerep.t ->
           'b Typerep.t ->
           'c Typerep.t ->
           'd Typerep.t -> ('a * 'b * 'c * 'd) Typerep.t

    val typerep_of_tuple5 : 'a Typerep.t ->
           'b Typerep.t ->
           'c Typerep.t ->
           'd Typerep.t ->
           'e Typerep.t -> ('a * 'b * 'c * 'd * 'e) Typerep.t

    val typename_of_int : int Typename.t

    val typename_of_int32 : int32 Typename.t

    val typename_of_int64 : int64 Typename.t

    val typename_of_nativeint : nativeint Typename.t

    val typename_of_char : char Typename.t

    val typename_of_float : float Typename.t

    val typename_of_string : string Typename.t

    val typename_of_bool : bool Typename.t

    val typename_of_unit : unit Typename.t

    val typename_of_option : 'a Typename.t -> 'a option Typename.t

    val typename_of_list : 'a Typename.t -> 'a list Typename.t

    val typename_of_array : 'a Typename.t -> 'a array Typename.t

    val typename_of_lazy_t : 'a Typename.t -> 'a lazy_t Typename.t

    val typename_of_ref : 'a Typename.t -> 'a Pervasives.ref Typename.t

    val typename_of_function : 'a Typename.t -> 'b Typename.t -> ('a -> 'b) Typename.t

    val typename_of_tuple0 : tuple0 Typename.t

    val typename_of_tuple2 : 'a Typename.t -> 'b Typename.t -> ('a * 'b) Typename.t

    val typename_of_tuple3 : 'a Typename.t -> 'b Typename.t -> 'c Typename.t -> ('a * 'b * 'c) Typename.t

    val typename_of_tuple4 : 'a Typename.t ->
           'b Typename.t ->
           'c Typename.t -> 'd Typename.t -> ('a * 'b * 'c * 'd) Typename.t

    val typename_of_tuple5 : 'a Typename.t ->
           'b Typename.t ->
           'c Typename.t ->
           'd Typename.t -> 'e Typename.t -> ('a * 'b * 'c * 'd * 'e) Typename.t