| (|->) [Util] |
Either monad stuffage
|
| __ocaml_lex_comment_rec [Scanner] | |
| __ocaml_lex_escapechar_rec [Scanner] | |
| __ocaml_lex_stringlit_rec [Scanner] | |
| __ocaml_lex_tables [Scanner] | |
| __ocaml_lex_token_rec [Scanner] | |
| _id [Pretty] | |
A | |
| add_map_list [StringModules] |
Updating a string map that has list of possible values
|
| add_map_unique [StringModules] |
Update a map but keep track of collisions
|
| append_eof [WhiteSpace] |
Append an eof token to a program
|
| append_leaf [KlassData] | |
| append_leaf_test [KlassData] | |
| arrange [WhiteSpace] |
Pops the stack and adds rbraces when necessary
|
| ast_to_sast [BuildSast] | |
| ast_to_sast_klass [BuildSast] |
Given a class_data object and an Ast.class_def, return a Sast.class_def
object.
|
B | |
| best_inherited_method [Klass] | |
| best_matching_signature [Klass] |
Given a class_data record, a list of actual arguments, and a list of methods,
find the best matches for the actuals.
|
| best_method [Klass] |
Given a class_data record, method name, and list of actuals, and a list of sections to consider,
get the best matching method.
|
| block_merge [WhiteSpace] |
Build a block.
|
| build_class_data [KlassData] | |
| build_class_data_test [KlassData] | |
| build_class_struct_map [GenCast] | |
| build_map_track_errors [StringModules] |
To put it into symbols, we have builder : (StringMap, errorList) -> item -> (StringMap', errorList')
|
| built_in_classes [BuiltIns] |
The list of built in classes and their methods
|
| built_in_names [GenCast] | |
C | |
| c_expr_detail [GenCast] | |
| c_indent [GenC] | |
| cast_switch [GenCast] | |
| cast_to_c [GenC] | |
| cast_to_c_class_struct [GenC] | |
| cast_to_c_func [GenC] | |
| cast_to_c_if_chain [GenC] | |
| cast_to_c_if_pred [GenC] | |
| cast_to_c_main [GenC] | |
| cast_to_c_proto [GenC] | |
| cast_to_c_proto_dispatch [GenC] | |
| cast_to_c_proto_dispatch_arr [GenC] | |
| cast_to_c_proto_dispatch_on [GenC] | |
| cast_to_c_stmt [GenC] |
Take a list of cast_stmts and return a body of c statements
|
| cast_to_c_stmtlist [GenC] | |
| cdecls [Parser] | |
| cdef [GenCast] | |
| class_ancestor_method_lookup [Klass] |
Given a class_data record, a class name, a method name, and whether the current context is
`this' (i.e.
|
| class_field_far_lookup [Klass] |
Given a class_data record, a class name, a var_name, and whether the receiver of the field lookup
is this, return the lookup of the field in the ancestry of the object.
|
| class_field_lookup [Klass] |
Given a class_data record, a class_name, and a variable name, lookup the class in the hierarchy
that provides access to that variable from within that class (i.e.
|
| class_method_lookup [Klass] |
Given a class_data record, a class name, and a method name, lookup all the methods in the
given class with that name.
|
| class_section [Pretty] | |
| class_var_lookup [Klass] |
Given a class_data record, a class name, and a variable name, lookup the section and type
info for that variable.
|
| collect_dispatch [GenC] | |
| collect_dispatch_arr [GenC] | |
| collect_dispatch_func [GenC] | |
| collect_dispatch_on [GenC] | |
| collect_dispatches_clauses [GenC] | |
| collect_dispatches_expr [GenC] | |
| collect_dispatches_exprs [GenC] | |
| collect_dispatches_stmt [GenC] | |
| collect_dispatches_stmts [GenC] | |
| commalines [GenC] | |
| comment [Scanner] | |
| compatible_formals [Klass] |
Return whether a list of actuals and a list of formals are compatible.
|
| compatible_function [Klass] |
Return whether a given func_def is compatible with a list of actual arguments.
|
| compatible_return [Klass] |
Return whether a function's return type is compatible with a desired return type.
|
| compatible_signature [Klass] |
Return whether a function's signature is completely compatible with a return type
and a set of actuals
|
| concat_map_list [StringModules] |
Updating a string map that has a list of possible values with a bunch of new values
|
| conflicting_signatures [Klass] |
Return whether two function definitions have conflicting signatures
|
| convert [WhiteSpace] |
Run the entire pipeline
|
| count_lines [Scanner] |
Count the lines in a series of vertical spacing characters.
|
| cstmt [GenCast] | |
| cstmtlist [GenCast] | |
D | |
| deanonymize [Unanonymous] |
Given global class information and parsed and tagged classes,
deanonymize the classes.
|
| decide_option [Util] | |
| descan [Inspector] |
Convert token to its (assumed) lexographical source
|
| despace_brace [WhiteSpace] |
Between LBRACE and RBRACE we ignore spaces and newlines; colons are errors in this context.
|
| dfs_errors [KlassData] |
Recursively explore the tree starting at the root, accumulating errors
in a list as we go.
|
| dispatcharr [GenC] | |
| dispatches [GenC] | |
| dispatchon [GenC] | |
| drop_eof [WhiteSpace] |
Drop the EOF from a stream of tokens, failing if not possible
|
E | |
| either_split [Util] |
Split a list of 'a 'b either values into a pair of 'a list and 'b list
|
| errstr [KlassData] | |
| escapechar [Scanner] | |
| explode [Scanner] |
Explode a string into a list of characters
|
| expr_to_cstr [GenC] | |
| exprdetail_to_cstr [GenC] | |
F | |
| filter_option [Util] |
Reduce a list of options to the values in the Some constructors
|
| find_all_min [Util] |
Loop through a list and find all the items that are minimum with respect to the total
ordering cmp.
|
| fold_classes [KlassData] |
Fold over the values in a class_data record's classes map.
|
| formal_vars [Variables] |
Get the formal variables of a function
|
| free_vars [Variables] |
Get the free variables of a list of statements
|
| free_vars_func [Variables] |
Get the free variables in a function.
|
| free_vars_funcs [Variables] |
Get the free variables in a whole list of functions.
|
| from_channel [Inspector] |
Scan a list of tokens from an input file.
|
| from_tname [GenCast] | |
| full_signature_string [Klass] |
Return a string representing the full signature of the function
|
G | |
| generate_arrayalloc [GenC] | |
| generate_refinesw [GenC] | |
| generate_testsw [GenC] | |
| get_class_names [Klass] |
Get the names of the classes in level order (i.e.
|
| get_distance [Klass] |
Given a class_data record and two classes, returns the distance between them.
|
| get_example_longest_body [Debug] | |
| get_example_parse [Debug] | |
| get_example_path [Debug] | |
| get_example_scan [Debug] | |
| get_fname [GenCast] | |
| get_leaves [Klass] |
Get leaf classes
|
| get_pointer [GenCast] | |
| get_rname [GenCast] | |
| get_statement_count [Util] |
Return the length of a block -- i.e.
|
| get_tname [GenCast] | |
| get_vdef [GenCast] | |
| get_vname [GenCast] | |
I | |
| implode [Scanner] |
Build a string from a list of characters
from: http://caml.inria.fr/mantis/view.php?id=5367
|
| indent [Pretty] | |
| indenting_space [WhiteSpace] |
Only allow spacing that is at the start of a line
|
| inspect_ast_arith [Inspector] | |
| inspect_ast_class_def [Inspector] | |
| inspect_ast_class_section [Inspector] | |
| inspect_ast_class_sections [Inspector] | |
| inspect_ast_clause [Inspector] | |
| inspect_ast_combtest [Inspector] | |
| inspect_ast_expr [Inspector] | |
| inspect_ast_func_def [Inspector] | |
| inspect_ast_lit [Inspector] | |
| inspect_ast_member_def [Inspector] | |
| inspect_ast_numtest [Inspector] | |
| inspect_ast_op [Inspector] | |
| inspect_ast_stmt [Inspector] | |
| inspect_ast_var_def [Inspector] | |
| inspect_clause [Pretty] | |
| is_built_in [BuiltIns] |
Return whether a class is built in or not
|
| is_proper_subtype [Klass] |
Check if a class is a proper subclass of another given a class_data record
|
| is_subtype [Klass] |
Check if a class is a subclass of another given a class_data record
|
| is_type [Klass] |
Check if a type exists in the class data -- convenience function
|
K | |
| klass_to_functions [Klass] |
Get anything that is invocable, not just instance methods
|
| klass_to_methods [Klass] |
Return the methods of the class
|
| klass_to_parent [Klass] |
From a class get the parent
|
| klass_to_variables [Klass] |
Return the variables of the class
|
L | |
| leaf_ancestors [GenCast] | |
| lexfail [Scanner] |
Gracefully tell the programmer that they done goofed
|
| lexical_compare [Util] |
Lexically compare two lists of comparable items
|
| lextoks [WhiteSpace] |
A function to act like a lexfun
|
| lit_to_str [GenC] | |
M | |
| map_classes [KlassData] |
Fold over the values in a class_data record's classes map, but
enforce building up a StringMap.
|
| map_lookup [StringModules] |
Look a value up in a map
|
| map_lookup_list [StringModules] |
Look a list up in a map
|
| matches [GenC] | |
| merge_lines [WhiteSpace] |
Merge line continuatons given output from tokens_to_lines.
|
| meta_init [GenC] | |
N | |
| needs_semi [WhiteSpace] |
Check if a given line needs a semicolon at the end
|
O | |
| opt_tname [GenCast] | |
| option_as_list [Util] | |
P | |
| pp_arith [Pretty] | |
| pp_class_def [Pretty] | |
| pp_class_sections [Pretty] | |
| pp_combtest [Pretty] | |
| pp_expr [Pretty] | |
| pp_func_def [Pretty] | |
| pp_lit [Pretty] | |
| pp_member_def [Pretty] | |
| pp_numtest [Pretty] | |
| pp_op [Pretty] | |
| pp_opt [Pretty] | |
| pp_stmt [Pretty] | |
| pp_str_list [Pretty] | |
| pp_var_def [Pretty] | |
| pprint_token_lines [Inspector] |
Print out de-whitespacing lines (see print_token_line) for various lines, but with a header.
|
| pprint_token_list [Inspector] |
Print out a list of tokens with a specific header and some extra margins
|
| print_class_data [KlassData] |
Print class data out to stdout.
|
| print_class_enums [GenC] | |
| print_class_strings [GenC] | |
| print_lookup_map [StringModules] |
Print the contents of a lookup_map
|
| print_lookup_table [StringModules] |
Print the contents of a lookup_table
|
R | |
| refinable_lookup [Klass] |
Given a class_data record, a class name, a method name, and a refinement name, return the list
of refinements across all subclasses for the method with that name.
|
| refine_lookup [Klass] |
Given a class_data record, class name, method name, and refinement name, return the list of
refinements in that class for that method with that name.
|
| refine_on [Klass] |
Given the name of a refinement to apply, the list of actual types,
find the compatible refinements via the data / klass_name / method_name.
|
S | |
| sast_functions [GenCast] | |
| sast_to_cast [GenCast] | |
| sast_to_cast_func [GenCast] |
Trim up the sast func_def to the cast cfunc_def
|
| sast_to_castexpr [GenCast] | |
| sast_to_castexprlist [GenCast] | |
| section_string [Klass] |
Stringify a section to be printed
|
| seq [Util] |
Sequence a bunch of monadic actions together, piping results together
|
| setup_meta [GenC] | |
| signature_string [Klass] |
Return a string that describes a function
|
| space_to_brace [WhiteSpace] |
Take results of pipeline and finally adds braces.
|
| spacecount [Scanner] |
Count the space width of a string using the spacecounter function
|
| spacecounter [Scanner] |
A generic function to count the character-spaces of a character.
|
| spacing [WhiteSpace] |
Remove the initial space from a line but semantically note it
|
| squeeze_lines [WhiteSpace] |
Remove consecutive newlines
|
| stringify_arith [GenC] | |
| stringify_binop [GenC] | |
| stringify_combtest [GenC] | |
| stringify_list [GenC] | |
| stringify_numtest [GenC] | |
| stringify_unop [GenC] | |
| stringlit [Scanner] | |
T | |
| terminate_blocks [WhiteSpace] |
Make sure every line is terminated with a semi-colon when necessary
|
| to_aname [GenCast] | |
| to_dispatch [GenCast] | |
| to_fname [GenCast] | |
| to_rname [GenCast] | |
| token [Scanner] | |
| token_list [Inspector] |
Given a lexing function and a lexing buffer, consume tokesn until
the end of file is reached.
|
| token_to_string [Inspector] |
Convert a given token to a string representation for output
|
| tokens_to_lines [WhiteSpace] |
Remove spaces, newlines, and colons but semantically note their presence.
|
| trim_lines [WhiteSpace] |
Remove empty indentation -- SPACE followed by COLON or NEWLINE
|
U | |
| uid_counter [UID] |
A function to return the a fresh UID.
|
| uid_digits [UID] |
The number of digits in a UID
error after rollover
|
| update_refinements [BuildSast] | |
V | |
| vdecl_to_cstr [GenC] | |
W | |
| wsfail [WhiteSpace] |
Gracefully tell the programmer that they done goofed
|