Index of values


(++) [Utils]
Concatenation of UTF8 strings.
(++) [UTF8Impl]
Concatenation of UTF8 strings.

A
add [LdcConstraint]
add c s adds the constraint c to the set s.
add [InvertibleArray.S]
add [ExtendableArray]
add e a x z addit extends array a by an element set to x.
add [Bootstrap]
add m ms augments m with ms.
add_array_class [ConstantPool]
add_array_class pool array_type augments pool with array type whose descriptor is array_type.
add_array_method [ConstantPool]
add_array_method pool array_type method_name method_type augments pool with array method method_name of type method_type in array type array_type.
add_char [UTF8BufferImpl]
add_char b c appends char c to buffer b.
add_class [ConstantPool]
add_class pool class_name augments pool with class whose name is class_name.
add_class [ClassLoader]
add_class cl cd adds the class cd to the class loader cl.
add_double [ConstantPool]
add_double pool d augments pool with double d.
add_edge [Graph]
Adds an edge to the passed builder.
add_edge [ControlFlow]
add_edge g v e l returns a graph that is g augmented with a new edge e from v labeled with l.
add_edge_type [Graph]
add_type n t b adds the information that properties with name n have type t to builder b.
add_endline [UTF8BufferImpl]
add_char b s appends string s to buffer b, and then also appends and end-of-line character.
add_entries_from_archive [ArchiveBuilder]
add_entries_from_archive ab ~prefix file adds to archive builder ab all the entries from the archive file, prefixing paths with prefix (defaulting to "").
add_entries_from_archives [ArchiveBuilder]
add_entries_from_archives ab ~prefix files adds to archive builder ab all the entries from thes archives files, prefixing paths with prefix (defaulting to "").
add_entries_from_zip [ArchiveBuilder]
add_entries_from_zip ab ~prefix zip adds to archive builder ab all the entries from the archive zip, prefixing paths with prefix (defaulting to "").
add_entry [ArchiveBuilder]
add_entry ab ~prefix data name adds an entry with path name prefixed by prefix (defaulting to "") and contents data to archive builder ab.
add_entry_from_class [ArchiveBuilder]
add_entry_from_class ab ~prefix cd adds an entry with path and contents based on the information from class definition cd, prefixing class name by by prefix (defaulting to ""), to archive builder ab.
add_entry_from_file [ArchiveBuilder]
add_entry_from_file ab ~prefix file name adds an entry with path name prefixed by prefix (defaulting to "") and contents read from file to archive builder ab.
add_field [ConstantPool]
add_field pool class_name field_name field_type augments pool with field field_name of type field_type in class class_name.
add_float [ConstantPool]
add_float pool f augments pool with float f.
add_handler [ControlFlow]
add_handler g src cn dst lbl returns a graph that is g augmented with a handler from src to dst for exception cn labeled with lbl.
add_if_not_found [InvertibleArray.S]
add_if_not_found [ExtendableArray]
add_if_not_found e p a x z add returns the lowest index i of a such that p (get a i) is true.
add_integer [ConstantPool]
add_integer pool i augments pool with integer i.
add_interface_method [ConstantPool]
add_interface_method pool interface_name method_name method_type augments pool with interface method method_name of type method_type in interface interface_name.
add_invoke_dynamic [ConstantPool]
add_invoke_dynamic pool index method_name method_type augments pool with invoke dynamic with index into BootstrapMethods attributes, method method_name of type method_type.
add_long [ConstantPool]
add_long pool l augments pool with long l.
add_manifest [ArchiveBuilder]
add_manifest ab m adds an entry based on the passed manifest m to archive builder ab.
add_method [ConstantPool]
add_method pool class_name method_name method_type augments pool with method method_name of type method_type in class class_name.
add_method_handle [ConstantPool]
add_method_handle pool reference augments pool with an handle to reference.
add_method_specifier [Bootstrap]
add_method_specifier m ms augments m with ms.
add_method_type [ConstantPool]
add_method_type pool method_type augments pool with method type method_type.
add_module [ClassLoader]
add_module cl md adds the module md to the class loader cl.
add_moduleid [ConstantPool]
add_moduleid pool n v augments pool with name n and version v.
add_name_and_type [ConstantPool]
add_name_and_type pool n t augments pool with mane n and type t.
add_package [ClassLoader]
add_package cl pd adds the package pd to the class loader cl.
add_string [UTF8BufferImpl]
add_char b s appends string s to buffer b.
add_string [ConstantPool]
add_string pool s augments pool with string s.
add_utf8 [ConstantPool]
add_utf8 pool s augments pool with constant s.
add_vertex [Graph]
Adds a vertex to the passed builder.
add_vertex [ControlFlow]
add_vertex g instrs lbl returns a couple g', v where g' is g augmented with a new vertex v labeled with instrs and lbl.
add_vertice_type [Graph]
add_type n t b adds the information that properties with name n have type t to builder b.
all [Version]
The list of versions, in ascending order.
all_formats [Graph]
The list of all output formats.
all_rules [Peephole]
The list of all predefined rewriting rules, that is (in order): optimize_constants;, optimize_locals;, remove_nops_and_unused_pushed_values;, optimize_iinc;, remove_load_store;, remove_get_put;, rewrite_store_store;, rewrite_store_load;, rewrite_load_load;, constant_on_the_top;, remove_neutral_elements;, rewrite_absorbing_elements;, apply_stength_reduction;, remove_identity.
append [ClassPath]
append p cp returns a class path that is cp plus p added at its end.
apply_stength_reduction [Peephole]
Predefined rules to apply stength reduction.
arguments [Command.T]
The kind of waited arguments, if any.
array_compare [Utils]
Comparison over arrays, cmp (defaulting to Pervasives.compare) being the comparison function over array elements.
array_equal [Utils]
Equality over arrays, eq (defaulting to (=)) being the predicate used to compare array elements.
array_hash [Utils]
Hash over arrays, h (defaulting to Hashtbl.hash) being the hash function over array elements.
assemble [Assembler]
Assembles the file whose source input channel is passed, returning the name of the compiled class.
at_character [Consts]
at_least [Version]
at_least f v x raises Exception if x is below v.
at_most [Version]
at_most f v x raises Exception if x is above v.
attr_all [Consts]
attr_annotation_default [Consts]
attr_bootstrap_methods [Consts]
attr_code [Consts]
attr_constant_value [Consts]
attr_deprecated [Consts]
attr_enclosing_method [Consts]
attr_exceptions [Consts]
attr_inner_classes [Consts]
attr_line_number_table [Consts]
attr_local_variable_table [Consts]
attr_local_variable_type_table [Consts]
attr_module [Consts]
attr_module_permits [Consts]
attr_module_provides [Consts]
attr_module_requires [Consts]
attr_runtime_invisible_annotations [Consts]
attr_runtime_invisible_parameter_annotations [Consts]
attr_runtime_invisible_type_annotations [Consts]
attr_runtime_visible_annotations [Consts]
attr_runtime_visible_parameter_annotations [Consts]
attr_runtime_visible_type_annotations [Consts]
attr_signature [Consts]
attr_source_debug_extension [Consts]
attr_source_file [Consts]
attr_stack_map_table [Consts]
attr_synthetic [Consts]
avoid_conv [Peephole]
Predefined rules to avoid simple conversions.

B
back_slash [Consts]
build_args [Command]
build_args cmd args returns args with overloaded "-help" and "--help" switches for command cmd.
bytes_of_modified [UTF8Impl]
Conversion from modified UTF8 string into bytes.

C
capacity [InvertibleArray.S]
capacity [ExtendableArray]
Returns the capacity of the passed array.
capital_b [Consts]
capital_c [Consts]
capital_d [Consts]
capital_f [Consts]
capital_i [Consts]
capital_j [Consts]
capital_l [Consts]
capital_s [Consts]
capital_t [Consts]
capital_v [Consts]
capital_z [Consts]
change_root [ControlFlow]
Changes the root of the passed graph to the passed vertex.
check [Version]
check b v checks that version v is in bounds b, raising Exception if not.
check [ConstantPool]
Checks the passed pool for consistency.
check_class_attributes [Attribute]
Checks that the passed list is a valid one for a class.
check_class_flags [AccessFlag]
Acts as the identity function if the passed flags form a valid flag set for a class, raises Exception otherwise.
check_code_attributes [Attribute]
Checks that the passed list is a valid one for a code attribute.
check_constructor_flags [AccessFlag]
Acts as the identity function if the passed flags form a valid flag set for a constructor, raises Exception otherwise.
check_entry_for_kind [ConstantPool]
check_entry_for_kind pool index tag tests whether the entry at index is of the kind designated by tag.
check_field_attributes [Attribute]
Checks that the passed list is a valid one for a field.
check_field_flags [AccessFlag]
Acts as the identity function if the passed flags form a valid flag set for a field, raises Exception otherwise.
check_initializer_flags [AccessFlag]
Acts as the identity function if the passed flags form a valid flag set for an initializer, raises Exception otherwise.
check_inner_class_flags [AccessFlag]
Acts as the identity function if the passed flags form a valid flag set for an inner class, raises Exception otherwise.
check_method_attributes [Attribute]
Checks that the passed list is a valid one for a method.
check_method_flags [AccessFlag]
Acts as the identity function if the passed flags form a valid flag set for a method, raises Exception otherwise.
check_module_attributes [Attribute]
Checks that the passed list is a valid one for a module.
check_module_flags [AccessFlag]
Acts as the identity function if the passed flags form a valid flag set for a module, raises Exception otherwise.
check_package_attributes [Attribute]
Checks that the passed list is a valid one for a package.
check_package_flags [AccessFlag]
Acts as the identity function if the passed flags form a valid flag set for a package, raises Exception otherwise.
check_version [ConstantPool]
check_version v pool checks that pool conforms to version v, raising Version.Exception if not.
circonflex [Consts]
class_annotation_of_descriptor [Serialization]
Returns the annotations of the passed descriptor.
class_constructor [Consts]
class_initializer [Consts]
class_name_of_descriptor [Serialization]
Returns the class name of the passed descriptor.
class_signature_of_utf8 [Signature]
Converts a string (as used in class file) into the corresponding signature.
close [UTF8LineWriterImpl]
Closes the passed writer.
close [UTF8LineReaderImpl]
Closes the passed reader.
close [OutputStream]
Closes the passed stream, any subsequent write will fail raising an exception.
close [InputStream]
Closes the passed stream, any subsequent read will fail raising an exception indicating that end of stream has been reached.
close [ClassPath]
Closes all underlying archives, subsequent tries to read from such archives will hence fail.
close [ArchiveBuilder]
Closes the passed archive builder.
close_noerr [UTF8LineWriterImpl]
Closes the passed writer, errors being silently discarded.
close_noerr [UTF8LineReaderImpl]
Closes the passed reader, errors being silently discarded.
close_noerr [OutputStream]
Same as close but raised exceptions are silently discarded.
close_noerr [InputStream]
Same as close but raised exceptions are silently discarded.
close_noerr [ArchiveBuilder]
Same as close, except that no exception if raised.
closing_parenthesis [Consts]
closing_square_bracket [Consts]
colon [Consts]
comma [Consts]
commands [Predefined]
The list of predefined commands (module signatures in src/commands).
compare [Version]
Comparison over versions.
compare [UTF8Impl]
Comparison over UTF8 strings.
compare [UCharImpl]
Comparison over Unicode characters.
compare [Reference]
Comparison over references.
compare [PackageDefinition]
Comparison over packages.
compare [ModuleDefinition]
Comparison over modules.
compare [Method]
Comparison over methods.
compare [LdcConstraint]
Comparison over constraints.
compare [InvertibleArray.HashableComparableType]
compare [InvertibleArray.S]
compare [Instruction]
Comparison over instructions.
compare [Field]
Comparison over fields.
compare [ExtendableArray]
Comparison over extendable arrays.
compare [ConstantPool]
Comparison over pools.
compare [ClassPath]
Comparison over class paths.
compare [ClassDefinition]
Comparison over modules.
compare [Attribute]
Comparison over attributes.
compare [Annotation]
Comparison over annotations.
compare [AccessFlag]
Comparison over flags.
compare_according_to_significance [Attribute]
Comparison over attributes, to be used for user-intended output.
compare_according_to_visibility [Method]
Comparison over methods, to be used to compare for user-intended output.
compare_according_to_visibility [Field]
Comparison over fields, to be used to compare for user-intended output.
compare_according_to_visibility [AccessFlag]
Comparison over flags.
compare_array_type_signature [Signature]
Comparison over array type signatures.
compare_class_initializer [Method]
Comparison over class initializers.
compare_class_signature [Signature]
Comparison over class signatures.
compare_class_type_signature [Signature]
Comparison over class type signatures.
compare_class_type_signature_suffix [Signature]
Comparison over class type signature suffixes.
compare_code_attribute [Attribute]
Comparison over code attributes.
compare_code_value [Attribute]
Comparison over code values.
compare_constant_value [Attribute]
Comparison over constant values.
compare_constructor [Method]
Comparison over constructors.
compare_element [ConstantPool]
Comparison over pool elements.
compare_element_value [Annotation]
Comparison over element values.
compare_enclosing_method_value [Attribute]
Comparison over enclosing method values.
compare_exception_table_element [Attribute]
Comparison over exception table elements.
compare_extended [Annotation]
Comparison over extended annotations.
compare_field_type_signature [Signature]
Comparison over field type signatures.
compare_for_class [Name]
compare_for_constructor [Reference]
Comparison over constructors.
compare_for_field [Reference]
Comparison over field.
compare_for_field [Name]
compare_for_field [Descriptor]
compare_for_method [Reference]
Comparison over methods.
compare_for_method [Name]
compare_for_method [Descriptor]
Comparison over method descriptors.
compare_for_module [Name]
compare_for_package [Name]
compare_for_parameter [Descriptor]
compare_formal_type_parameter [Signature]
Comparison over formal type parameters.
compare_inner_class_element [Attribute]
Comparison over inner class elements.
compare_java_type [Descriptor]
compare_local_variable_table_element [Attribute]
Comparison over local variable table elements.
compare_local_variable_type_table_element [Attribute]
Comparison over local variable type table elements.
compare_method_argument [Bootstrap]
Comparison over method arguments.
compare_method_handle [Bootstrap]
Comparison over method handles.
compare_method_signature [Signature]
Comparison over method signatures.
compare_method_specifier [Bootstrap]
Comparison over method specifiers.
compare_regular [Method]
Comparison over regular methods.
compare_signature [Attribute]
Comparison over signatures.
compare_stack_map_frame [Attribute]
Comparison over stack map frames.
compare_throws_signature [Signature]
Comparison over throws signature.
compare_type_argument [Signature]
Comparison over type arguments.
compare_type_signature [Signature]
Comparison over type signatures.
compare_type_variable_signature [Signature]
Comparison over type variable signatures.
compare_verification_type_info [Attribute]
Comparison over verification type informations.
compile [Instruction]
compile ofs wide mnemo params param_tail compiles instruction whose mnemonic is mnemo, params and param_tail being parameters while wide indicates whether the wide version of the instruction should be compiled.
compose_list [Utils]
compose_list [f1; f2; ...; fn] x returns f1 (f2 ... (fn x)).
compute_stack_infos [Code]
compute_stack_infos cn u g s returns max_stack, max_locals, stack_map_frame for the method whose control flow graph g,initial stack state s, and enclosing class cn are passed.
concat [UTF8Impl]
concat l returns the concatenation of all strings in l.
concat_sep [UTF8Impl]
concat_sep sep l returns the concatenation of all strings in l, separator sep being inserted between two strings.
concat_sep_map [UTF8Impl]
concat_sep_map sep f l returns the concatenation of all strings in l', separator sep being inserted between two strings.
constant_on_the_top [Peephole]
Predefined rules to move constants on the top.
contains [UTF8Impl]
contains c s returns true iff string s contains a character equal to c.
contains_vertex [ControlFlow]
Checks whether the passed graph contains the passed vertex.
contents [UTF8BufferImpl]
contents b returns the contents of buffer b as an UTF8 string.

D
decode [Serialization]
decode is returns the list of values read from is.
decode [PackageDefinition]
Converts from a ClassFile.t into a package definition.
decode [ModuleDefinition]
Converts from a ClassFile.t into a module definition.
decode [Method]
Converts from a low-level into a high-level form according to passed pool, and bootstrap method information.
decode [Instruction]
decode bsm cpool i decodes instruction i using constant pool cpool, and bootstrap information bsm.
decode [Field]
Converts from a low-level into a high-level form according to passed pool.
decode [ClassDefinition]
Converts from a ClassFile.t into a class definition.
decode [Attribute]
Converts from a low-level into a high-level form according to passed pool, and method bootstrap information.
decode [Annotation]
Converts from a low-level into a high-level form according to passed pool.
decode_element_value [Annotation]
Converts from a low-level into a high-level form according to passed pool.
decode_extended [Annotation]
Converts from a low-level into a high-level form according to passed pool.
decompile [Instruction]
decompile ofs i decompiles instruction i at offset ofs.
default [Version]
The default version used by the library (currently Java_1_7).
default [Manifest]
Default manifest, with minimal information.
default_separator [ClassPath]
Default separator between classpath elements.
default_size [UTF8BufferImpl]
The size of buffers created through make.
description [Command.T]
The short description used for command-line help.
descriptor_of_definition [Serialization]
descriptor_of_definition loader definition constructs a new descriptor for the class whose definition is passed, loader being used to construct descriptors for parent classes.
digits [Consts]
disassemble [Disassembler]
disassemble cp cn disassembles the class whose name is cn in classpath cp.
disassemble_to_buffer [Disassembler]
disassemble_to_buffer buff cp cn disassembles the class whose name is cn in classpath cp.
disassemble_to_stream [Disassembler]
disassemble_to_stream chan cp cn disassembles the class whose name is cn in classpath cp.
dollar [Consts]
dot [Consts]
dummy_element [ConstantPool]
Element used for 0-index entry as well as for unused long or double entries.
dummy_mapper [ControlFlow]
A line mapper always returning 0.
dump [XML]
Dumps the XML document to the passed buffer.
dump [Graph]
dump fmt g buf dumps the data of graph g to buffer buf, using format fmt.

E
edge_of_vertex [ControlFlow]
Returns the edge for the passed vertex in the passed graph, as well as the label associated with this edge.
empty [StackState]
Returns an empty stack.
empty_bounds [Version]
Checks whether the passed bounds consists in an empty interval.
empty_utf8 [Consts]
encode [StackState]
Encodes the passed list of (offset, state) couples into attribute values.
encode [Serialization]
encode os l writes the values from l onto os.
encode [PackageDefinition]
Converts a package definition into to a ClassFile.t, using the passed version.
encode [ModuleDefinition]
Converts a module definition into to a ClassFile.t, using the passed version.
encode [Method]
Converts from a high-level into a low-level form, using passed extendable pool, and bootstrap method information.
encode [LdcConstraint]
encode s transforms the constraint set s into a constant pool that can be later used to encode methods imposing the constraints in s.
encode [Instruction]
encode bsm cpool i encodes instruction i using constant pool cpool, and bootstrap information bsm.
encode [Field]
Converts from a high-level into a low-level form, using passed extendable pool.
encode [ClassDefinition]
Converts a class definition into to a ClassFile.t, using the passed version.
encode [Attribute]
Converts from a high-level into a low-level form, using passed pool.
encode [Annotation]
Converts from a high-level into a low-level form, using passed extendable pool.
encode_element_value [Annotation]
Converts from a high-level into a low-level form, using passed extendable pool.
encode_extended [Annotation]
Converts from a high-level into a low-level form, using passed extendable pool.
encode_one [Serialization]
encode_one os x is a shorthand for encode os [x].
equal [Version]
Equality over versions.
equal [UTF8Impl]
Equality over UTF8 strings.
equal [UCharImpl]
Equality over Unicode characters.
equal [StackState]
Equality over stack states.
equal [Reference]
Equality over references.
equal [PackageDefinition]
Equality over packages.
equal [ModuleDefinition]
Equality over modules.
equal [Method]
Equality over methods.
equal [Lexer]
Equality over token values.
equal [LdcConstraint]
Equality over constraints.
equal [InvertibleArray.HashableComparableType]
equal [InvertibleArray.S]
equal [Instruction]
Equality over instructions.
equal [Field]
Equality over fields.
equal [ExtendableArray]
Equality over extendable arrays.
equal [ConstantPool]
Equality over pools.
equal [ClassPath]
Equality over class paths.
equal [ClassDefinition]
Equality over modules.
equal [Attribute]
Equality over attributes.
equal [Annotation]
Equality over annotations.
equal [AccessFlag]
Equality over flags.
equal_array_type_signature [Signature]
Equality over array type signatures.
equal_class_initializer [Method]
Equality over class initializers.
equal_class_signature [Signature]
Equality over class signatures.
equal_class_type_signature [Signature]
Equality over class type signatures.
equal_class_type_signature_suffix [Signature]
Equality over class type signature suffixes.
equal_code_attribute [Attribute]
Equality over code attributes.
equal_code_value [Attribute]
Equality over code values.
equal_constant_value [Attribute]
Equality over constant values.
equal_constructor [Method]
Equality over constructors.
equal_edge [ControlFlow]
Equality over edges.
equal_element [ConstantPool]
Equality over pool elements.
equal_element_value [Annotation]
Equality over element values.
equal_enclosing_method_value [Attribute]
Equality over enclosing method values.
equal_exception_table_element [Attribute]
Equality over exception table elements.
equal_extended [Annotation]
Equality over extended annotations.
equal_field_type_signature [Signature]
Equality over field type signatures.
equal_for_class [Name]
equal_for_constructor [Reference]
Equality over constructors.
equal_for_field [Reference]
Equality over fields.
equal_for_field [Name]
equal_for_field [Descriptor]
equal_for_method [Reference]
Equality over methods.
equal_for_method [Name]
equal_for_method [Descriptor]
equal_for_module [Name]
equal_for_package [Name]
equal_for_parameter [Descriptor]
equal_formal_type_parameter [Signature]
Equality over formal type parameters.
equal_inner_class_element [Attribute]
Equality over inner class elements.
equal_java_type [Lookup]
Equality over Java types.
equal_java_type [Descriptor]
equal_local_variable_table_element [Attribute]
Equality over local variable table elements.
equal_local_variable_type_table_element [Attribute]
Equality over local variable type table elements.
equal_method_argument [Bootstrap]
Equality over method arguments.
equal_method_handle [Bootstrap]
Equality over method handles.
equal_method_signature [Signature]
Equality over method signatures.
equal_method_specifier [Bootstrap]
Equality over method specifiers.
equal_regular [Method]
Equality over regular methods.
equal_signature [Attribute]
Equality over signatures.
equal_stack_map_frame [Attribute]
Equality over stack map frames.
equal_throws_signature [Signature]
Equality over throws signatures.
equal_type_argument [Signature]
Equality over type arguments.
equal_type_signature [Signature]
Equality over type signatures.
equal_type_variable_signature [Signature]
Equality over type variable signatures.
equal_verification_type_info [Attribute]
Equality over verification type informations.
equal_vertex [ControlFlow]
Equality over vertices.
escape [XML]
Escapes the passed string in such a way it can be used as an attribute value.
escape [UTF8Impl]
escape s returns the literal constant string corresponding to the passed string.
escape_char [UTF8Impl]
escape_char c returns the literal constant string corresponding to the passed character.
external_utf8_for_class [Name]
Converts a class name into external UTF8 form (dots between package elements, dollars between inner elements).
external_utf8_for_module [Name]
Converts a module name into external UTF8 form.
external_utf8_for_package [Name]
Converts a package name into external UTF8 form.
external_utf8_of_java_type [Descriptor]
Returns the textual representation of the passed Java type.
extract_annotations [Attribute]
Returns the list of annotations from the passed list.
extract_bootstrap_info [Attribute]
Returns the contents of the BootstrapMethods attribute from the passed list.
extract_class_signature [Attribute]
Returns the contents of the Signature attribute from the passed list.
extract_code [Attribute]
Returns the contents of the Code attribute from the passed list.
extract_exceptions [Attribute]
Returns the contents of the Exceptions attribute from the passed list.
extract_field_signature [Attribute]
Returns the contents of the Signature attribute from the passed list.
extract_method_signature [Attribute]
Returns the contents of the Signature attribute from the passed list.

F
field_of_utf8 [Descriptor]
Converts a string into the corresponding field descriptor.
field_type_signature_of_utf8 [Signature]
Converts a string (as used in class file) into the corresponding signature.
fields_of_descriptor [Serialization]
Returns the fields of the passed descriptor.
filter_non_array [Descriptor]
filter_non_array err jt returns jt if it is an array.
filter_void [Descriptor]
filter_void err jt returns jt if it is not equal to `Void.
find [InvertibleArray.S]
find [ExtendableArray]
index p a returns the lowest index i of a such that p (get a i) is true.
find_class [ClassLoader]
find_class cl cn returns the class definition for the class named cn (in external form) using class loader cl.
find_module [ClassLoader]
find_module cl pn returns the module definition for the module named mn (in external form) using class loader cl.
find_package [ClassLoader]
find_package cl pn returns the package definition for the package named pn (in external form) using class loader cl.
fix_point [Utils]
fix_point eq f x returns a fix point of f seeding with value x, and using eq as the equality function.
flatten_graph [Code]
flatten_graph g returns a l, t, e, g' quadruple where g' is g labeled with code offsets corresponding to the instruction list l.
flattened_graph [Code]
Converts the passed graph, by assuming that it is already flattened, and that int32 labels are vertices offsets.
flush [UTF8LineWriterImpl]
Flushes the passed writer.
flush [OutputStream]
Flushes the passed stream.
fold [ClassDefinition]
Applies the "folder" to the class definition.
fold [ArchiveTraversal]
Applies the "folder" to the zip file.
fold_edges [ControlFlow]
fold_edges f g z is f s1 l1 e1 (f s2 l2 e2 (... (f sn ln en z) ...)) where the si, li, ei are the edges of g (components being source, label and destination).
fold_file [ArchiveTraversal]
fold_file f n applies the "folder" f to the zip file whose name is n.
fold_handlers [ControlFlow]
fold_handlers f g z is f s1 l1 c1 h1 (f s2 l2 c2 h2 (... (f sn ln cn hn z) ...)) where the si, li, ci, hi are the handlers of g (components being source, label, caught exception, and handler).
fold_vertices [ControlFlow]
fold_vertices f g z is f v1 (f v2 (... (f vn z) ...)) where the vi are the vertices of g.
for_class [Lookup]
for_class generics ~open_packages:op cl s is a bare shorthand for search_for_class ~open_packages:op cl (make_for_class_from_utf8 generics s).
for_classes [Lookup]
for_classes generics ~open_packages:op cl s is a bare shorthand for search_for_classes ~open_packages:op cl (make_for_class_from_utf8 generics s).
for_constructor [Lookup]
for_constructor generics ~open_packages:op cl s is a bare shorthand for search_for_constructor ~open_packages:op cl (make_for_constructor_from_utf8 generics s).
for_constructors [Lookup]
for_constructors generics ~open_packages:op cl s is a bare shorthand for search_for_constructors ~open_packages:op cl (make_for_constructor_from_utf8 generics s).
for_field [Lookup]
for_field generics ~open_packages:op cl s is a bare shorthand for search_for_field ~open_packages:op cl (make_for_field_from_utf8 generics s).
for_fields [Lookup]
for_fields generics ~open_packages:op cl s is a bare shorthand for search_for_fields ~open_packages:op cl (make_for_field_from_utf8 generics s).
for_instruction [ControlFlow]
Returns the control flow information for the passed instruction.
for_regular_method [Lookup]
for_regular_method generics ~open_packages:op cl s is a bare shorthand for search_for_regular_method ~open_packages:op cl (make_for_regular_method_from_utf8 generics s).
for_regular_methods [Lookup]
for_regular_methods generics ~open_packages:op cl s is a bare shorthand for search_for_regular_methods ~open_packages:op cl (make_for_regular_method_from_utf8 generics s).
from_array [InvertibleArray.S]
from_array [ExtendableArray]
Constructs an extendable array from a bare one.
from_u2 [AccessFlag]
from_u2 meth mask converts mask into flag list, meth indicating whether the considered Java element is a method (including constructors).

G
gather_s8 [Utils]
Gather two 4-byte values into a 8-byte value, the first 4-byte value containing the highest bits.
get [UTF8LineReaderImpl]
get r returns the next line read from r.
get [UTF8Impl]
get s i returns the character of s at index i.
get [InvertibleArray.S]
get [ExtendableArray]
get a i returns the element of a at index i.
get_entry [ConstantPool]
get_entry pool index returns the entry at index in pool if index is valid, raising Exception otherwise.
get_extendable_entry [ConstantPool]
get_extendable_entry pool index returns the entry at index in pool if index is valid, raising Exception otherwise.
graph_of_instructions [ControlFlow]
graph_of_instructions instrs exn_table constructs the graph for the method whose instructions are instrs and exception table is exn_table.
greater_than [Consts]

H
handlers_of_vertex [ControlFlow]
Returns the list of handlers for the passed vertex in the passed graph.
hash [Version]
Hash function over versions.
hash [UTF8Impl]
Hash function over UTF8 strings.
hash [UCharImpl]
Hash function over Unicode characters.
hash [Reference]
Hash function over references.
hash [PackageDefinition]
Hash function over packages.
hash [ModuleDefinition]
Hash function over modules.
hash [Method]
Hash function over methods.
hash [LdcConstraint]
Hash function over constraints.
hash [InvertibleArray.HashableComparableType]
hash [InvertibleArray.S]
hash [Instruction]
Hash function over instructions.
hash [Field]
Hash function over fields.
hash [ExtendableArray]
Hash function over extendable arrays.
hash [ConstantPool]
Hash function over pools.
hash [ClassPath]
Hash function over class paths.
hash [ClassDefinition]
Hash function over modules.
hash [Attribute]
Hash function over attributes.
hash [Annotation]
Hash function over annotations.
hash [AccessFlag]
Hash function over flags.
hash_array_type_signature [Signature]
Hash function over array type signatures.
hash_class_initializer [Method]
Hash function over class initializers.
hash_class_signature [Signature]
Hash function over class signatures.
hash_class_type_signature [Signature]
Hash function over class type signatures.
hash_class_type_signature_suffix [Signature]
Hash function over class type signature suffixes.
hash_code_attribute [Attribute]
Hash function over code attributes.
hash_code_value [Attribute]
Hash function over code values.
hash_constant_value [Attribute]
Hash function over constant values.
hash_constructor [Method]
Hash function over constructors.
hash_element [ConstantPool]
Hash function over pool elements.
hash_element_value [Annotation]
Hash function over element values.
hash_enclosing_method_value [Attribute]
Hash function over enclosing method values.
hash_exception_table_element [Attribute]
Hash function over exception table elements.
hash_extended [Annotation]
Hash function over extended annotations.
hash_field_type_signature [Signature]
Hash function over field type signatures.
hash_for_class [Name]
hash_for_constructor [Reference]
Hash function over constructors.
hash_for_field [Reference]
Hash function over fields.
hash_for_field [Name]
hash_for_field [Descriptor]
hash_for_method [Reference]
Hash function over methods.
hash_for_method [Name]
hash_for_method [Descriptor]
Hash function over method descriptors.
hash_for_module [Name]
hash_for_package [Name]
hash_for_parameter [Descriptor]
Hash function over parameter descriptors.
hash_formal_type_parameter [Signature]
Hash function over formal type parameters.
hash_inner_class_element [Attribute]
Hash function over inner class elements.
hash_java_type [Descriptor]
hash_local_variable_table_element [Attribute]
Hash function over local variable table elements.
hash_local_variable_type_table_element [Attribute]
Hash function over local variable type table elements.
hash_method_argument [Bootstrap]
Hash function over method arguments.
hash_method_handle [Bootstrap]
Hash function over method handle.
hash_method_signature [Signature]
Hash function over method signatures.
hash_method_specifier [Bootstrap]
Hash function over method specifiers.
hash_regular [Method]
Hash function over regular methods.
hash_signature [Attribute]
Hash function over signatures.
hash_stack_map_frame [Attribute]
Hash function over stack map frames.
hash_throws_signature [Signature]
Hash function over throws signatures.
hash_type_argument [Signature]
Hash function over type arguments.
hash_type_signature [Signature]
Hash function over type signatures.
hash_type_variable_signature [Signature]
Hash function over type variable signatures.
hash_verification_type_info [Attribute]
Hash function over verification type informations.

I
identity [Utils]
The identity function.
identity [ControlFlow]
identity g maps g into a new graph structurally identical, but with new identifiers for vertices.
index_from [UTF8Impl]
index_from s i c returns the lowest index above or equal to i where string s contains a character that equals c.
insert [Peephole]
insert r p l inserts rule r into list l at position p, using physical equality to compare rewriting rules.
instance_of_function [Serialization]
instance_of_function desc annot f constructs an instance associated with descriptor desc and annotations annot.
instructions_of_vertex [ControlFlow]
Returns the instruction list of the passed vertex.
internal_utf8_for_class [Name]
Converts a class name into internal UTF8 form (slashes between package elements, dollars between inner elements).
internal_utf8_for_module [Name]
Converts a module name into internal UTF8 form.
internal_utf8_for_package [Name]
Converts a package name into internal UTF8 form.
internal_utf8_of_java_type [Descriptor]
Converts a Java type into the corresponding string (as used in class file).
intersect [Version]
intersect v1 v2 compute the intersection of the intervals represented by bounds v1 and v2.
intersect_list [Version]
intersect_list l applies intersect to l.
is_digit [UCharImpl]
Predicate testing whether the passed character is a digit.
is_empty [Bootstrap]
Tests whether the passed array is empty.
is_letter [UCharImpl]
Predicate testing whether the passed character is a letter.
is_letter_or_digit [UCharImpl]
Predicate testing whether the passed character is a letter, a digit, or an underscore.
is_primitive [Descriptor]
Tests whether the passed type is primitive.
is_space [UCharImpl]
Predicate testing whether the passed character is a whitespace.
is_valid_for_method [Name]
Checks whether the passed string is a valid method name.
is_valid_unqualified [Name]
Checks whether the passed string is a valid unqualified name.
iter [ClassDefinition]
Applies the "iterator" to the class definition.
iter [ArchiveTraversal]
Applies the "iterator" to the zip file.
iter_edges [ControlFlow]
iter_edges f g applies f in turn to the edges of g.
iter_file [ArchiveTraversal]
iter_file i n applies the "iterator" i to the zip file whose name is n.
iter_handlers [ControlFlow]
iter_handlers f g applies f in turn to the handlers of g.
iter_vertices [ControlFlow]
iter_vertices f g applies f in turn to the vertices of g.

J
java_lang_Object [Consts]
java_type_of_external_utf8 [Descriptor]
Returns the Java type corresponding to the passed string.
java_type_of_external_utf8_no_void [Descriptor]
Same as java_type_of_external_utf8 but raises Exception if the decoded type is equal to the Java type void.
java_type_of_internal_utf8 [Descriptor]
Converts a string (as used in class file) into the corresponding Java type.
java_type_of_internal_utf8_no_void [Descriptor]
Same as java_type_of_internal_utf8 but raises Exception if the decoded type is equal to the Java type void.

K
kind_of_u1 [Reference]
Converts the passed integer into its corresponding kind, as used in the classfile format.

L
label_of_vertex [ControlFlow]
Returns the label of the passed vertex.
latex_description [Command.T]
The LaTeX-formmatted description used for the manual.
length [UTF8Impl]
Returns the length of the passed string (in characters, not bytes).
length [InvertibleArray.S]
length [ExtendableArray]
Returns the length of the passed array.
lexer_switch [Utils]
lexer_switch matches default ls char search the association list matches for a key equal to char.
line_number_table_mapper [ControlFlow]
line_number_table_mapper lnt returns a line mapper for the data of a LineNumberTable attribute.
list_compare [Utils]
Comparison over lists, cmp (defaulting to Pervasives.compare) being the comparison function over list elements.
list_compare_according_to_visibility [AccessFlag]
Comparison over flag list.
list_equal [Utils]
Equality over lists, eq (defaulting to (=)) being the predicate used to compare list elements.
list_hash [Utils]
Hash over lists, h (defaulting to Hashtbl.hash) being the hash function over list elements.
list_to_u2 [AccessFlag]
to_u2 dom l converts flag list l into an integer mask, as used in the class file format.
list_to_utf8 [AccessFlag]
Converts the passed flag list to its corresponding UTF8 string.
locals_size [StackState]
Returns the size of the locals for the passed state.
lower_than [Consts]

M
magic_number [Consts]
major_minor_of_version [Version]
Converts the passed version into (major, minor) format.
make [UTF8LineWriterImpl]
Constructs a line writer from an output stream.
make [UTF8LineReaderImpl]
Constructs a line reader from an input stream.
make [UTF8Impl]
Constructs a UTF8 string from a list of Unicode characters.
make [UTF8BufferImpl]
Constructs an empty buffer, of size default_size.
make [OutputStream]
Creates an output stream from passed functions: write is used to write one byte (see Pervasives.output_byte);, write_bytes src pos len (optional) is used to write len bytes from src, starting at index idx;, flush is used to flush the stream;, close is used to close the stream.
make [LdcConstraint]
Constructs an new empty set of constraints.
make [InvertibleArray.S]
make [InputStream]
Creates an input stream from passed functions: read_byte is used to read one byte (see Pervasives.input_byte);, read_bytes nb (optional) is used to read nb bytes;, read_bytes_into nb dst idx (optional) is used to read nb bytes and store them into dst, starting at index idx;, read_available_bytes nb dst idx (optional) is similar to read_bytes_into except that it should not fail if reaching end of file, and should return the number of bytes actually read;, close is used to close the stream.
make [Graph]
Returns a builder containing an empty graph.
make [ExtendableArray]
make len cap init returns an extendable array with an initial length of len and capacity cap, each element being initialized to init.
make [ClassPath]
Constructs a class path from the "CLASSPATH" environment variable, defaulting to "." if the variable is not set.
make [ClassLoader]
Constructs a class loader from a class path that will be used to load elements.
make [ArchiveBuilder]
make_array_unifier [StackState]
Builds an array unifier from a class unifier that is used to unify array elements.
make_base_parameters [Command]
Returns the elements needed to process base_parameters; class path is handled through "-cp" and "-classpath", while elements are the other arguments provided on the command-line.
make_bounds [Version]
make_bounds f lo hi returns a version interval for feature f, with lower version lo, and optional higher version hi.
make_descriptor [Serialization]
make_descriptor name serial annot fields super ext methods constructs a new descriptor for class name with serial identifier serial, annotations annot, fields fields, and super descriptor super.
make_empty [StackState]
Returns an empty state (no local, and no operand on stack).
make_empty_parameters [Command]
Returns the elements needed accept no parameter.
make_extendable [ConstantPool]
Builds an empty extendable pool.
make_extendable_from_array [ConstantPool]
Builds an extendable pool from an array of elements.
make_extendable_from_pool [ConstantPool]
Builds an extendable pool from a classic one.
make_for_class_from_external [Name]
Constructs a class name from an UTF8 string (dot being the separator between package elements, dollar being the separator between inner elements).
make_for_class_from_internal [Name]
Constructs a class name from an UTF8 string (slash being the separator between package elements, dollar being the separator between inner elements).
make_for_class_from_utf8 [Lookup]
make_for_class_from_utf8 generics s returns a query looking for classes according to string s, generics indicating whether generic information should be used.
make_for_constructor_from_utf8 [Lookup]
make_for_constructor_from_utf8 generics s returns a query looking for constructors according to string s, generics indicating whether generic information should be used.
make_for_field [Name]
Constructs a field name from an UTF8 string.
make_for_field_from_utf8 [Lookup]
make_for_field_from_utf8 generics s returns a query looking for fields according to string s, generics indicating whether generic information should be used.
make_for_method [Name]
Constructs a method name from an UTF8 string.
make_for_module_from_external [Name]
Constructs a module name from an UTF8 string (dot being the separator).
make_for_module_from_internal [Name]
Constructs a module name from an UTF8 string (slash being the separator).
make_for_package_from_external [Name]
Constructs a package name from an UTF8 string (dot being the separator).
make_for_package_from_internal [Name]
Constructs a package name from an UTF8 string (slash being the separator).
make_for_regular_method_from_utf8 [Lookup]
make_for_regular_method_from_utf8 generics s returns a query looking for regular methods according to string s, generics indicating whether generic information should be used.
make_graph [ControlFlow]
make_graph instrs lbl returns both a graph reduced to its root and the aforementioned root.
make_header_printer [Command]
make_header_printer n returns a function to print headers on the standard output.
make_instance [Serialization]
make_instance desc fields annot constructs an instance associated with descriptor desc and annotations annot.
make_methods [Bootstrap]
Constructs an empty array of method specifiers.
make_of_buffer [OutputStream]
Creates an output stream whose destination is a buffer.
make_of_buffer [InputStream]
Creates an input stream whose source is a buffer.
make_of_channel [OutputStream]
Creates an output stream whose destination is a channel.
make_of_channel [InputStream]
Creates an input stream whose source is a channel.
make_of_descr [OutputStream]
Creates an input stream whose source is a file descriptor.
make_of_descr [InputStream]
Creates an input stream whose source is a file descriptor.
make_of_list [ClassPath]
Constructs a class path from the passed elements.
make_of_method [StackState]
make_of_method cn m returns the state describing the stack at the beginning for the method m in the class cn.
make_of_parameters [StackState]
make_of_parameters cn p returns the state describing the stack at the beginning of a method.
make_of_size [UTF8BufferImpl]
make_of_size sz constructs an empty buffer, of size sz.
make_of_string [InputStream]
Creates an input stream whose source is a string.
make_of_string [ClassPath]
Constructs a class path from a string, using the passed separator between class path elements (defaulting to default_separator).
make_parameters [Command.T]
Build a params, specs, func triplet where: params are the parameters passed to the run function;, specs are the command-line specifiers passed to Arg.parse_argv;, func is the anonymous function passed to Arg.parse_argv. specs and func are supposed to update params when passed to Arg.parse_argv.
make_proxy_descriptor [Serialization]
make_proxy_descriptor interfaces annot super constructs a descriptor for a proxy class with annotations annot, and super descriptor super.
make_unifier [StackState]
Builds a unifier from a class unifier.
map [ClassDefinition]
Applies the "mapper" to the class definition.
map [ArchiveTraversal]
Applies the "mapper" to the zip file, the passed string being the name of the output file to create.
map_array_to_list [Utils]
map_array_to_list f a is equivalent to Array.to_list (List.map f l).
map_file [ArchiveTraversal]
map_file m i o applies the "mapper" m to the zip file whose name is i, producing zip file o.
map_graph [ControlFlow]
map_graph f1 f2 f3 g maps g into a new graph structurally identical, using: f1 to map vertex information;, f2 to map edge information;, f3 to map handler information.
map_list_to_array [Utils]
map_list_to_array f l is equivalent to Array.map f (Array.of_list l).
map_partial [Utils]
Similar to List.map except that the returned list contains elements mapped to Some x, and ignores those mapped to None.
matches_descriptor [Lookup]
Tests whether a Java type matches a given Java type descriptor.
max_s2 [Utils]
The greatest s2 value.
max_s4 [Utils]
The greatest s4 value.
max_supported [Version]
This value represents the maximum supported version of the class file format in (major, minor) fomat.
max_u1 [Utils]
The greatest u1 value.
max_u2 [Utils]
The greatest u2 value.
mem_class [ClassLoader]
mem_class cl cn tests whether the class named cn has been loaded by the class loader cl.
mem_module [ClassLoader]
mem_module cl mn tests whether the module named mn has been loaded by the class loader cl.
mem_package [ClassLoader]
mem_package cl pn tests whether the package named pn has been loaded by the class loader cl.
method_of_utf8 [Descriptor]
Converts a string into the corresponding method descriptor.
method_signature_of_utf8 [Signature]
Converts a string (as used in class file) into the corresponding signature.
methods_of_descriptor [Serialization]
Returns the Externalizable methods of the passed descriptor.
min_s2 [Utils]
The lowest s2 value.
min_s4 [Utils]
The lowest s4 value.
min_supported [Version]
This value represents the minimum supported version of the class file format in (major, minor) fomat.
minus [Consts]
modified_of_bytes [UTF8Impl]
Conversion from bytes into modified UTF8 string.

N
names [Command.T]
The various names for the command.
nb_args_of_jump_kind [ControlFlow]
Returns the number of arguments used by the passed jump kind.
nb_args_of_switch_kind [ControlFlow]
Returns the number of arguments used by the passed switch kind.

O
object_value_of_function [Serialization]
object_value_of_function desc annot f is a shorthand for Instance (instance_of_function desc annot f).
of_bytes [UTF8Impl]
Conversion from bytes into UTF8 string.
of_char [UTF8Impl]
Conversion from standard character into UTF8 string.
of_char [UCharImpl]
Conversion from standard character into Unicode character.
of_code [UCharImpl]
Conversion from Unicode code value into Unicode character.
of_modified [UTF8Impl]
Conversion from modified UTF8 string into UTF8 string.
of_string [UTF8Impl]
Conversion from standard string into UTF8 string.
of_string [AccessFlag]
Converts the passed string into a flag.
of_uchar [UTF8Impl]
Conversion from Unicode character into UTF8 string.
of_utf8 [AccessFlag]
Converts the passed UTF8 string into a flag.
offset_of_flattening_infos [Code]
Returns the offset associated with the label of the passed flattened vertex.
only_exception [StackState]
Returns a stack containing only the passed element.
open_stream [ClassPath]
open_stream cp cn returns the stream for class whose fully qualified name is cn, search class path cp.
opening_parenthesis [Consts]
opening_square_bracket [Consts]
opposite_jump_kind [ControlFlow]
Returns the jump kind that is the opposite (i.
optimize_constants [Peephole]
Predefined rules to optimize constants.
optimize_graph [Peephole]
optimize_graph ~rules:l g returns a graph similar to g, except that every instruction list has been optimized, l being the list of rewriting rules to apply to instruction lists (until a fixpoint is reached).
optimize_graph [Code]
optimize_graph g returns an optimized version of graph g.
optimize_iinc [Peephole]
Predefined rules to optimize iinc instructions.
optimize_jumps [Code]
optimize_jumps g returns g except that empty nodes (i.
optimize_list [Peephole]
optimize_list ~rules:l l2 optimizes l2 by applying the the list of rewriting rules l until a fixpoint is reached.
optimize_locals [Peephole]
Predefined rules to optimize local accesses.
optimize_switches [Code]
optimize_switches g returns g except that lookup switches are replaced with table switches if it shorter.
output [LineUtils]
Outputs the content of the passed buffer onto the passed stream, using a UTF8LineWriter instance.

P
parameter_of_utf8 [Descriptor]
Alias for field_of_utf8, used for increased readability.
path_in_archive [Manifest]
The path of a manifest file inside an archive.
percentage [Consts]
plus [Consts]
pop [StackState]
pop s returns s without its top element.
pop_if [StackState]
pop_if v s returns s without its top element if this element is equal to v, raising Exception otherwise.
pop_if_category1 [StackState]
pop_if_category1 s returns a couple with the top element, and s without its top element.
predecessors_of_vertex [ControlFlow]
Returns the list of vertices that have the passed vertex as a destination.
prepend [ClassPath]
prepend p cp returns a class path that is cp plus p added at its begin.
print [GraphPrinter]
print fmt l prints onto the standard output the graph of the classes appearing in archives from l, using fmt as the output format, and cl as the classloader.
print [FlowPrinter]
print fmt cl mn prints onto the standard output the control flow of the method whose descriptor is mn in classloader cl, using graph format fmt.
print [ClassPrinter]
print cp cn prints onto the standard output the description of the class whose name is cn in classpath cp.
print_to_buffer [GraphPrinter]
print_to_stream buff cl fmt l appends to the passed buffer buff the graph of the classes appearing in archives from l, using fmt as the output format, and cl as the classloader.
print_to_buffer [FlowPrinter]
print_to_stream buff fmt cl cn appends to the passed buffer buff the control flow of the method whose descriptor is mn in classloader cp, using graph format fmt.
print_to_buffer [ClassPrinter]
print_to_buffer buff cp cn appends to the passed buffer buff the description of the class whose name is cn in classpath cp.
print_to_stream [GraphPrinter]
print_to_stream st cl fmt l prints onto the passed stream the graph of the classes appearing in archives from l, using fmt as the output format, and cl as the classloader.
print_to_stream [FlowPrinter]
print_to_stream st fmt cl cn prints onto the passed stream the control flow of the method whose descriptor is mn in classloader cp, using graph format fmt.
print_to_stream [ClassPrinter]
print_to_stream chan cp cn prints onto the passed channel chan the description of the class whose name is cn in classpath cp.
printable_utf8_for_class [Name]
Converts a class name into external UTF8 form (dots between both package and inner elements).
push [StackState]
push v s returns a stack similar to s with v pushed on its top.
put [UTF8LineWriterImpl]
put w s outputs string s onto writer w.

Q
quote [Consts]

R
read [ConstantPool]
read [ClassFile]
read st reads a class file from the passed stream.
read [ByteCode]
read st ofs reads an instruction list from st using offset ofs.
read_available_bytes [InputStream]
read_available_bytes st nb dst idx is similar to read_bytes_into, except that is does not raise Exception if end of file is reached but rather returns the number of bytes actually read.
read_bytes [InputStream]
read_bytes st nb reads nb bytes from st returning them as a string.
read_bytes_into [InputStream]
read_bytes_into st nb dst idx reads nb bytes from st and stores them into dst, starting at index idx.
read_element [ConstantPool]
read_elements [InputStream]
read_elements st f will first read from st a Utils.u2 value indicating the number of elements to actually read.
read_extended_info [Annotation]
read_extended_info st reads an extended annotation from st.
read_info [Method]
read_info st reads a method from st.
read_info [Field]
read_info st reads a field from st.
read_info [Attribute]
read_info st reads an attribute from st.
read_info [Annotation]
read_info st reads an annotation from st.
read_info_element_value [Annotation]
read_info_element_value st reads an element value from st.
read_s1 [InputStream]
Reads a signed 1-byte integer from the passed stream.
read_s2 [InputStream]
Reads a signed 2-byte integer from the passed stream.
read_s4 [InputStream]
Reads a signed 4-byte integer from the passed stream.
read_s8 [InputStream]
Reads a signed 8-byte integer from the passed stream.
read_target [Annotation]
read_target st reads an element target from st.
read_u1 [InputStream]
Reads an unsigned 1-byte integer from the passed stream.
read_u2 [InputStream]
Reads an unsigned 2-byte integer from the passed stream.
read_u4 [InputStream]
Reads an unsigned 4-byte integer from the passed stream.
remove_class [ClassLoader]
remove_class cl cn removes the definition for class cn from class loader cl.
remove_dead_code [Code]
remove_dead_code g returns g without the vertices that cannot be reached from the root.
remove_edge [ControlFlow]
remove_edge g v returns a graph that is g without the edge going out of v.
remove_get_put [Peephole]
Predefined rules to optimize get/put sequences.
remove_handler [ControlFlow]
remove_handler g src cn dst returns a graph that is g without the handler from src to dst for exception cn.
remove_identity [Peephole]
Predefined rules to remove identities.
remove_load_store [Peephole]
Predefined rules to optimize load/store sequences.
remove_module [ClassLoader]
remove_module cl mn removes the definition for module mn from class loader cl.
remove_neutral_elements [Peephole]
Predefined rules to remove neutral elements.
remove_nops_and_unused_pushed_values [Peephole]
Predefined rules to remove no-ops.
remove_package [ClassLoader]
remove_package cl pn removes the definition for package pn from class loader cl.
remove_vertex [ControlFlow]
remove_vertex g v returns a graph that is g without v and associated edge and handlers.
remove_vertices [ControlFlow]
remove_vertices g l returns a graph that is g without the vertices l and associated edges and handlers.
replace [UTF8Impl]
replace c1 c2 s returns a copy of s where every character equal to c1 has been replaced by c2.
replace_class [ClassLoader]
Equivalent to add_class except that a previous definition is replaced.
replace_dot_with_slash [Name]
replace_dot_with_slash s returns a copy of string s where each dot has been replaced by a slash.
replace_module [ClassLoader]
Equivalent to add_module except that a previous definition is replaced.
replace_package [ClassLoader]
Equivalent to add_package except that a previous definition is replaced.
replace_slash_with_dot [Name]
replace_slash_with_dot s returns a copy of string s where each slash and dollar has been replaced by a dot.
rewrite_absorbing_elements [Peephole]
Predefined rules to simplify by absorbing elements.
rewrite_load_load [Peephole]
Predefined rules to optimize load/load sequences.
rewrite_store_load [Peephole]
Predefined rules to optimize store/load sequences.
rewrite_store_store [Peephole]
Predefined rules to optimize store/store sequences.
rindex_from [UTF8Impl]
rindex_from s i c returns the highest index below or equal to i where string s contains a character that equals c.
root_of_graph [ControlFlow]
Returns the root of the passed graph.
run [Command.T]
Actually executes of the command with passed parameters.

S
s1 [Utils]
Constructs a value of type s1, raising Integer_exception if value is out of bounds.
s1_neg [Utils]
Unary negation, raises Integer_exception if result would be out of bounds.
s2 [Utils]
Constructs a value of type s2, raising Integer_exception if value is out of bounds.
s2_neg [Utils]
Unary negation, raises Integer_exception if result would be out of bounds.
s4 [Utils]
Identity function.
s4_of_s2 [Utils]
Identity function.
s4_pred [Utils]
Decrements the passed value, raising Integer_exception if result would be out of bounds.
s8 [Utils]
Identity function.
search_for_class [Lookup]
Akin to search_for_classes, except that Exception is raised if the returned list contains zero or more than one class.
search_for_classes [Lookup]
search_for_classes ~open_packages:op cl q returns a list of classes matching query q found in class loader cl, op giving the list of package prefixes that need not to appear (thus allowing to use short rather than fully-qualified class names).
search_for_constructor [Lookup]
Akin to search_for_constructors, except that Exception is raised if the returned list contains zero or more than one constructor.
search_for_constructors [Lookup]
search_for_constructors ~open_packages:op cl q returns a list of class/constructor couples matching query q found in class loader cl, op giving the list of package prefixes that need not to appear (thus allowing to use short rather than fully-qualified class names).
search_for_field [Lookup]
Akin to search_for_fields, except that Exception is raised if the returned list contains zero or more than one field.
search_for_fields [Lookup]
search_for_fields ~open_packages:op cl q returns a list of class/field couples matching query q found in class loader cl, op giving the list of package prefixes that need not to appear (thus allowing to use short rather than fully-qualified class names).
search_for_regular_method [Lookup]
Akin to search_for_regular_methods, except that Exception is raised if the returned list contains zero or more than one regular method.
search_for_regular_methods [Lookup]
search_for_regular_methods ~open_packages:op cl q returns a list of class/method couples matching query q found in class loader cl, op giving the list of package prefixes that need not to appear (thus allowing to use short rather than fully-qualified class names).
semi_colon [Consts]
serial_of_descriptor [Serialization]
Returns the serial version of the passed descriptor.
set [InvertibleArray.S]
set [ExtendableArray]
set a i x changes the element of a at index i to x.
sharp [Consts]
size [ConstantPool]
Returns the size of the passed pool.
size_of [Instruction]
size_of ofs i returns the size of instruction i at offset ofs.
size_of_list [Instruction]
size_of_list ofs l returns the size of instruction list l at offset ofs.
slash [Consts]
small_c [Consts]
small_e [Consts]
small_s [Consts]
space [Consts]
split [UTF8Impl]
split c s returns the string list obtained by splitting s using delimiter c.
split_class_name [Name]
Splits the passed class name into the package name, and the simple class name.
split_s8 [Utils]
Splits the passed 8-byte value into two 4-byte values, the first containing the highest bits.
stack_size [StackState]
Returns the size of the operand stack for the passed state.
star [Consts]
stderr [OutputStream]
Predefined stream for standard error.
stdin [InputStream]
Predefined stream for standard input.
stdout [OutputStream]
Predefined stream for standard output.
string_of_array [Utils]
string_of_array f a converts a into a string, using f to convert array elements.
string_of_error [Version]
string_of_error [UTF8LexerStateImpl]
string_of_error [UTF8Impl]
string_of_error [UCharImpl]
string_of_error [StackState]
string_of_error [Signature]
string_of_error [Serialization]
string_of_error [Reference]
string_of_error [PackageDefinition]
string_of_error [OutputStream]
string_of_error [Name]
string_of_error [ModuleDefinition]
string_of_error [Method]
string_of_error [Lookup]
string_of_error [Lexer]
string_of_error [LdcConstraint]
string_of_error [Instruction]
string_of_error [InputStream]
string_of_error [GraphPrinter]
string_of_error [FlowPrinter]
string_of_error [Field]
string_of_error [Descriptor]
string_of_error [ControlFlow]
string_of_error [ConstantPool]
string_of_error [ClassPath]
string_of_error [ClassLoader]
string_of_error [ClassFile]
string_of_error [ClassDefinition]
string_of_error [ByteCode]
string_of_error [Bootstrap]
string_of_error [Attribute]
string_of_error [Assembler]
Converts the passed error into a string.
string_of_error [ArchiveBuilder]
string_of_error [Annotation]
string_of_error [AccessFlag]
string_of_format [Graph]
Converts the passed format into a string.
string_of_integer_error [Utils]
Converts the passed error into a string.
string_of_lexer_state_error [Utils]
string_of_list [Utils]
string_of_list f l converts l into a string, using f to convert list elements.
string_of_verification_type_info [Attribute]
Converts the passed verification type information into a string.
string_replace [Utils]
string_replace o n s returns a new string where every occurrence of o is replaced by n.
string_split [Utils]
string_split seps s returns a list of substrings of s separeted by contiguous substrings of elements from seps.
substring [UTF8Impl]
substring s start end returns a string whose characters are those of s from index first to index last (both inclusive).
super_class_desc_of_descriptor [Serialization]
Returns the parent descriptor of the passed descriptor.
switch [Utils]
switch eq matches default x search the association list matches for a key equal to x using equality function eq.

T
tabulation [Consts]
to_array [InvertibleArray.S]
to_array [ExtendableArray]
Constructs a bare array from an extendable one.
to_bytes [UTF8Impl]
Conversion from UTF8 string into bytes.
to_char [UCharImpl]
Conversion from Unicode character into standard character.
to_char_noerr [UCharImpl]
Equivalent to to_char, except that any exception is discarded and '?' is returned.
to_code [UCharImpl]
Conversion from Unicode character into Unicode code value.
to_graph [Graph]
Returns the graph as constructed by the passed builder.
to_lines [Manifest]
Converts the passed manifest into a list of lines.
to_modified [UTF8Impl]
Conversion from UTF8 string into modified UTF8 string.
to_plain_graph [ControlFlow]
to_plain_graph f1 f2 g converts g into its graph representation using f1 to convert vertex labels into strings, and f2 to convert edge labels into strings.
to_pool [ConstantPool]
Converts an extendable pool into a pool.
to_string [Version]
Converts the passed version into a string.
to_string [UTF8Impl]
Conversion from UTF8 string into standard string.
to_string [Manifest]
Converts the passed manifest into a bare string.
to_string [InvertibleArray.HashableComparableType]
to_string [InvertibleArray.S]
to_string [ExtendableArray]
Converts the passed extendable array into a string.
to_string [ClassPath]
Converts the passed class path into a string.
to_string [AccessFlag]
Converts the passed flag into a string.
to_string_noerr [UTF8Impl]
Equivalent to to_string, except that any exception is discarded and "..." is returned.
to_text [ClassPath]
Converts the passed class path into its textual representation.
to_u2 [AccessFlag]
to_u2 f converts flag f into an integer mask, as used in the class file format.
to_utf8 [Reference]
Converts the passed reference into a string.
to_utf8 [AccessFlag]
Converts the passed flag into a UTF8 string.
tokens_of_line [Lexer]
Converts the passed string into a list of tokens.
top [StackState]
top s returns the top element of s.
trim [UTF8Impl]
trim s returns the passed string with neither leading nor trailing spaces.
try_finally [Utils]
try_finally x f h implements the try/finally logic.
try_with [OutputStream]
try_with st f is equivalent to Utils.try_finally st f close_noerr.
try_with [InputStream]
try_with st f is equivalent to Utils.try_finally st f close_noerr.

U
u1 [Utils]
Constructs a value of type u1, raising Integer_exception if value is out of bounds.
u1_of_kind [Reference]
Converts the passed kind into its corresponding code, as used in the classfile format.
u1_succ [Utils]
Increments the passed value, raising Integer_exception if result would be out of bounds.
u2 [Utils]
Constructs a value of type u2, raising Integer_exception if value is out of bounds.
u2_of_u1 [Utils]
Identity function.
u2_succ [Utils]
Increments the passed value, raising Integer_exception if result would be out of bounds.
u4 [Utils]
Constructs a value of type u4, raising Integer_exception if value is out of bounds.
underscore [Consts]
unescape [UTF8Impl]
unescape s returns the string corresponding to the passed literal constant string.
unify [StackState]
unify u st1 st2 returns a state that generalizes st1 and st2.
unify_to_closest_common_parent [StackState]
A unifier that returns the closest common parent of the passed classes.
unify_to_java_lang_Object [StackState]
A unifier that returns java.lang.Object when passed classes are different.
unify_to_parent_list [StackState]
A unifier that returns the closest common parent of the passed classes, using the passed list as a (class, parent) association list.
universal_hash [Utils]
Universal hash function, bare shorthand for Hashtbl.hash.
update [StackState]
update cn ofs i st returns the state st updated according to the instruction i located at offset ofs (in class cn).
utf8_for_class [Lookup]
Returns the string representation of the passed query.
utf8_for_constructor [Reference]
Converts the passed constructor into a string.
utf8_for_constructor [Lookup]
Returns the string representation of the passed query.
utf8_for_field [Reference]
Converts the passed field into a string.
utf8_for_field [Name]
Converts a field name into UTF8 form.
utf8_for_field [Lookup]
Returns the string representation of the passed query.
utf8_for_method [Reference]
Converts the passed method into a string.
utf8_for_method [Name]
Converts a method name into UTF8 form.
utf8_for_regular_method [Lookup]
Returns the string representation of the passed query.
utf8_of_class_signature [Signature]
Converts a signature into the corresponding string (as used in class file).
utf8_of_field [Descriptor]
Converts a field descriptor into the corresponding string.
utf8_of_field_type_signature [Signature]
Converts a signature into the corresponding string (as used in class file).
utf8_of_method [Descriptor]
Converts a method descriptor into the corresponding string.
utf8_of_method_signature [Signature]
Converts a signature into the corresponding string (as used in class file).
utf8_of_parameter [Descriptor]
Alias for utf8_of_field, used for increased readability.

V
value [CurrentVersion]
The current version of Barista as a string.
verification_type_info_of_parameter_descriptor [Attribute]
Converts the passed descriptor into a verification type information.
version_bounds [Instruction]
Returns the version bounds for the passed instruction.
version_bounds [ConstantPool]
Returns the version bounds for the passed pool element.
version_bounds [Attribute]
Returns the version bounds for the passed attribute.
version_bounds [AccessFlag]
Returns the version bounds for the passed flag.
version_of_major_minor [Version]
Converts the passed version from (major, minor) format.

W
write [ConstantPool]
write [ClassFile]
write cf st writes the class file cf onto the stream st.
write [ByteCode]
write st ofs l writes instruction list l onto st using offset ofs.
write_bytes [OutputStream]
write_bytes s st writes s to st.
write_bytes_from [OutputStream]
write_bytes_from s pos len st writes len bytes from s starting at pos to st.
write_element [ConstantPool]
write_elements [OutputStream]
write_elements length st f l will first write to st the length of l as a Utils.u2 value.
write_extended_info [Annotation]
write_extended_info st a writes extended annotation a onto st.
write_info [Method]
write_info st m writes method m onto st.
write_info [Field]
write_info st f writes field f onto st.
write_info [Attribute]
write_info st a writes an attribute a onto st.
write_info [Annotation]
write_info st a writes annotation a onto st.
write_info_element_value [Annotation]
write_info_element_value st e writes element value e onto st.
write_s1 [OutputStream]
Writes a signed 1-byte integer to the passed stream.
write_s2 [OutputStream]
Writes a signed 2-byte integer to the passed stream.
write_s4 [OutputStream]
Writes a signed 4-byte integer to the passed stream.
write_s8 [OutputStream]
Writes a signed 8-byte integer to the passed stream.
write_target [Annotation]
write_target st e writes element target e onto st.
write_u1 [OutputStream]
Writes an unsigned 1-byte integer to the passed stream.
write_u2 [OutputStream]
Writes an unsigned 2-byte integer to the passed stream.
write_u4 [OutputStream]
Writes an unsigned 4-byte integer to the passed stream.