Index of values


(|->) [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