Splitting the <orthogonal> function into separate 2D and 3D functions
[shapes.git] / doc / parts / states / misc.sxml
blob6cbd68605b4d7b1f3543a87fdb70982a705c0b5d
1 <!-- This file is part of Shapes.                                           -->
2 <!--                                                                        -->
3 <!-- Shapes is free software: you can redistribute it and/or modify         -->
4 <!-- it under the terms of the GNU General Public License as published by   -->
5 <!-- the Free Software Foundation, either version 3 of the License, or      -->
6 <!-- any later version.                                                     -->
7 <!--                                                                        -->
8 <!-- Shapes is distributed in the hope that it will be useful,              -->
9 <!-- but WITHOUT ANY WARRANTY; without even the implied warranty of         -->
10 <!-- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the          -->
11 <!-- GNU General Public License for more details.                           -->
12 <!--                                                                        -->
13 <!-- You should have received a copy of the GNU General Public License      -->
14 <!-- along with Shapes.  If not, see <http://www.gnu.org/licenses/>.        -->
15 <!--                                                                        -->
16 <!-- Copyright 2008 Henrik Tidefelt                                         -->
18 <section id="states/misc">
19 <title>Everything else</title>
20 <top>
21 <p>Well, the states here do not have much in common except that they are generally not needed for basic applications.</p>
22 </top>
24 <system-state identifier="ignore">
25         <type><named-state-type name="Ignore" /></type>
26         <description>
27                 <p>To be used when a state parameter is required by a non-pure function, but one does not care about the result.</p>
28         </description>
29 </system-state>
31 <system-state identifier="time">
32         <type><named-state-type name="Time" /></type>
33         <description>
34                 <p>Represents the ever-changing state being the current time.  It's main characteristic is nothing but that; one can be sure that it will change from one peek of it to the next.</p>
35                 <p>So what's the use of it?  For semantic reasons, it shall be required by the kernel's non-pure functions that interact with the outside world in such a way that the result may be different from one invocation to another (and would otherwise not have any state parameters).</p>
36                 <p>Another obvious use of <self /> is to simply ask for the time.  Please refer to <named-state-type name="Time" /> for details.</p>
37         </description>
38 </system-state>
40 <system-state identifier="randomdevice">
41         <type><named-state-type name="RandomDevice" /></type>
42         <description>
43                 <p>Source of high quality random seeds.</p>
44         </description>
45 </system-state>
47 <system-state identifier="db">
48         <type><named-state-type name="Debugger" /></type>
49         <description>
50                 <p><em>There is no global <db-state /> state.</em>  This piece of documentation is just here to guide readers to the documentation in <a part="interactive" id="interactive-debug" />.</p>
51         </description>
52         <see-also>
53                 <db-state />
54         </see-also>
55 </system-state>
57 </section>