<!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>