sig
type class_signature = {
formal_type_parameters : Signature.formal_type_parameter list;
super_class_signature : Signature.class_type_signature;
super_interface_signatures : Signature.class_type_signature list;
}
and formal_type_parameter = {
identifier : Utils.UTF8.t;
class_bound : Signature.field_type_signature;
interface_bounds : Signature.field_type_signature list;
}
and field_type_signature =
Class_type_signature of Signature.class_type_signature
| Array_type_signature of Signature.array_type_signature
| Type_variable_signature of Signature.type_variable_signature
and class_type_signature = {
qualified_class_name : Name.for_class;
type_arguments : Signature.type_argument list;
signature_suffix : Signature.class_type_signature_suffix list;
}
and array_type_signature = Signature.type_signature
and type_signature =
Field_type_signature of Signature.field_type_signature
| Base_type of Descriptor.java_type
and type_variable_signature = Utils.UTF8.t
and type_argument =
Star
| Plus of Signature.field_type_signature
| Minus of Signature.field_type_signature
| Simple of Signature.field_type_signature
and class_type_signature_suffix = {
suffix_identifier : Utils.UTF8.t;
suffix_type_arguments : Signature.type_argument list;
}
and method_signature = {
formal_type_params : Signature.formal_type_parameter list;
types : Signature.type_signature list;
return : Signature.type_signature;
throws_signatures : Signature.throws_signature list;
}
and throws_signature =
Throws_class_type_signature of Signature.class_type_signature
| Throws_type_variable_signature of Signature.type_variable_signature
val equal_class_signature :
Signature.class_signature -> Signature.class_signature -> bool
val equal_formal_type_parameter :
Signature.formal_type_parameter ->
Signature.formal_type_parameter -> bool
val equal_field_type_signature :
Signature.field_type_signature -> Signature.field_type_signature -> bool
val equal_class_type_signature :
Signature.class_type_signature -> Signature.class_type_signature -> bool
val equal_array_type_signature :
Signature.array_type_signature -> Signature.array_type_signature -> bool
val equal_type_signature :
Signature.type_signature -> Signature.type_signature -> bool
val equal_type_variable_signature :
Signature.type_variable_signature ->
Signature.type_variable_signature -> bool
val equal_type_argument :
Signature.type_argument -> Signature.type_argument -> bool
val equal_class_type_signature_suffix :
Signature.class_type_signature_suffix ->
Signature.class_type_signature_suffix -> bool
val equal_method_signature :
Signature.method_signature -> Signature.method_signature -> bool
val equal_throws_signature :
Signature.throws_signature -> Signature.throws_signature -> bool
val compare_class_signature :
Signature.class_signature -> Signature.class_signature -> int
val compare_formal_type_parameter :
Signature.formal_type_parameter -> Signature.formal_type_parameter -> int
val compare_field_type_signature :
Signature.field_type_signature -> Signature.field_type_signature -> int
val compare_class_type_signature :
Signature.class_type_signature -> Signature.class_type_signature -> int
val compare_array_type_signature :
Signature.array_type_signature -> Signature.array_type_signature -> int
val compare_type_signature :
Signature.type_signature -> Signature.type_signature -> int
val compare_type_variable_signature :
Signature.type_variable_signature ->
Signature.type_variable_signature -> int
val compare_type_argument :
Signature.type_argument -> Signature.type_argument -> int
val compare_class_type_signature_suffix :
Signature.class_type_signature_suffix ->
Signature.class_type_signature_suffix -> int
val compare_method_signature :
Signature.method_signature -> Signature.method_signature -> int
val compare_throws_signature :
Signature.throws_signature -> Signature.throws_signature -> int
val hash_class_signature : Signature.class_signature -> int
val hash_formal_type_parameter : Signature.formal_type_parameter -> int
val hash_field_type_signature : Signature.field_type_signature -> int
val hash_class_type_signature : Signature.class_type_signature -> int
val hash_array_type_signature : Signature.array_type_signature -> int
val hash_type_signature : Signature.type_signature -> int
val hash_type_variable_signature : Signature.type_variable_signature -> int
val hash_type_argument : Signature.type_argument -> int
val hash_class_type_signature_suffix :
Signature.class_type_signature_suffix -> int
val hash_method_signature : Signature.method_signature -> int
val hash_throws_signature : Signature.throws_signature -> int
type error =
Invalid_signature_type_header of Utils.UChar.t
| Invalid_signature_primitive_character of Utils.UChar.t
| Invalid_signature_type of Descriptor.java_type
| Invalid_class_signature of Utils.UTF8.t
| Invalid_field_signature of Utils.UTF8.t
| Invalid_method_signature of Utils.UTF8.t
| Extra_elements_after_class_signature of Utils.UTF8.t
| Extra_elements_after_field_signature of Utils.UTF8.t
| Extra_elements_after_method_signature of Utils.UTF8.t
exception Exception of Signature.error
val string_of_error : Signature.error -> string
val class_signature_of_utf8 : Utils.UTF8.t -> Signature.class_signature
val utf8_of_class_signature : Signature.class_signature -> Utils.UTF8.t
val field_type_signature_of_utf8 :
Utils.UTF8.t -> Signature.field_type_signature
val utf8_of_field_type_signature :
Signature.field_type_signature -> Utils.UTF8.t
val method_signature_of_utf8 : Utils.UTF8.t -> Signature.method_signature
val utf8_of_method_signature : Signature.method_signature -> Utils.UTF8.t
end