File: appendices.html

package info (click to toggle)
boost1.42 1.42.0-4
  • links: PTS, VCS
  • area: main
  • in suites: squeeze
  • size: 277,864 kB
  • ctags: 401,076
  • sloc: cpp: 1,235,659; xml: 74,142; ansic: 41,313; python: 26,756; sh: 11,840; cs: 2,118; makefile: 655; perl: 494; yacc: 456; asm: 353; csh: 6
file content (130 lines) | stat: -rwxr-xr-x 6,533 bytes parent folder | download
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
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=US-ASCII">
<title>Appendices</title>
<link rel="stylesheet" href="../boostbook.css" type="text/css">
<meta name="generator" content="DocBook XSL Stylesheets V1.75.2">
<link rel="home" href="../index.html" title="The Boost C++ Libraries BoostBook Documentation Subset">
<link rel="up" href="../property_tree.html" title="Chapter&#160;14.&#160;Boost.PropertyTree">
<link rel="prev" href="../boost_propertytree/accessing.html" title="How to Access Data in a Property Tree">
<link rel="next" href="reference.html" title="Reference">
</head>
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
<table cellpadding="2" width="100%"><tr>
<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../boost.png"></td>
<td align="center"><a href="../../../index.html">Home</a></td>
<td align="center"><a href="../../../libs/libraries.htm">Libraries</a></td>
<td align="center"><a href="http://www.boost.org/users/people.html">People</a></td>
<td align="center"><a href="http://www.boost.org/users/faq.html">FAQ</a></td>
<td align="center"><a href="../../../more/index.htm">More</a></td>
</tr></table>
<hr>
<div class="spirit-nav">
<a accesskey="p" href="../boost_propertytree/accessing.html"><img src="../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../property_tree.html"><img src="../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../index.html"><img src="../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="reference.html"><img src="../../../doc/html/images/next.png" alt="Next"></a>
</div>
<div class="section" title="Appendices">
<div class="titlepage"><div><div><h2 class="title" style="clear: both">
<a name="property_tree.appendices"></a><a class="link" href="appendices.html" title="Appendices">Appendices</a>
</h2></div></div></div>
<a name="property_tree.appendices.compatibility"></a><h4>
<a name="id1442921"></a>
      <a class="link" href="appendices.html#property_tree.appendices.compatibility">Compatibility</a>
    </h4>
<p>
      Property tree uses partial class template specialization. There has been no
      attempt to work around lack of support for this. The library will therefore
      most probably not work with Visual C++ 7.0 or earlier, or gcc 2.x.
    </p>
<p>
      Property tree has been tested (regressions successfully compiled and run) with
      the following compilers:
    </p>
<div class="itemizedlist"><ul class="itemizedlist" type="disc">
<li class="listitem">
        Visual C++ 8.0
      </li>
<li class="listitem">
        gcc 3.4.2 (MinGW)
      </li>
<li class="listitem">
        gcc 3.3.5 (Linux)
      </li>
<li class="listitem">
        gcc 3.4.4 (Linux)
      </li>
<li class="listitem">
        gcc 4.3.3 (Linux)
      </li>
<li class="listitem">
        Intel C++ 9.0 (Linux)
      </li>
</ul></div>
<a name="property_tree.appendices.rationale"></a><h4>
<a name="id1442981"></a>
      <a class="link" href="appendices.html#property_tree.appendices.rationale">Rationale</a>
    </h4>
<div class="orderedlist"><ol class="orderedlist" type="1">
<li class="listitem">
<span class="bold"><strong>Why are there 3 versions of <code class="computeroutput"><a class="link" href="../boost/property_tree/basic_ptree.html#id935737-bb">get</a></code>?
        Couldn't there be just one?</strong></span> The three versions reflect experience
        gathered during several of years of using property tree in several different
        applications. During that time I tried hard to come up with one, proper form
        of the get function, and failed. I know of these three basic patterns of
        usage:
        <div class="itemizedlist"><ul class="itemizedlist" type="disc">
<li class="listitem">
<span class="emphasis"><em>Just get the data and I do not care if it cannot be done.</em></span>
            This is used when the programmer is fairly sure that data exists. Or
            in homework assignments. Or when tomorrow is final deadline for your
            project.
          </li>
<li class="listitem">
<span class="emphasis"><em>Get the data and revert to default value if it cannot be done.</em></span>
            Used when you want to allow omitting the key in question. Implemented
            by some similar tools (windows INI file access functions).
          </li>
<li class="listitem">
<span class="emphasis"><em>Get the data, but I care more whether you succeeded than I
            do for the data itself.</em></span> Used when you want to vary control
            flow depending on get success/failure. Or to check for presence of a
            key.
          </li>
</ul></div>
</li>
<li class="listitem">
<span class="bold"><strong>Why does the separator character come before the path
        and not after as one would expect?</strong></span> It helps with overload resolution
        in some cases.
      </li>
</ol></div>
<a name="property_tree.appendices.future_development"></a><h4>
<a name="id1443082"></a>
      <a class="link" href="appendices.html#property_tree.appendices.future_development">Future Development</a>
    </h4>
<div class="itemizedlist"><ul class="itemizedlist" type="disc">
<li class="listitem">
        More parsers: YAML, environment strings.
      </li>
<li class="listitem">
        More robust XML parser.
      </li>
<li class="listitem">
        Mathematical relations: ptree difference, union, intersection. Useful for
        finding configuration file changes etc.
      </li>
</ul></div>
</div>
<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
<td align="left"></td>
<td align="right"><div class="copyright-footer">Copyright &#169; 2008 Marcin Kalicinski<p>
        Distributed under the Boost Software License, Version 1.0. (See accompanying
        file LICENSE_1_0.txt or copy at <a href="http://www.boost.org/LICENSE_1_0.txt" target="_top">http://www.boost.org/LICENSE_1_0.txt</a>)
      </p>
</div></td>
</tr></table>
<hr>
<div class="spirit-nav">
<a accesskey="p" href="../boost_propertytree/accessing.html"><img src="../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../property_tree.html"><img src="../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../index.html"><img src="../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="reference.html"><img src="../../../doc/html/images/next.png" alt="Next"></a>
</div>
</body>
</html>