2 type finalType
= Ast_c.fullType
4 (* completed TypeName, removed ParenType, use StructUnionName when can *)
5 type completed_and_simplified
= Ast_c.fullType
7 type completed_typedef
= Ast_c.fullType
8 type removed_typedef
= Ast_c.fullType
10 val is_completed_and_simplified
: finalType
-> bool
11 val is_completed_typedef_fullType
: finalType
-> bool
12 val is_removed_typedef_fullType
: finalType
-> bool
14 val remove_typedef
: completed_typedef
-> removed_typedef
20 string -> (Ast_c.structUnion
* Ast_c.structType
) -> Ast_c.fullType
24 Ast_c.arithOp
-> finalType
option -> finalType
option -> Ast_c.exp_info
27 val structdef_to_struct_name
:
28 finalType
-> finalType
29 val fake_function_type
:
30 finalType
option -> Ast_c.argument
Ast_c.wrap2 list
-> finalType
option
32 (* return normalize types ? *)
34 Ast_c.definition
-> finalType
36 Ast_c.declaration
-> finalType
37 val structdef_of_decl
:
38 Ast_c.declaration
-> Ast_c.structUnion
* Ast_c.structType
42 val make_info_def
: finalType
-> Ast_c.exp_info
43 val make_info
: Ast_c.exp_type
-> Ast_c.exp_info
45 val noTypeHere
: Ast_c.exp_info
48 (finalType
-> Ast_c.exp_info
) -> Ast_c.exp_info
-> Ast_c.exp_info
50 Ast_c.expression
-> finalType
option
53 val is_function_type
: finalType
-> bool
54 val function_pointer_type_opt
: finalType
-> Ast_c.functionType
option