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 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 261 262 263 264 265 266 267 268 269 270 271 272 273 274 275 276 277 278 279 280 281 282 283 284 285 286 287 288 289 290 291 292 293 294 295 296 297 298 299 300 301 302 303 304 305 306 307 308 309 310 311 312 313 314 315 316 317 318 319 320 321 322 323 324 325 326 327 328 329 330 331 332 333 334 335 336 337 338 339 340 341 342 343 344 345 346 347 348 349 350 351 352 353 354 355 356 357 358 359 360 361 362 363 364 365 366 367 368 369 370 371 372 373 374 375 376 377 378 379 380 381 382
|
<!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::DynamicAny</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 DynamicAny</h1>
</div>
<div class="body">
<p>
<b>Library:</b> Foundation<br />
<b>Package:</b> Core<br />
<b>Header:</b> Poco/DynamicAny.h</p>
<h2>Description</h2>
<div class="description">
<p><a href="Poco.DynamicAny.html" title="class Poco::DynamicAny">DynamicAny</a> allows to store data of different types and to convert between these types transparently. <a href="Poco.DynamicAny.html" title="class Poco::DynamicAny">DynamicAny</a> puts forth the best effort to provide intuitive and reasonable conversion semantics and prevent unexpected data loss, particularly when performing narrowing or signedness conversions of numeric data types. </p>
<p>An attempt to convert or extract from a non-initialized (empty) <a href="Poco.DynamicAny.html" title="class Poco::DynamicAny">DynamicAny</a> variable shall result in an exception being thrown. </p>
<p>Loss of signedness is not allowed for numeric values. This means that if an attempt is made to convert the internal value which is a negative signed integer to an unsigned integer type storage, a <a href="Poco.RangeException.html" title="class Poco::RangeException">RangeException</a> is thrown. Overflow is not allowed, so if the internal value is a larger number than the target numeric type size can accomodate, a <a href="Poco.RangeException.html" title="class Poco::RangeException">RangeException</a> is thrown. </p>
<p>Precision loss, such as in conversion from floating-point types to integers or from double to float on platforms where they differ in size (provided internal actual value fits in float min/max range), is allowed. </p>
<p>String truncation is allowed — it is possible to convert between string and character when string length is greater than 1. An empty string gets converted to the char '\0', a non-empty string is truncated to the first character. </p>
<p>Boolean conversion is performed as follows: </p>
<p>A string value "false" (not case sensitive), "0" or "" (empty string) can be converted to a boolean value false, any other string not being false by the above criteria evaluates to true (e.g: "hi" -> true). Integer 0 values are false, everything else is true. Floating point values equal to the minimal FP representation on a given platform are false, everything else is true. </p>
<p>Arithmetic operations with POD types as well as between <a href="Poco.DynamicAny.html" title="class Poco::DynamicAny">DynamicAny</a>'s are supported, subject to following limitations: </p>
<p>- for std::string and const char* values, only '+' and '+=' operations are supported </p>
<p>- for integral and floating point numeric values, following operations are supported: </p>
<pre>'+', '+=', '-', '-=', '*', '*=' , '/' and '/='
</pre>
<p>- for integral values, following operations are supported: </p>
<pre>prefix and postfix increment (++) and decement (--)
</pre>
<p>- for all other types, <a href="Poco.InvalidArgumentException.html" title="class Poco::InvalidArgumentException">InvalidArgumentException</a> is thrown upon attempt of an arithmetic operation </p>
<p>A <a href="Poco.DynamicAny.html" title="class Poco::DynamicAny">DynamicAny</a> can be created from and converted to a value of any type for which a specialization of <a href="Poco.DynamicAnyHolderImpl.html" title="class Poco::DynamicAnyHolderImpl">DynamicAnyHolderImpl</a> is available. For supported types, see <a href="Poco.DynamicAnyHolder.html" title="class Poco::DynamicAnyHolder">DynamicAnyHolder</a> documentation. </p>
</div>
<h2>Member Summary</h2>
<p><b>Member Functions: </b><a href="Poco.DynamicAny.html#4833" title="Poco::DynamicAny::convert()">convert</a>, <a href="Poco.DynamicAny.html#4927" title="Poco::DynamicAny::empty()">empty</a>, <a href="Poco.DynamicAny.html#4837" title="Poco::DynamicAny::extract()">extract</a>, <a href="Poco.DynamicAny.html#4921" title="Poco::DynamicAny::isArray()">isArray</a>, <a href="Poco.DynamicAny.html#4928" title="Poco::DynamicAny::isEmpty()">isEmpty</a>, <a href="Poco.DynamicAny.html#4929" title="Poco::DynamicAny::isInteger()">isInteger</a>, <a href="Poco.DynamicAny.html#4931" title="Poco::DynamicAny::isNumeric()">isNumeric</a>, <a href="Poco.DynamicAny.html#4930" title="Poco::DynamicAny::isSigned()">isSigned</a>, <a href="Poco.DynamicAny.html#4932" title="Poco::DynamicAny::isString()">isString</a>, <a href="Poco.DynamicAny.html#4922" title="Poco::DynamicAny::operator()">operator</a>, <a href="Poco.DynamicAny.html#4840" title="Poco::DynamicAny::operator !()">operator !</a>, <a href="Poco.DynamicAny.html#4891" title="Poco::DynamicAny::operator !=()">operator !=</a>, <a href="Poco.DynamicAny.html#4917" title="Poco::DynamicAny::operator &&()">operator &&</a>, <a href="Poco.DynamicAny.html#4869" title="Poco::DynamicAny::operator *()">operator *</a>, <a href="Poco.DynamicAny.html#4873" title="Poco::DynamicAny::operator *=()">operator *=</a>, <a href="Poco.DynamicAny.html#4843" title="Poco::DynamicAny::operator +()">operator +</a>, <a href="Poco.DynamicAny.html#4849" title="Poco::DynamicAny::operator ++()">operator ++</a>, <a href="Poco.DynamicAny.html#4855" title="Poco::DynamicAny::operator +=()">operator +=</a>, <a href="Poco.DynamicAny.html#4861" title="Poco::DynamicAny::operator -()">operator -</a>, <a href="Poco.DynamicAny.html#4852" title="Poco::DynamicAny::operator --()">operator --</a>, <a href="Poco.DynamicAny.html#4865" title="Poco::DynamicAny::operator -=()">operator -=</a>, <a href="Poco.DynamicAny.html#4877" title="Poco::DynamicAny::operator /()">operator /</a>, <a href="Poco.DynamicAny.html#4881" title="Poco::DynamicAny::operator /=()">operator /=</a>, <a href="Poco.DynamicAny.html#4897" title="Poco::DynamicAny::operator <()">operator <</a>, <a href="Poco.DynamicAny.html#4901" title="Poco::DynamicAny::operator <=()">operator <=</a>, <a href="Poco.DynamicAny.html#4838" title="Poco::DynamicAny::operator =()">operator =</a>, <a href="Poco.DynamicAny.html#4885" title="Poco::DynamicAny::operator ==()">operator ==</a>, <a href="Poco.DynamicAny.html#4905" title="Poco::DynamicAny::operator >()">operator ></a>, <a href="Poco.DynamicAny.html#4909" title="Poco::DynamicAny::operator >=()">operator >=</a>, <a href="Poco.DynamicAny.html#4836" title="Poco::DynamicAny::operator T()">operator T</a>, <a href="Poco.DynamicAny.html#4913" title="Poco::DynamicAny::operator ||()">operator ||</a>, <a href="Poco.DynamicAny.html#4831" title="Poco::DynamicAny::swap()">swap</a>, <a href="Poco.DynamicAny.html#4926" title="Poco::DynamicAny::type()">type</a></p>
<h2>Constructors</h2>
<h3><a name="4823">DynamicAny</a></h3>
<p class="decl"><a href="Poco.DynamicAny.html" title="class Poco::DynamicAny">DynamicAny</a>();</p>
<div class="description">
<p>Creates an empty <a href="Poco.DynamicAny.html" title="class Poco::DynamicAny">DynamicAny</a>. </p>
</div>
<h3><a name="4824">DynamicAny</a> <img src="images/inline.gif" alt="inline" title="inline" style="vertical-align:baseline;" border="0" /> </h3>
<p class="decl">template < typename T > <a href="Poco.DynamicAny.html" title="class Poco::DynamicAny">DynamicAny</a>(<br /> const T & val<br />);</p>
<div class="description">
<p>Creates the <a href="Poco.DynamicAny.html" title="class Poco::DynamicAny">DynamicAny</a> from the given value. </p>
</div>
<h3><a name="4826">DynamicAny</a></h3>
<p class="decl"><a href="Poco.DynamicAny.html" title="class Poco::DynamicAny">DynamicAny</a>(<br /> const char * pVal<br />);</p>
<div class="description">
<p></p>
</div>
<h3><a name="4828">DynamicAny</a></h3>
<p class="decl"><a href="Poco.DynamicAny.html" title="class Poco::DynamicAny">DynamicAny</a>(<br /> const <a href="Poco.DynamicAny.html" title="class Poco::DynamicAny">DynamicAny</a> & other<br />);</p>
<div class="description">
<p>Copy constructor. </p>
</div>
<h2>Destructor</h2>
<h3><a name="4830">~DynamicAny</a></h3>
<p class="decl">~<a href="Poco.DynamicAny.html" title="class Poco::DynamicAny">DynamicAny</a>();</p>
<div class="description">
<p>Destroys the <a href="Poco.DynamicAny.html" title="class Poco::DynamicAny">DynamicAny</a>. </p>
</div>
<h2>Member Functions</h2>
<h3><a name="4833">convert</a> <img src="images/inline.gif" alt="inline" title="inline" style="vertical-align:baseline;" border="0" /> </h3>
<p class="decl">template < typename T > void convert(<br /> T & val<br />) const;</p>
<div class="description">
<p>Invoke this method to perform a safe conversion. </p>
<p>Example usage: </p>
<pre>DynamicAny any("42");
int i;
any.convert(i);
</pre>
<p>Throws a <a href="Poco.RangeException.html" title="class Poco::RangeException">RangeException</a> if the value does not fit into the result variable. Throws a <a href="Poco.NotImplementedException.html" title="class Poco::NotImplementedException">NotImplementedException</a> if conversion is not available for the given type. Throws <a href="Poco.InvalidAccessException.html" title="class Poco::InvalidAccessException">InvalidAccessException</a> if <a href="Poco.DynamicAny.html" title="class Poco::DynamicAny">DynamicAny</a> is empty. </p>
</div>
<h3><a name="4835">convert</a> <img src="images/inline.gif" alt="inline" title="inline" style="vertical-align:baseline;" border="0" /> </h3>
<p class="decl">template < typename T > T convert() const;</p>
<div class="description">
<p>Invoke this method to perform a safe conversion. </p>
<p>Example usage: </p>
<pre>DynamicAny any("42");
int i = any.convert<int>();
</pre>
<p>Throws a <a href="Poco.RangeException.html" title="class Poco::RangeException">RangeException</a> if the value does not fit into the result variable. Throws a <a href="Poco.NotImplementedException.html" title="class Poco::NotImplementedException">NotImplementedException</a> if conversion is not available for the given type. Throws <a href="Poco.InvalidAccessException.html" title="class Poco::InvalidAccessException">InvalidAccessException</a> if <a href="Poco.DynamicAny.html" title="class Poco::DynamicAny">DynamicAny</a> is empty. </p>
</div>
<h3><a name="4927">empty</a></h3>
<p class="decl">void empty();</p>
<div class="description">
<p>Empties <a href="Poco.DynamicAny.html" title="class Poco::DynamicAny">DynamicAny</a>. </p>
</div>
<h3><a name="4837">extract</a> <img src="images/inline.gif" alt="inline" title="inline" style="vertical-align:baseline;" border="0" /> </h3>
<p class="decl">template < typename T > const T & extract() const;</p>
<div class="description">
<p>Returns a const reference to the actual value. </p>
<p>Must be instantiated with the exact type of the stored value, otherwise a <a href="Poco.BadCastException.html" title="class Poco::BadCastException">BadCastException</a> is thrown. Throws <a href="Poco.InvalidAccessException.html" title="class Poco::InvalidAccessException">InvalidAccessException</a> if <a href="Poco.DynamicAny.html" title="class Poco::DynamicAny">DynamicAny</a> is empty. </p>
</div>
<h3><a name="4921">isArray</a> <img src="images/inline.gif" alt="inline" title="inline" style="vertical-align:baseline;" border="0" /> </h3>
<p class="decl">bool isArray() const;</p>
<div class="description">
<p>Returns true if <a href="Poco.DynamicAny.html" title="class Poco::DynamicAny">DynamicAny</a> represents a vector </p>
</div>
<h3><a name="4928">isEmpty</a> <img src="images/inline.gif" alt="inline" title="inline" style="vertical-align:baseline;" border="0" /> </h3>
<p class="decl">bool isEmpty() const;</p>
<div class="description">
<p>Returns true if empty. </p>
</div>
<h3><a name="4929">isInteger</a> <img src="images/inline.gif" alt="inline" title="inline" style="vertical-align:baseline;" border="0" /> </h3>
<p class="decl">bool isInteger() const;</p>
<div class="description">
<p>Returns true if stored value is integer. </p>
</div>
<h3><a name="4931">isNumeric</a> <img src="images/inline.gif" alt="inline" title="inline" style="vertical-align:baseline;" border="0" /> </h3>
<p class="decl">bool isNumeric() const;</p>
<div class="description">
<p>Returns true if stored value is numeric. Returns false for numeric strings (e.g. "123" is string, not number) </p>
</div>
<h3><a name="4930">isSigned</a> <img src="images/inline.gif" alt="inline" title="inline" style="vertical-align:baseline;" border="0" /> </h3>
<p class="decl">bool isSigned() const;</p>
<div class="description">
<p>Returns true if stored value is signed. </p>
</div>
<h3><a name="4932">isString</a> <img src="images/inline.gif" alt="inline" title="inline" style="vertical-align:baseline;" border="0" /> </h3>
<p class="decl">bool isString() const;</p>
<div class="description">
<p>Returns true if stored value is std::string. </p>
</div>
<h3><a name="4922">operator</a> <img src="images/inline.gif" alt="inline" title="inline" style="vertical-align:baseline;" border="0" /> </h3>
<p class="decl">template < typename T > <a href="Poco.DynamicAny.html" title="class Poco::DynamicAny">DynamicAny</a> & operator[] (<br /> T n<br />);</p>
<div class="description">
<p>Index operator, only use on DynamicAnys where isArray returns true! In all other cases <a href="Poco.InvalidAccessException.html" title="class Poco::InvalidAccessException">InvalidAccessException</a> is thrown. </p>
</div>
<h3><a name="4924">operator</a> <img src="images/inline.gif" alt="inline" title="inline" style="vertical-align:baseline;" border="0" /> </h3>
<p class="decl">template < typename T > const <a href="Poco.DynamicAny.html" title="class Poco::DynamicAny">DynamicAny</a> & operator[] (<br /> T n<br />) const;</p>
<div class="description">
<p>const Index operator, only use on DynamicAnys where isArray returns true! In all other cases <a href="Poco.InvalidAccessException.html" title="class Poco::InvalidAccessException">InvalidAccessException</a> is thrown. </p>
</div>
<h3><a name="4840">operator !</a> <img src="images/inline.gif" alt="inline" title="inline" style="vertical-align:baseline;" border="0" /> </h3>
<p class="decl">bool operator ! () const;</p>
<div class="description">
<p>Logical NOT operator. </p>
</div>
<h3><a name="4891">operator !=</a> <img src="images/inline.gif" alt="inline" title="inline" style="vertical-align:baseline;" border="0" /> </h3>
<p class="decl">template < typename T > bool operator != (<br /> const T & other<br />) const;</p>
<div class="description">
<p>Inequality operator </p>
</div>
<h3><a name="4893">operator !=</a></h3>
<p class="decl">bool operator != (<br /> const <a href="Poco.DynamicAny.html" title="class Poco::DynamicAny">DynamicAny</a> & other<br />) const;</p>
<div class="description">
<p>Inequality operator overload for <a href="Poco.DynamicAny.html" title="class Poco::DynamicAny">DynamicAny</a> </p>
</div>
<h3><a name="4895">operator !=</a></h3>
<p class="decl">bool operator != (<br /> const char * other<br />) const;</p>
<div class="description">
<p>Inequality operator overload for const char* </p>
</div>
<h3><a name="4917">operator &&</a> <img src="images/inline.gif" alt="inline" title="inline" style="vertical-align:baseline;" border="0" /> </h3>
<p class="decl">template < typename T > bool operator && (<br /> const T & other<br />) const;</p>
<div class="description">
<p>Logical AND operator </p>
</div>
<h3><a name="4919">operator &&</a></h3>
<p class="decl">bool operator && (<br /> const <a href="Poco.DynamicAny.html" title="class Poco::DynamicAny">DynamicAny</a> & other<br />) const;</p>
<div class="description">
<p>Logical AND operator operator overload for <a href="Poco.DynamicAny.html" title="class Poco::DynamicAny">DynamicAny</a> </p>
</div>
<h3><a name="4869">operator *</a> <img src="images/inline.gif" alt="inline" title="inline" style="vertical-align:baseline;" border="0" /> </h3>
<p class="decl">template < typename T > const <a href="Poco.DynamicAny.html" title="class Poco::DynamicAny">DynamicAny</a> operator * (<br /> const T & other<br />) const;</p>
<div class="description">
<p>Multiplication operator for multiplying <a href="Poco.DynamicAny.html" title="class Poco::DynamicAny">DynamicAny</a> with POD </p>
</div>
<h3><a name="4871">operator *</a></h3>
<p class="decl">const <a href="Poco.DynamicAny.html" title="class Poco::DynamicAny">DynamicAny</a> operator * (<br /> const <a href="Poco.DynamicAny.html" title="class Poco::DynamicAny">DynamicAny</a> & other<br />) const;</p>
<div class="description">
<p>Multiplication operator overload for <a href="Poco.DynamicAny.html" title="class Poco::DynamicAny">DynamicAny</a> </p>
</div>
<h3><a name="4873">operator *=</a> <img src="images/inline.gif" alt="inline" title="inline" style="vertical-align:baseline;" border="0" /> </h3>
<p class="decl">template < typename T > <a href="Poco.DynamicAny.html" title="class Poco::DynamicAny">DynamicAny</a> & operator *= (<br /> const T & other<br />);</p>
<div class="description">
<p>Multiplication assignment operator </p>
</div>
<h3><a name="4875">operator *=</a></h3>
<p class="decl"><a href="Poco.DynamicAny.html" title="class Poco::DynamicAny">DynamicAny</a> & operator *= (<br /> const <a href="Poco.DynamicAny.html" title="class Poco::DynamicAny">DynamicAny</a> & other<br />);</p>
<div class="description">
<p>Multiplication assignment operator overload for <a href="Poco.DynamicAny.html" title="class Poco::DynamicAny">DynamicAny</a> </p>
</div>
<h3><a name="4843">operator +</a> <img src="images/inline.gif" alt="inline" title="inline" style="vertical-align:baseline;" border="0" /> </h3>
<p class="decl">template < typename T > const <a href="Poco.DynamicAny.html" title="class Poco::DynamicAny">DynamicAny</a> operator + (<br /> const T & other<br />) const;</p>
<div class="description">
<p>Addition operator for adding POD to <a href="Poco.DynamicAny.html" title="class Poco::DynamicAny">DynamicAny</a> </p>
</div>
<h3><a name="4845">operator +</a></h3>
<p class="decl">const <a href="Poco.DynamicAny.html" title="class Poco::DynamicAny">DynamicAny</a> operator + (<br /> const <a href="Poco.DynamicAny.html" title="class Poco::DynamicAny">DynamicAny</a> & other<br />) const;</p>
<div class="description">
<p>Addition operator specialization for <a href="Poco.DynamicAny.html" title="class Poco::DynamicAny">DynamicAny</a> </p>
</div>
<h3><a name="4847">operator +</a></h3>
<p class="decl">const <a href="Poco.DynamicAny.html" title="class Poco::DynamicAny">DynamicAny</a> operator + (<br /> const char * other<br />) const;</p>
<div class="description">
<p>Addition operator specialization for adding const char* to <a href="Poco.DynamicAny.html" title="class Poco::DynamicAny">DynamicAny</a> </p>
</div>
<h3><a name="4849">operator ++</a></h3>
<p class="decl"><a href="Poco.DynamicAny.html" title="class Poco::DynamicAny">DynamicAny</a> & operator ++ ();</p>
<div class="description">
<p>Pre-increment operator </p>
</div>
<h3><a name="4850">operator ++</a></h3>
<p class="decl">const <a href="Poco.DynamicAny.html" title="class Poco::DynamicAny">DynamicAny</a> operator ++ (<br /> int<br />);</p>
<div class="description">
<p>Post-increment operator </p>
</div>
<h3><a name="4855">operator +=</a> <img src="images/inline.gif" alt="inline" title="inline" style="vertical-align:baseline;" border="0" /> </h3>
<p class="decl">template < typename T > <a href="Poco.DynamicAny.html" title="class Poco::DynamicAny">DynamicAny</a> & operator += (<br /> const T & other<br />);</p>
<div class="description">
<p>Addition assignment operator for addition/assignment of POD to <a href="Poco.DynamicAny.html" title="class Poco::DynamicAny">DynamicAny</a>. </p>
</div>
<h3><a name="4857">operator +=</a></h3>
<p class="decl"><a href="Poco.DynamicAny.html" title="class Poco::DynamicAny">DynamicAny</a> & operator += (<br /> const <a href="Poco.DynamicAny.html" title="class Poco::DynamicAny">DynamicAny</a> & other<br />);</p>
<div class="description">
<p>Addition assignment operator overload for <a href="Poco.DynamicAny.html" title="class Poco::DynamicAny">DynamicAny</a> </p>
</div>
<h3><a name="4859">operator +=</a></h3>
<p class="decl"><a href="Poco.DynamicAny.html" title="class Poco::DynamicAny">DynamicAny</a> & operator += (<br /> const char * other<br />);</p>
<div class="description">
<p>Addition assignment operator overload for const char* </p>
</div>
<h3><a name="4861">operator -</a> <img src="images/inline.gif" alt="inline" title="inline" style="vertical-align:baseline;" border="0" /> </h3>
<p class="decl">template < typename T > const <a href="Poco.DynamicAny.html" title="class Poco::DynamicAny">DynamicAny</a> operator - (<br /> const T & other<br />) const;</p>
<div class="description">
<p>Subtraction operator for subtracting POD from <a href="Poco.DynamicAny.html" title="class Poco::DynamicAny">DynamicAny</a> </p>
</div>
<h3><a name="4863">operator -</a></h3>
<p class="decl">const <a href="Poco.DynamicAny.html" title="class Poco::DynamicAny">DynamicAny</a> operator - (<br /> const <a href="Poco.DynamicAny.html" title="class Poco::DynamicAny">DynamicAny</a> & other<br />) const;</p>
<div class="description">
<p>Subtraction operator overload for <a href="Poco.DynamicAny.html" title="class Poco::DynamicAny">DynamicAny</a> </p>
</div>
<h3><a name="4852">operator --</a></h3>
<p class="decl"><a href="Poco.DynamicAny.html" title="class Poco::DynamicAny">DynamicAny</a> & operator -- ();</p>
<div class="description">
<p>Pre-decrement operator </p>
</div>
<h3><a name="4853">operator --</a></h3>
<p class="decl">const <a href="Poco.DynamicAny.html" title="class Poco::DynamicAny">DynamicAny</a> operator -- (<br /> int<br />);</p>
<div class="description">
<p>Post-decrement operator </p>
</div>
<h3><a name="4865">operator -=</a> <img src="images/inline.gif" alt="inline" title="inline" style="vertical-align:baseline;" border="0" /> </h3>
<p class="decl">template < typename T > <a href="Poco.DynamicAny.html" title="class Poco::DynamicAny">DynamicAny</a> & operator -= (<br /> const T & other<br />);</p>
<div class="description">
<p>Subtraction assignment operator </p>
</div>
<h3><a name="4867">operator -=</a></h3>
<p class="decl"><a href="Poco.DynamicAny.html" title="class Poco::DynamicAny">DynamicAny</a> & operator -= (<br /> const <a href="Poco.DynamicAny.html" title="class Poco::DynamicAny">DynamicAny</a> & other<br />);</p>
<div class="description">
<p>Subtraction assignment operator overload for <a href="Poco.DynamicAny.html" title="class Poco::DynamicAny">DynamicAny</a> </p>
</div>
<h3><a name="4877">operator /</a> <img src="images/inline.gif" alt="inline" title="inline" style="vertical-align:baseline;" border="0" /> </h3>
<p class="decl">template < typename T > const <a href="Poco.DynamicAny.html" title="class Poco::DynamicAny">DynamicAny</a> operator / (<br /> const T & other<br />) const;</p>
<div class="description">
<p>Division operator for dividing <a href="Poco.DynamicAny.html" title="class Poco::DynamicAny">DynamicAny</a> with POD </p>
</div>
<h3><a name="4879">operator /</a></h3>
<p class="decl">const <a href="Poco.DynamicAny.html" title="class Poco::DynamicAny">DynamicAny</a> operator / (<br /> const <a href="Poco.DynamicAny.html" title="class Poco::DynamicAny">DynamicAny</a> & other<br />) const;</p>
<div class="description">
<p>Division operator overload for <a href="Poco.DynamicAny.html" title="class Poco::DynamicAny">DynamicAny</a> </p>
</div>
<h3><a name="4881">operator /=</a> <img src="images/inline.gif" alt="inline" title="inline" style="vertical-align:baseline;" border="0" /> </h3>
<p class="decl">template < typename T > <a href="Poco.DynamicAny.html" title="class Poco::DynamicAny">DynamicAny</a> & operator /= (<br /> const T & other<br />);</p>
<div class="description">
<p>Division assignment operator </p>
</div>
<h3><a name="4883">operator /=</a></h3>
<p class="decl"><a href="Poco.DynamicAny.html" title="class Poco::DynamicAny">DynamicAny</a> & operator /= (<br /> const <a href="Poco.DynamicAny.html" title="class Poco::DynamicAny">DynamicAny</a> & other<br />);</p>
<div class="description">
<p>Division assignment operator specialization for <a href="Poco.DynamicAny.html" title="class Poco::DynamicAny">DynamicAny</a> </p>
</div>
<h3><a name="4897">operator <</a> <img src="images/inline.gif" alt="inline" title="inline" style="vertical-align:baseline;" border="0" /> </h3>
<p class="decl">template < typename T > bool operator < (<br /> const T & other<br />) const;</p>
<div class="description">
<p>Less than operator </p>
</div>
<h3><a name="4899">operator <</a></h3>
<p class="decl">bool operator < (<br /> const <a href="Poco.DynamicAny.html" title="class Poco::DynamicAny">DynamicAny</a> & other<br />) const;</p>
<div class="description">
<p>Less than operator overload for <a href="Poco.DynamicAny.html" title="class Poco::DynamicAny">DynamicAny</a> </p>
</div>
<h3><a name="4901">operator <=</a> <img src="images/inline.gif" alt="inline" title="inline" style="vertical-align:baseline;" border="0" /> </h3>
<p class="decl">template < typename T > bool operator <= (<br /> const T & other<br />) const;</p>
<div class="description">
<p>Less than or equal operator </p>
</div>
<h3><a name="4903">operator <=</a></h3>
<p class="decl">bool operator <= (<br /> const <a href="Poco.DynamicAny.html" title="class Poco::DynamicAny">DynamicAny</a> & other<br />) const;</p>
<div class="description">
<p>Less than or equal operator overload for <a href="Poco.DynamicAny.html" title="class Poco::DynamicAny">DynamicAny</a> </p>
</div>
<h3><a name="4838">operator =</a> <img src="images/inline.gif" alt="inline" title="inline" style="vertical-align:baseline;" border="0" /> </h3>
<p class="decl">template < typename T > <a href="Poco.DynamicAny.html" title="class Poco::DynamicAny">DynamicAny</a> & operator = (<br /> const T & other<br />);</p>
<div class="description">
<p>Assignment operator for assigning POD to <a href="Poco.DynamicAny.html" title="class Poco::DynamicAny">DynamicAny</a> </p>
</div>
<h3><a name="4841">operator =</a></h3>
<p class="decl"><a href="Poco.DynamicAny.html" title="class Poco::DynamicAny">DynamicAny</a> & operator = (<br /> const <a href="Poco.DynamicAny.html" title="class Poco::DynamicAny">DynamicAny</a> & other<br />);</p>
<div class="description">
<p>Assignment operator specialization for <a href="Poco.DynamicAny.html" title="class Poco::DynamicAny">DynamicAny</a> </p>
</div>
<h3><a name="4885">operator ==</a> <img src="images/inline.gif" alt="inline" title="inline" style="vertical-align:baseline;" border="0" /> </h3>
<p class="decl">template < typename T > bool operator == (<br /> const T & other<br />) const;</p>
<div class="description">
<p>Equality operator </p>
</div>
<h3><a name="4887">operator ==</a></h3>
<p class="decl">bool operator == (<br /> const char * other<br />) const;</p>
<div class="description">
<p>Equality operator overload for const char* </p>
</div>
<h3><a name="4889">operator ==</a></h3>
<p class="decl">bool operator == (<br /> const <a href="Poco.DynamicAny.html" title="class Poco::DynamicAny">DynamicAny</a> & other<br />) const;</p>
<div class="description">
<p>Equality operator overload for <a href="Poco.DynamicAny.html" title="class Poco::DynamicAny">DynamicAny</a> </p>
</div>
<h3><a name="4905">operator ></a> <img src="images/inline.gif" alt="inline" title="inline" style="vertical-align:baseline;" border="0" /> </h3>
<p class="decl">template < typename T > bool operator > (<br /> const T & other<br />) const;</p>
<div class="description">
<p>Greater than operator </p>
</div>
<h3><a name="4907">operator ></a></h3>
<p class="decl">bool operator > (<br /> const <a href="Poco.DynamicAny.html" title="class Poco::DynamicAny">DynamicAny</a> & other<br />) const;</p>
<div class="description">
<p>Greater than operator overload for <a href="Poco.DynamicAny.html" title="class Poco::DynamicAny">DynamicAny</a> </p>
</div>
<h3><a name="4909">operator >=</a> <img src="images/inline.gif" alt="inline" title="inline" style="vertical-align:baseline;" border="0" /> </h3>
<p class="decl">template < typename T > bool operator >= (<br /> const T & other<br />) const;</p>
<div class="description">
<p>Greater than or equal operator </p>
</div>
<h3><a name="4911">operator >=</a></h3>
<p class="decl">bool operator >= (<br /> const <a href="Poco.DynamicAny.html" title="class Poco::DynamicAny">DynamicAny</a> & other<br />) const;</p>
<div class="description">
<p>Greater than or equal operator overload for <a href="Poco.DynamicAny.html" title="class Poco::DynamicAny">DynamicAny</a> </p>
</div>
<h3><a name="4836">operator T</a> <img src="images/inline.gif" alt="inline" title="inline" style="vertical-align:baseline;" border="0" /> </h3>
<p class="decl">template < typename T > operator T() const;</p>
<div class="description">
<p>Safe conversion operator for implicit type conversions. If the requested type T is same as the type being held, the operation performed is direct extraction, otherwise it is the conversion of the value from type currently held to the one requested. </p>
<p>Throws a <a href="Poco.RangeException.html" title="class Poco::RangeException">RangeException</a> if the value does not fit into the result variable. Throws a <a href="Poco.NotImplementedException.html" title="class Poco::NotImplementedException">NotImplementedException</a> if conversion is not available for the given type. Throws <a href="Poco.InvalidAccessException.html" title="class Poco::InvalidAccessException">InvalidAccessException</a> if <a href="Poco.DynamicAny.html" title="class Poco::DynamicAny">DynamicAny</a> is empty. </p>
</div>
<h3><a name="4913">operator ||</a> <img src="images/inline.gif" alt="inline" title="inline" style="vertical-align:baseline;" border="0" /> </h3>
<p class="decl">template < typename T > bool operator || (<br /> const T & other<br />) const;</p>
<div class="description">
<p>Logical OR operator </p>
</div>
<h3><a name="4915">operator ||</a></h3>
<p class="decl">bool operator || (<br /> const <a href="Poco.DynamicAny.html" title="class Poco::DynamicAny">DynamicAny</a> & other<br />) const;</p>
<div class="description">
<p>Logical OR operator operator overload for <a href="Poco.DynamicAny.html" title="class Poco::DynamicAny">DynamicAny</a> </p>
</div>
<h3><a name="4831">swap</a> <img src="images/inline.gif" alt="inline" title="inline" style="vertical-align:baseline;" border="0" /> </h3>
<p class="decl">void swap(<br /> <a href="Poco.DynamicAny.html" title="class Poco::DynamicAny">DynamicAny</a> & other<br />);</p>
<div class="description">
<p>Swaps the content of the this <a href="Poco.DynamicAny.html" title="class Poco::DynamicAny">DynamicAny</a> with the other <a href="Poco.DynamicAny.html" title="class Poco::DynamicAny">DynamicAny</a>. </p>
</div>
<h3><a name="4926">type</a> <img src="images/inline.gif" alt="inline" title="inline" style="vertical-align:baseline;" border="0" /> </h3>
<p class="decl">const std::type_info & type() const;</p>
<div class="description">
<p>Returns the type information of the stored content. </p>
</div>
<p class="footer">POCO C++ Libraries 1.3.6-all<br />
Copyright © 2009, <a href="http://pocoproject.org/" target="_blank">Applied Informatics Software Engineering GmbH and Contributors</a></p>
</div>
</body>
</html>
|