File: Poco.DynamicAnyHolder.html

package info (click to toggle)
poco-doc 1.3.6-1
  • links: PTS
  • area: main
  • in suites: buster, jessie, jessie-kfreebsd, squeeze, stretch, wheezy
  • size: 10,076 kB
  • ctags: 9,611
  • sloc: makefile: 31
file content (200 lines) | stat: -rw-r--r-- 16,295 bytes parent folder | download | duplicates (3)
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
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title>Class Poco::DynamicAnyHolder</title>
<meta http-equiv="content-type" content="text/html; charset=utf-8"/>
<meta name="author" content="Applied Informatics Software Engineering GmbH and Contributors"/>
<meta name="publisher" content="Applied Informatics Software Engineering GmbH and Contributors"/>
<meta name="copyright" content="Copyright (c) 2009, Applied Informatics Software Engineering GmbH and Contributors"/>
<meta name="language" content="en"/>
<meta name="date" content="2009-11-24"/>
<meta name="generator" content="PocoDoc"/>
<link rel="stylesheet" href="css/styles.css" type="text/css"/>
</head>
<body bgcolor="#ffffff" leftmargin="0" topmargin="0">
<div class="header">
<h1 class="namespace"><a href="Poco.html" class="namespace">Poco</a></h1>
<h1 class="symbol">class DynamicAnyHolder</h1>
</div>
<div class="body">
<p>
<b>Library:</b> Foundation<br />
<b>Package:</b> Core<br />
<b>Header:</b> Poco/DynamicAnyHolder.h</p>
<h2>Description</h2>
<div class="description">
<p>Interface for a data holder used by the <a href="Poco.DynamicAny.html" title="class Poco::DynamicAny">DynamicAny</a> class.  Provides methods to convert between data types. Only data types for which a convert method exists are supported, which are all C++ built-in types with addition of std::string, <a href="Poco.DateTime.html" title="class Poco::DateTime">DateTime</a>, <a href="Poco.LocalDateTime.html" title="class Poco::LocalDateTime">LocalDateTime</a>, <a href="Poco.Timestamp.html" title="class Poco::Timestamp">Timestamp</a>, and std::vector&lt;<a href="Poco.DynamicAny.html" title="class Poco::DynamicAny">DynamicAny</a>&gt;. </p>
</div>
<h2>Inheritance</h2>
<p><b>Known Derived Classes: </b><a href="Poco.DynamicAnyHolderImpl.html" title="class Poco::DynamicAnyHolderImpl">DynamicAnyHolderImpl</a></p>
<h2>Member Summary</h2>
<p><b>Member Functions: </b><a href="Poco.DynamicAnyHolder.html#5472" title="Poco::DynamicAnyHolder::clone()">clone</a>, <a href="Poco.DynamicAnyHolder.html#5474" title="Poco::DynamicAnyHolder::convert()">convert</a>, <a href="Poco.DynamicAnyHolder.html#5524" title="Poco::DynamicAnyHolder::convertSignedFloatToUnsigned()">convertSignedFloatToUnsigned</a>, <a href="Poco.DynamicAnyHolder.html#5521" title="Poco::DynamicAnyHolder::convertSignedToUnsigned()">convertSignedToUnsigned</a>, <a href="Poco.DynamicAnyHolder.html#5515" title="Poco::DynamicAnyHolder::convertToSmaller()">convertToSmaller</a>, <a href="Poco.DynamicAnyHolder.html#5518" title="Poco::DynamicAnyHolder::convertToSmallerUnsigned()">convertToSmallerUnsigned</a>, <a href="Poco.DynamicAnyHolder.html#5527" title="Poco::DynamicAnyHolder::convertUnsignedToSigned()">convertUnsignedToSigned</a>, <a href="Poco.DynamicAnyHolder.html#5496" title="Poco::DynamicAnyHolder::isArray()">isArray</a>, <a href="Poco.DynamicAnyHolder.html#5497" title="Poco::DynamicAnyHolder::isInteger()">isInteger</a>, <a href="Poco.DynamicAnyHolder.html#5499" title="Poco::DynamicAnyHolder::isNumeric()">isNumeric</a>, <a href="Poco.DynamicAnyHolder.html#5498" title="Poco::DynamicAnyHolder::isSigned()">isSigned</a>, <a href="Poco.DynamicAnyHolder.html#5500" title="Poco::DynamicAnyHolder::isString()">isString</a>, <a href="Poco.DynamicAnyHolder.html#5473" title="Poco::DynamicAnyHolder::type()">type</a></p>
<h2>Constructors</h2>
<h3><a name="5470">DynamicAnyHolder</a></h3>
<p class="decl"><a href="Poco.DynamicAnyHolder.html" title="class Poco::DynamicAnyHolder">DynamicAnyHolder</a>();</p>
<div class="description">
<p>Creates the <a href="Poco.DynamicAnyHolder.html" title="class Poco::DynamicAnyHolder">DynamicAnyHolder</a>. </p>
</div>
<h2>Destructor</h2>
<h3><a name="5471">~DynamicAnyHolder</a> <img src="images/virtual.gif" alt="virtual" title="virtual" style="vertical-align:baseline;" border="0" /> </h3>
<p class="decl">virtual ~<a href="Poco.DynamicAnyHolder.html" title="class Poco::DynamicAnyHolder">DynamicAnyHolder</a>();</p>
<div class="description">
<p>Destroys the <a href="Poco.DynamicAnyHolder.html" title="class Poco::DynamicAnyHolder">DynamicAnyHolder</a>. </p>
</div>
<h2>Member Functions</h2>
<h3><a name="5472">clone</a> <img src="images/virtual.gif" alt="virtual" title="virtual" style="vertical-align:baseline;" border="0" /> </h3>
<p class="decl">virtual <a href="Poco.DynamicAnyHolder.html" title="class Poco::DynamicAnyHolder">DynamicAnyHolder</a> * clone() const = 0;</p>
<div class="description">
<p>Deep-copies the <a href="Poco.DynamicAnyHolder.html" title="class Poco::DynamicAnyHolder">DynamicAnyHolder</a>. </p>
</div>
<h3><a name="5474">convert</a> <img src="images/virtual.gif" alt="virtual" title="virtual" style="vertical-align:baseline;" border="0" />  <img src="images/inline.gif" alt="inline" title="inline" style="vertical-align:baseline;" border="0" /> </h3>
<p class="decl">virtual void convert(<br />&nbsp;&nbsp;&nbsp;&nbsp;<a href="Poco.html#11349" title="Poco::Int8">Int8</a> &amp; val<br />) const = 0;</p>
<div class="description">
<p></p>
</div>
<h3><a name="5476">convert</a> <img src="images/virtual.gif" alt="virtual" title="virtual" style="vertical-align:baseline;" border="0" /> </h3>
<p class="decl">virtual void convert(<br />&nbsp;&nbsp;&nbsp;&nbsp;<a href="Poco.html#11351" title="Poco::Int16">Int16</a> &amp; val<br />) const = 0;</p>
<div class="description">
<p></p>
</div>
<h3><a name="5478">convert</a> <img src="images/virtual.gif" alt="virtual" title="virtual" style="vertical-align:baseline;" border="0" /> </h3>
<p class="decl">virtual void convert(<br />&nbsp;&nbsp;&nbsp;&nbsp;<a href="Poco.html#11353" title="Poco::Int32">Int32</a> &amp; val<br />) const = 0;</p>
<div class="description">
<p></p>
</div>
<h3><a name="5480">convert</a> <img src="images/virtual.gif" alt="virtual" title="virtual" style="vertical-align:baseline;" border="0" /> </h3>
<p class="decl">virtual void convert(<br />&nbsp;&nbsp;&nbsp;&nbsp;<a href="Poco.html#11357" title="Poco::Int64">Int64</a> &amp; val<br />) const = 0;</p>
<div class="description">
<p></p>
</div>
<h3><a name="5482">convert</a> <img src="images/virtual.gif" alt="virtual" title="virtual" style="vertical-align:baseline;" border="0" /> </h3>
<p class="decl">virtual void convert(<br />&nbsp;&nbsp;&nbsp;&nbsp;<a href="Poco.html#11350" title="Poco::UInt8">UInt8</a> &amp; val<br />) const = 0;</p>
<div class="description">
<p></p>
</div>
<h3><a name="5484">convert</a> <img src="images/virtual.gif" alt="virtual" title="virtual" style="vertical-align:baseline;" border="0" /> </h3>
<p class="decl">virtual void convert(<br />&nbsp;&nbsp;&nbsp;&nbsp;<a href="Poco.html#11352" title="Poco::UInt16">UInt16</a> &amp; val<br />) const = 0;</p>
<div class="description">
<p></p>
</div>
<h3><a name="5486">convert</a> <img src="images/virtual.gif" alt="virtual" title="virtual" style="vertical-align:baseline;" border="0" /> </h3>
<p class="decl">virtual void convert(<br />&nbsp;&nbsp;&nbsp;&nbsp;<a href="Poco.html#11354" title="Poco::UInt32">UInt32</a> &amp; val<br />) const = 0;</p>
<div class="description">
<p></p>
</div>
<h3><a name="5488">convert</a> <img src="images/virtual.gif" alt="virtual" title="virtual" style="vertical-align:baseline;" border="0" /> </h3>
<p class="decl">virtual void convert(<br />&nbsp;&nbsp;&nbsp;&nbsp;<a href="Poco.html#11358" title="Poco::UInt64">UInt64</a> &amp; val<br />) const = 0;</p>
<div class="description">
<p></p>
</div>
<h3><a name="5490">convert</a> <img src="images/virtual.gif" alt="virtual" title="virtual" style="vertical-align:baseline;" border="0" /> </h3>
<p class="decl">virtual void convert(<br />&nbsp;&nbsp;&nbsp;&nbsp;<a href="Poco.DateTime.html" title="class Poco::DateTime">DateTime</a> &amp; val<br />) const = 0;</p>
<div class="description">
<p></p>
</div>
<h3><a name="5492">convert</a> <img src="images/virtual.gif" alt="virtual" title="virtual" style="vertical-align:baseline;" border="0" /> </h3>
<p class="decl">virtual void convert(<br />&nbsp;&nbsp;&nbsp;&nbsp;<a href="Poco.LocalDateTime.html" title="class Poco::LocalDateTime">LocalDateTime</a> &amp; val<br />) const = 0;</p>
<div class="description">
<p></p>
</div>
<h3><a name="5494">convert</a> <img src="images/virtual.gif" alt="virtual" title="virtual" style="vertical-align:baseline;" border="0" /> </h3>
<p class="decl">virtual void convert(<br />&nbsp;&nbsp;&nbsp;&nbsp;<a href="Poco.Timestamp.html" title="class Poco::Timestamp">Timestamp</a> &amp; val<br />) const = 0;</p>
<div class="description">
<p></p>
</div>
<h3><a name="5501">convert</a></h3>
<p class="decl">void convert(<br />&nbsp;&nbsp;&nbsp;&nbsp;long &amp; val<br />) const;</p>
<div class="description">
<p></p>
</div>
<h3><a name="5503">convert</a></h3>
<p class="decl">void convert(<br />&nbsp;&nbsp;&nbsp;&nbsp;unsigned long &amp; val<br />) const;</p>
<div class="description">
<p></p>
</div>
<h3><a name="5505">convert</a> <img src="images/virtual.gif" alt="virtual" title="virtual" style="vertical-align:baseline;" border="0" /> </h3>
<p class="decl">virtual void convert(<br />&nbsp;&nbsp;&nbsp;&nbsp;bool &amp; val<br />) const = 0;</p>
<div class="description">
<p></p>
</div>
<h3><a name="5507">convert</a> <img src="images/virtual.gif" alt="virtual" title="virtual" style="vertical-align:baseline;" border="0" /> </h3>
<p class="decl">virtual void convert(<br />&nbsp;&nbsp;&nbsp;&nbsp;float &amp; val<br />) const = 0;</p>
<div class="description">
<p></p>
</div>
<h3><a name="5509">convert</a> <img src="images/virtual.gif" alt="virtual" title="virtual" style="vertical-align:baseline;" border="0" /> </h3>
<p class="decl">virtual void convert(<br />&nbsp;&nbsp;&nbsp;&nbsp;double &amp; val<br />) const = 0;</p>
<div class="description">
<p></p>
</div>
<h3><a name="5511">convert</a> <img src="images/virtual.gif" alt="virtual" title="virtual" style="vertical-align:baseline;" border="0" /> </h3>
<p class="decl">virtual void convert(<br />&nbsp;&nbsp;&nbsp;&nbsp;char &amp; val<br />) const = 0;</p>
<div class="description">
<p></p>
</div>
<h3><a name="5513">convert</a> <img src="images/virtual.gif" alt="virtual" title="virtual" style="vertical-align:baseline;" border="0" /> </h3>
<p class="decl">virtual void convert(<br />&nbsp;&nbsp;&nbsp;&nbsp;std::string &amp; val<br />) const = 0;</p>
<div class="description">
<p></p>
</div>
<h3><a name="5496">isArray</a> <img src="images/virtual.gif" alt="virtual" title="virtual" style="vertical-align:baseline;" border="0" /> </h3>
<p class="decl">virtual bool isArray() const = 0;</p>
<div class="description">
<p></p>
</div>
<h3><a name="5497">isInteger</a> <img src="images/virtual.gif" alt="virtual" title="virtual" style="vertical-align:baseline;" border="0" /> </h3>
<p class="decl">virtual bool isInteger() const = 0;</p>
<div class="description">
<p></p>
</div>
<h3><a name="5499">isNumeric</a> <img src="images/virtual.gif" alt="virtual" title="virtual" style="vertical-align:baseline;" border="0" /> </h3>
<p class="decl">virtual bool isNumeric() const = 0;</p>
<div class="description">
<p></p>
</div>
<h3><a name="5498">isSigned</a> <img src="images/virtual.gif" alt="virtual" title="virtual" style="vertical-align:baseline;" border="0" /> </h3>
<p class="decl">virtual bool isSigned() const = 0;</p>
<div class="description">
<p></p>
</div>
<h3><a name="5500">isString</a> <img src="images/virtual.gif" alt="virtual" title="virtual" style="vertical-align:baseline;" border="0" /> </h3>
<p class="decl">virtual bool isString() const = 0;</p>
<div class="description">
<p></p>
</div>
<h3><a name="5473">type</a> <img src="images/virtual.gif" alt="virtual" title="virtual" style="vertical-align:baseline;" border="0" /> </h3>
<p class="decl">virtual const std::type_info &amp; type() const = 0;</p>
<div class="description">
<p>Returns the type information of the stored content. </p>
</div>
<h3><a name="5524">convertSignedFloatToUnsigned</a> <img src="images/protected.gif" alt="protected" title="protected" style="vertical-align:baseline;" border="0" />  <img src="images/inline.gif" alt="inline" title="inline" style="vertical-align:baseline;" border="0" /> </h3>
<p class="decl">template &lt; typename F, typename T &gt; void convertSignedFloatToUnsigned(<br />&nbsp;&nbsp;&nbsp;&nbsp;const F &amp; from,<br />&nbsp;&nbsp;&nbsp;&nbsp;T &amp; to<br />) const;</p>
<div class="description">
<p>This function is meant for converting floating point data types to unsigned integral data types. Negative values can not be converted and if one is  encountered, <a href="Poco.RangeException.html" title="class Poco::RangeException">RangeException</a> is thrown.  If uper limit is within the target data type limits, the conversion is performed. </p>
</div>
<h3><a name="5521">convertSignedToUnsigned</a> <img src="images/protected.gif" alt="protected" title="protected" style="vertical-align:baseline;" border="0" />  <img src="images/inline.gif" alt="inline" title="inline" style="vertical-align:baseline;" border="0" /> </h3>
<p class="decl">template &lt; typename F, typename T &gt; void convertSignedToUnsigned(<br />&nbsp;&nbsp;&nbsp;&nbsp;const F &amp; from,<br />&nbsp;&nbsp;&nbsp;&nbsp;T &amp; to<br />) const;</p>
<div class="description">
<p>This function is meant for converting signed integral data types to unsigned data types. Negative values can not be converted and if one is  encountered, <a href="Poco.RangeException.html" title="class Poco::RangeException">RangeException</a> is thrown.  If upper limit is within the target data type limits, the conversion is performed. </p>
</div>
<h3><a name="5515">convertToSmaller</a> <img src="images/protected.gif" alt="protected" title="protected" style="vertical-align:baseline;" border="0" />  <img src="images/inline.gif" alt="inline" title="inline" style="vertical-align:baseline;" border="0" /> </h3>
<p class="decl">template &lt; typename F, typename T &gt; void convertToSmaller(<br />&nbsp;&nbsp;&nbsp;&nbsp;const F &amp; from,<br />&nbsp;&nbsp;&nbsp;&nbsp;T &amp; to<br />) const;</p>
<div class="description">
<p>This function is meant to convert signed numeric values from larger to smaller type. It checks the upper and lower bound and if from value is within limits of type T (i.e. check calls do not throw),  it is converted. </p>
</div>
<h3><a name="5518">convertToSmallerUnsigned</a> <img src="images/protected.gif" alt="protected" title="protected" style="vertical-align:baseline;" border="0" />  <img src="images/inline.gif" alt="inline" title="inline" style="vertical-align:baseline;" border="0" /> </h3>
<p class="decl">template &lt; typename F, typename T &gt; void convertToSmallerUnsigned(<br />&nbsp;&nbsp;&nbsp;&nbsp;const F &amp; from,<br />&nbsp;&nbsp;&nbsp;&nbsp;T &amp; to<br />) const;</p>
<div class="description">
<p>This function is meant for converting unsigned integral data types, from larger to smaller type. Since lower limit is always 0 for unigned types,  only the upper limit is checked, thus saving some cycles compared to the signed  version of the function. If the value to be converted is smaller than the maximum value for the target type, the conversion is performed. </p>
</div>
<h3><a name="5527">convertUnsignedToSigned</a> <img src="images/protected.gif" alt="protected" title="protected" style="vertical-align:baseline;" border="0" />  <img src="images/inline.gif" alt="inline" title="inline" style="vertical-align:baseline;" border="0" /> </h3>
<p class="decl">template &lt; typename F, typename T &gt; void convertUnsignedToSigned(<br />&nbsp;&nbsp;&nbsp;&nbsp;const F &amp; from,<br />&nbsp;&nbsp;&nbsp;&nbsp;T &amp; to<br />) const;</p>
<div class="description">
<p>This function is meant for converting unsigned integral data types to unsigned data types. Negative values can not be converted and if one is  encountered, <a href="Poco.RangeException.html" title="class Poco::RangeException">RangeException</a> is thrown.  If upper limit is within the target data type limits, the converiosn is performed. </p>
</div>
<p class="footer">POCO C++ Libraries 1.3.6-all<br />
Copyright &copy; 2009, <a href="http://pocoproject.org/" target="_blank">Applied Informatics Software Engineering GmbH and Contributors</a></p>

</div>
</body>
</html>