1 |
589ccf9f
|
Corentin Lauverjat
|
open Format
|
2 |
|
|
open Misc_printer
|
3 |
|
|
|
4 |
|
|
type parameter_mode = AdaNoMode | AdaIn | AdaOut | AdaInOut
|
5 |
|
|
|
6 |
|
|
type kind_def = AdaType | AdaProcedure | AdaFunction | AdaPackageDecl | AdaPackageBody
|
7 |
|
|
|
8 |
|
|
type visibility = AdaNoVisibility | AdaPrivate | AdaLimitedPrivate
|
9 |
|
|
|
10 |
|
|
type ada_with = (bool * bool * (printer list) * (printer list)) option
|
11 |
|
|
|
12 |
|
|
type ada_var_decl = parameter_mode * printer * printer * ada_with
|
13 |
|
|
|
14 |
|
|
type ada_local_decl =
|
15 |
|
|
| AdaLocalVar of ada_var_decl
|
16 |
|
|
| AdaLocalPackage of (printer * printer * ((printer*printer) list))
|
17 |
|
|
|
18 |
|
|
type def_content =
|
19 |
|
|
| AdaNoContent
|
20 |
|
|
| AdaPackageContent of printer
|
21 |
|
|
| AdaSimpleContent of printer
|
22 |
|
|
| AdaVisibilityDefinition of visibility
|
23 |
|
|
| AdaProcedureContent of ((ada_local_decl list list) * (printer list))
|
24 |
|
|
| AdaRecord of (ada_var_decl list list)
|
25 |
|
|
| AdaPackageInstanciation of (printer * ((printer*printer) list))
|
26 |
|
|
|
27 |
|
|
val pp_integer_type : printer
|
28 |
|
|
val pp_float_type : printer
|
29 |
|
|
val pp_boolean_type : printer
|
30 |
|
|
|
31 |
|
|
val pp_clean_ada_identifier : formatter -> string -> unit
|
32 |
|
|
val pp_package_access : (printer*printer) -> printer
|
33 |
|
|
val pp_block : formatter -> printer list -> unit
|
34 |
|
|
val pp_oneline_comment : formatter -> string -> unit
|
35 |
|
|
val pp_with : visibility -> formatter -> printer -> unit
|
36 |
|
|
val pp_var_decl : ada_var_decl -> printer
|
37 |
|
|
val pp_access : printer -> printer -> formatter -> unit
|
38 |
|
|
val pp_call : formatter -> (printer*(printer list list)) -> unit
|
39 |
|
|
val pp_old : printer -> printer
|
40 |
|
|
val pp_adastring : printer -> printer
|
41 |
|
|
|
42 |
|
|
val pp_or : (printer list) -> printer
|
43 |
|
|
val pp_and : (printer list) -> printer
|
44 |
|
|
|
45 |
|
|
(* declaration printer *)
|
46 |
|
|
val pp_package : printer -> printer list -> bool -> formatter -> printer -> unit
|
47 |
|
|
val pp_package_instanciation : printer -> printer -> formatter -> (printer*printer) list -> unit
|
48 |
|
|
val pp_type_decl : printer -> visibility -> printer
|
49 |
|
|
val pp_record : printer -> formatter -> ada_var_decl list list -> unit
|
50 |
|
|
val pp_procedure : printer -> (ada_var_decl list list) -> ada_with -> formatter -> def_content -> unit
|
51 |
|
|
val pp_predicate : printer -> (ada_var_decl list list) -> bool -> formatter -> (printer option) -> unit
|
52 |
|
|
(* Local function :
|
53 |
|
|
|
54 |
|
|
val pp_parameter_mode : formatter -> parameter_mode -> unit
|
55 |
|
|
val pp_kind_def : formatter -> kind_def -> unit
|
56 |
|
|
val pp_visibility : formatter -> visibility -> unit
|
57 |
|
|
val pp_var_decl_lists : formatter -> ada_var_decl list list -> unit
|
58 |
|
|
val pp_def_args : formatter -> ada_var_decl list list -> unit
|
59 |
|
|
val pp_def : formatter -> (kind_def*printer*(ada_var_decl list list)*(printer option)*def_content*(printer option)) -> unit
|
60 |
|
|
*)
|