Merge branch 'master' of ssh://git.labs.libre-entreprise.org/gitroot/tiramisu
[tiramisu.git] / doc / option.txt
1 .. default-role:: literal
2
3 The options types
4 ===================
5
6 Description of Options
7 ----------------------
8
9 All the constructors take a ``name`` and a ``doc`` argument as first
10 arguments to give the option or option group a name and to document it.
11 Most constructors take a ``default`` argument that specifies the default
12 value of the option. If this argument is not supplied the default value
13 is assumed to be ``None``.
14
15
16 .. _optdescr:
17
18 The `OptionDescription` class
19 -------------------------------
20
21 .. module:: tiramisu.option
22
23 .. autoclass:: OptionDescription
24     :special-members:
25     :members:
26
27
28 If you need to access an option object, you can do it with the OptionDescription 
29 object. Not only the value of the option by attribute access, but the option 
30 object itself that lives behind the scene. It can always be accessed internally. 
31 The option objects are in the `_children` `OptionDescription`'s attribute.
32
33 The `Option` base class
34 -------------------------
35
36 It's the abstract base class for almost all options (except the symblink).
37
38 .. _optioninit:
39
40 .. autoclass:: Option
41     :special-members:
42     :members:
43
44 All option types
45 ------------------
46
47 .. autoclass:: BoolOption
48     :private-members:
49
50 .. autoclass:: IntOption
51     :private-members:
52
53 .. autoclass:: FloatOption
54     :private-members:
55
56 .. autoclass:: StrOption
57     :private-members:
58
59
60 .. autoclass:: SymLinkOption
61
62     .. automethod:: __init__
63
64
65 ``SymLinkOption`` redirects to another configuration option in the
66 configuration, that is :
67
68 - retrieves the value of the target,
69 - can set the value of the target too
70
71
72 .. autoclass:: IPOption
73
74 .. autoclass:: NetmaskOption
75
76 .. autoclass:: NetworkOption
77
78 .. autoclass:: DomainnameOption
79
80
81 .. autoclass:: ChoiceOption
82
83     .. automethod:: __init__
84
85