blob: dfbd1604ac2f5c3aa79ae81d3fc74fd4b0b3e17d (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
|
This program generates a large amount of code and documentation for
all the daemon actions.
To add a new action there are only two files you need to change,
'generator_actions.ml' to describe the interface, and
daemon/<somefile>.c to write the implementation.
After editing these files, build it (make -C generator) to regenerate
all the output files. 'make' will rerun this automatically when
necessary.
IMPORTANT: This program should NOT print any warnings at compile time
or run time. If it prints warnings, you should treat them as errors.
OCaml tips:
(1) In emacs, install tuareg-mode to display and format OCaml code
correctly. 'vim' comes with a good OCaml editing mode by default.
(2) Read the resources at http://ocaml-tutorial.org/
(3) A module called 'Generator_foo' is defined in one or two files
called 'generator_foo.mli' and 'generator_foo.ml' (NB: lowercase first
letter). The *.mli file, if present, defines the public interface for
the module. The *.ml file is the implementation. If the *.mli file
is missing then everything is exported.
Some notable files in this directory:
generator_actions.ml The libguestfs API.
generator_structs.ml Structures returned by the API.
generator_c.ml Generate C API.
generator_<lang>.ml Generate bindings for <lang>.
generator_main.ml The main generator program.
|