Honeycomb  0.1
Component-Model Framework
Public Types | Public Member Functions | Static Public Member Functions | List of all members
honey::Property< T > Class Template Reference

Generic property. More...

#include <Property.h>

Inheritance diagram for honey::Property< T >:
Inheritance graph
[legend]
Collaboration diagram for honey::Property< T >:
Collaboration graph
[legend]

Public Types

typedef SharedPtr< PropertyPtr
 
typedef SharedPtr< const PropertyConstPtr
 
- Public Types inherited from honey::PropertyBase
typedef SharedPtr< PropertyBasePtr
 
typedef SharedPtr< const PropertyBaseConstPtr
 

Public Member Functions

 Property (const String &name)
 
 Property (const String &name, const T &val)
 
 Property (const String &name, T &&val)
 
 Property (const Property &rhs)
 
virtual const NameIdtype () const
 Get property type info. More...
 
virtual Propertyclone () const
 Create a clone of this property. More...
 
Propertyoperator= (const Property &rhs)
 
Propertyoperator= (const T &rhs)
 
Propertyoperator= (T &&rhs)
 
T & operator* ()
 
const T & operator* () const
 
T * operator-> ()
 
const T * operator-> () const
 
 operator T & ()
 
 operator const T & () const
 
template<>
auto s_type () -> const NameId &
 Integer property. More...
 
template<>
auto s_type () -> const NameId &
 Real property. More...
 
template<>
auto s_type () -> const NameId &
 String property. More...
 
template<>
auto s_type () -> const NameId &
 
template<>
auto s_type () -> const NameId &
 
template<>
auto s_type () -> const NameId &
 String list property. More...
 
- Public Member Functions inherited from honey::PropertyBase
 PropertyBase (const String &name)
 
const Stringname () const
 Get property name. More...
 
const Idid () const
 Get property id. More...
 
- Public Member Functions inherited from honey::Object
 Object (const Id &id=idnull)
 
virtual ~Object ()
 
virtual void setInstId (const Id &id)
 Set per instance id. More...
 
const IdgetInstId () const
 
- Public Member Functions inherited from honey::SharedObj< Object >
 SharedObj (Alloc &&a=Alloc()) debug_if(
 Construct with allocator that is called to deallocate this shared object when all references have been released. More...
 

Static Public Member Functions

static const NameIds_type ()
 Static function to get property type info. More...
 

Additional Inherited Members

- Protected Member Functions inherited from honey::SharedObj< Object >
void finalize ()
 Destroys object. Called when strong reference count reaches 0. May be overridden to prevent destruction. More...
 
- Protected Attributes inherited from honey::PropertyBase
const NameId _name
 
- Protected Attributes inherited from honey::Object
Id _instId
 

Detailed Description

template<class T>
class honey::Property< T >

Generic property.

Member Typedef Documentation

template<class T >
typedef SharedPtr<const Property> honey::Property< T >::ConstPtr
template<class T >
typedef SharedPtr<Property> honey::Property< T >::Ptr

Constructor & Destructor Documentation

template<class T >
honey::Property< T >::Property ( const String name)
inline
template<class T >
honey::Property< T >::Property ( const String name,
const T &  val 
)
inline
template<class T >
honey::Property< T >::Property ( const String name,
T &&  val 
)
inline
template<class T >
honey::Property< T >::Property ( const Property< T > &  rhs)
inline

Member Function Documentation

template<class T >
virtual Property& honey::Property< T >::clone ( ) const
inlinevirtual

Create a clone of this property.

Implements honey::PropertyBase.

template<class T >
honey::Property< T >::operator const T & ( ) const
inline
template<class T >
honey::Property< T >::operator T & ( )
inline
template<class T >
T& honey::Property< T >::operator* ( )
inline
template<class T >
const T& honey::Property< T >::operator* ( ) const
inline
template<class T >
T* honey::Property< T >::operator-> ( )
inline
template<class T >
const T* honey::Property< T >::operator-> ( ) const
inline
template<class T >
Property& honey::Property< T >::operator= ( const Property< T > &  rhs)
inline
template<class T >
Property& honey::Property< T >::operator= ( const T &  rhs)
inline
template<class T >
Property& honey::Property< T >::operator= ( T &&  rhs)
inline
template<>
auto honey::Property< IntList >::s_type ( ) -> const NameId&
inline
template<class T >
static const NameId& honey::Property< T >::s_type ( )
static

Static function to get property type info.

template<>
auto honey::Property< RealList >::s_type ( ) -> const NameId&
inline
template<>
auto honey::Property< String::List >::s_type ( ) -> const NameId&
inline

String list property.

template<>
auto honey::Property< int >::s_type ( ) -> const NameId&
inline

Integer property.

template<>
auto honey::Property< Real >::s_type ( ) -> const NameId&
inline

Real property.

template<>
auto honey::Property< String >::s_type ( ) -> const NameId&
inline

String property.

template<class T >
virtual const NameId& honey::Property< T >::type ( ) const
inlinevirtual

Get property type info.

Implements honey::PropertyBase.


The documentation for this class was generated from the following file: