Commit | Line | Data |
---|---|---|
34e49164 C |
1 | |
2 | type pr_elem_func = Ast_c.info -> unit | |
3 | type pr_space_func = unit -> unit | |
113803cf C |
4 | type pr_nl_func = unit -> unit |
5 | type pr_indent_func = unit -> unit | |
6 | type pr_outdent_func = unit -> unit | |
7 | type pr_unindent_func = unit -> unit | |
34e49164 | 8 | |
113803cf C |
9 | type expression_printer = Ast_c.expression -> unit |
10 | type arg_list_printer = Ast_c.argument Ast_c.wrap2 list -> unit | |
11 | type statement_printer = Ast_c.statement -> unit | |
12 | type declaration_printer = Ast_c.declaration -> unit | |
13 | type initialiser_printer = Ast_c.initialiser -> unit | |
14 | type param_printer = Ast_c.parameterType -> unit | |
15 | type type_printer = Ast_c.fullType -> unit | |
16 | type type_with_ident_printer = | |
17 | (string * Ast_c.info) option -> | |
18 | (Ast_c.storage * Ast_c.il) option -> Ast_c.fullType -> | |
19 | Ast_c.attribute list -> unit | |
20 | type toplevel_printer = Ast_c.toplevel -> unit | |
21 | type flow_printer = Control_flow_c.node -> unit | |
34e49164 | 22 | |
113803cf C |
23 | type pretty_printers = |
24 | {expression : expression_printer; | |
25 | arg_list : arg_list_printer; | |
26 | statement : statement_printer; | |
27 | decl : declaration_printer; | |
28 | init : initialiser_printer; | |
29 | param : param_printer; | |
30 | ty : type_printer; | |
31 | type_with_ident : type_with_ident_printer; | |
32 | toplevel : toplevel_printer; | |
33 | flow : flow_printer} | |
34 | ||
35 | val pretty_print_c : | |
36 | pr_elem_func -> pr_space_func -> pr_nl_func -> pr_indent_func -> | |
37 | pr_outdent_func -> pr_unindent_func -> pretty_printers | |
38 | ||
39 | ||
40 | val pp_expression_gen : pr_elem_func -> pr_space_func -> expression_printer | |
41 | val pp_arg_list_gen : pr_elem_func -> pr_space_func -> arg_list_printer | |
42 | val pp_statement_gen : pr_elem_func -> pr_space_func -> statement_printer | |
43 | val pp_decl_gen : pr_elem_func -> pr_space_func -> declaration_printer | |
44 | val pp_init_gen : pr_elem_func -> pr_space_func -> initialiser_printer | |
45 | val pp_param_gen : pr_elem_func -> pr_space_func -> param_printer | |
46 | ||
47 | val pp_type_gen : pr_elem_func -> pr_space_func -> type_printer | |
34e49164 | 48 | val pp_type_with_ident_gen : |
113803cf | 49 | pr_elem_func -> pr_space_func -> type_with_ident_printer |
34e49164 | 50 | |
113803cf | 51 | val pp_program_gen : pr_elem_func -> pr_space_func -> toplevel_printer |
34e49164 | 52 | |
34e49164 | 53 | |
113803cf C |
54 | val pp_expression_simple : expression_printer |
55 | val pp_statement_simple : statement_printer | |
56 | val pp_type_simple : type_printer | |
57 | val pp_init_simple : initialiser_printer | |
58 | val pp_toplevel_simple : toplevel_printer | |
59 | val pp_flow_simple: flow_printer | |
91eba41f C |
60 | |
61 | ||
62 | val debug_info_of_node: Ograph_extended.nodei -> Control_flow_c.cflow -> string | |
63 | ||
64 | val string_of_expression: Ast_c.expression -> string | |
708f4980 | 65 | val string_of_toplevel: Ast_c.toplevel -> string |