IT_Bus::NillableValue< T > Class Template Reference

#include <it_bus/nillable_value.h>

Inheritance diagram for IT_Bus::NillableValue< T >:

IT_Bus::NillableValueBase< T > IT_Bus::Nillable IT_Bus::AnyType IT_Bus::ImplementationDetails IT_Reflect::ReflectedNillableValue< T > List of all members.

Detailed Description

template<class T>
class IT_Bus::NillableValue< T >

Nillable template implementation that keeps the data object in a member variable.

Note: This template can only be used for generated types that have a working copy constructor and assignment operator. it cannot be used for primitive and builtin-types

See the header file for complete method details.

Definition at line 25 of file nillable_value.h.

Public Member Functions

 NillableValue ()
IT_EXPLICIT NillableValue (const T &other)
IT_EXPLICIT NillableValue (const T *other)
virtual ~NillableValue ()
NillableValueoperator= (const NillableValue &other)
virtual IT_Reflect::Reflectionget_reflection () throw ((IT_Reflect::ReflectException))
 Return an instance of the IT_Reflect::Reflection type that encapsulates this instance.
virtual const IT_Reflect::Reflectionget_reflection () const throw ((IT_Reflect::ReflectException))
 Return an instance of the IT_Reflect::Reflection type that encapsulates this instance.
virtual AnyTypecopy (const AnyType &other)
 Returns a reference to an AnyType that is a copy of the AnyType parameter.
virtual const QNameget_type () const
 Returns the IT_Bus::QName for the type.
NillableValueoperator= (const T &rhs)
NillableValueoperator= (const T *rhs)


Member Function Documentation

template<class T>
IT_Reflect::Reflection * IT_Bus::NillableValue< T >::get_reflection (  )  throw ((IT_Reflect::ReflectException)) [virtual]

Return an instance of the IT_Reflect::Reflection type that encapsulates this instance.

Returns:
IT_Reflect::Reflection
Exceptions:
IT_Reflect::ReflectException 

Reimplemented from IT_Bus::AnyType.

Reimplemented in IT_Reflect::ReflectedNillableValue< T >.

Definition at line 119 of file nillable_value.h.

References IT_Bus::NillableValueBase< T >::get(), and IT_Bus::NillableValueBase< T >::is_nil().

template<class T>
const IT_Reflect::Reflection * IT_Bus::NillableValue< T >::get_reflection (  )  const throw ((IT_Reflect::ReflectException)) [virtual]

Return an instance of the IT_Reflect::Reflection type that encapsulates this instance.

Returns:
IT_Reflect::Reflection
Exceptions:
IT_Reflect::ReflectException 

Reimplemented from IT_Bus::AnyType.

Reimplemented in IT_Reflect::ReflectedNillableValue< T >.

Definition at line 127 of file nillable_value.h.

template<class T>
AnyType & IT_Bus::NillableValue< T >::copy ( const AnyType other  )  [virtual]

Returns a reference to an AnyType that is a copy of the AnyType parameter.

Derived classes override this method, providing an appropriate implementation. In this base class, this method is not supported; an exception is always thrown.

Parameters:
AnyType to be copied.
Returns:
A reference to AnyType.
Exceptions:
IT_Bus::Exception with message "Copy not supported"

Reimplemented from IT_Bus::NillableValueBase< T >.

Definition at line 135 of file nillable_value.h.

template<class T>
const QName & IT_Bus::NillableValue< T >::get_type (  )  const [virtual]

Returns the IT_Bus::QName for the type.

Derived subclasses implement this method and return their QName.

Returns:
IT_Bus::QName.

Reimplemented from IT_Bus::NillableValueBase< T >.

Definition at line 96 of file nillable_value.h.


Generated on Tue Mar 20 15:28:04 2007 for Artix by  doxygen 1.5.1-p1