Release coccinelle-0.1.8
[bpt/coccinelle.git] / parsing_c / pretty_print_c.mli
CommitLineData
34e49164
C
1
2type pr_elem_func = Ast_c.info -> unit
3type pr_space_func = unit -> unit
113803cf
C
4type pr_nl_func = unit -> unit
5type pr_indent_func = unit -> unit
6type pr_outdent_func = unit -> unit
7type pr_unindent_func = unit -> unit
34e49164 8
113803cf
C
9type expression_printer = Ast_c.expression -> unit
10type arg_list_printer = Ast_c.argument Ast_c.wrap2 list -> unit
11type statement_printer = Ast_c.statement -> unit
12type declaration_printer = Ast_c.declaration -> unit
13type initialiser_printer = Ast_c.initialiser -> unit
14type param_printer = Ast_c.parameterType -> unit
15type type_printer = Ast_c.fullType -> unit
16type 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
20type toplevel_printer = Ast_c.toplevel -> unit
21type flow_printer = Control_flow_c.node -> unit
34e49164 22
113803cf
C
23type 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
35val 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
40val pp_expression_gen : pr_elem_func -> pr_space_func -> expression_printer
41val pp_arg_list_gen : pr_elem_func -> pr_space_func -> arg_list_printer
42val pp_statement_gen : pr_elem_func -> pr_space_func -> statement_printer
43val pp_decl_gen : pr_elem_func -> pr_space_func -> declaration_printer
44val pp_init_gen : pr_elem_func -> pr_space_func -> initialiser_printer
45val pp_param_gen : pr_elem_func -> pr_space_func -> param_printer
46
47val pp_type_gen : pr_elem_func -> pr_space_func -> type_printer
34e49164 48val pp_type_with_ident_gen :
113803cf 49 pr_elem_func -> pr_space_func -> type_with_ident_printer
34e49164 50
113803cf 51val pp_program_gen : pr_elem_func -> pr_space_func -> toplevel_printer
34e49164 52
34e49164 53
113803cf
C
54val pp_expression_simple : expression_printer
55val pp_statement_simple : statement_printer
56val pp_type_simple : type_printer
57val pp_init_simple : initialiser_printer
58val pp_toplevel_simple : toplevel_printer
59val pp_flow_simple: flow_printer
91eba41f
C
60
61
62val debug_info_of_node: Ograph_extended.nodei -> Control_flow_c.cflow -> string
63
64val string_of_expression: Ast_c.expression -> string
708f4980 65val string_of_toplevel: Ast_c.toplevel -> string