| 
 | 
 | ||||||||||||||||
Classes being wrapped need to provide a str() method and must have a c-style string constructor. They also must support various relational operators such as ==.
| ElemInitError (class) | ElemInitError | 
| static const char* id | id | 
| static Hash _hash | _hash | 
| void  set_hash (const Hash& x) | set_hash | 
Reimplemented from Element.
| Hash  hash () | hash | 
[const]
Reimplemented from Element.
| ElemAny () | ElemAny | 
| ElemAny (const T& val) | ElemAny | 
| ElemAny (const char* c_str) | ElemAny | 
If the c-style constructor of the wrapped class throws and exception, it is caught and an ElemInitError exception is thrown. The original exception is lost.
| bool  operator== (const ElemAny<T>& rhs) | operator== | 
[const]
Invokes the == operator on the actual classes being wrapped.
Parameters:
| rhs | element to compare with. | 
Returns: whether the two values are equal.
| bool  operator< (const ElemAny<T>& rhs) | operator< | 
[const]
Invoke the < operator in the wrapped class.
Parameters:
| rhs | element to compare with. | 
Returns: whether this is less than argument.
| string  str () | str | 
[const]
Invokes the str() method of the actual class being wrapped.
Returns: string representation of element.
Reimplemented from Element.
| const T&  val () | val | 
[const]
Returns: the actual object of the class being wrapped.
| const char*  type () | type | 
[const]
Reimplemented from Element.