XII Release 0.1.0
Loading...
Searching...
No Matches
xiiTypedSetProperty< Type > Class Template Reference

Do not cast into this class or any of its derived classes, use xiiAbstractSetProperty instead. More...

#include <SetProperty.h>

Inheritance diagram for xiiTypedSetProperty< Type >:
[legend]

Public Member Functions

 xiiTypedSetProperty (xiiStringView sPropertyName)
virtual const xiiRTTI * GetSpecificType () const override
Public Member Functions inherited from xiiAbstractSetProperty
 xiiAbstractSetProperty (xiiStringView sPropertyName)
 Passes the property name through to xiiAbstractProperty.
virtual xiiPropertyCategory::Enum GetCategory () const override
 Returns xiiPropertyCategory::Set.
virtual bool IsEmpty (const void *pInstance) const =0
 Returns whether the set is empty.
virtual void Clear (void *pInstance) const =0
 Clears the set.
virtual void Insert (void *pInstance, const void *pObject) const =0
 Inserts the target of pObject into the set.
virtual void Remove (void *pInstance, const void *pObject) const =0
 Removes the target of pObject from the set.
virtual bool Contains (const void *pInstance, const void *pObject) const =0
 Returns whether the target of pObject is in the set.
virtual void GetValues (const void *pInstance, xiiDynamicArray< xiiVariant > &out_keys) const =0
 Writes the content of the set to out_keys.
Public Member Functions inherited from xiiAbstractProperty
 xiiAbstractProperty (xiiStringView sPropertyName)
 The constructor must get the name of the property. The string must be a compile-time constant.
virtual ~xiiAbstractProperty ()
 Copyright (c) Theophilus Eriata. All Rights Reserved.
xiiStringView GetPropertyName () const
 Returns the name of the property.
const xiiBitflags< xiiPropertyFlags > & GetFlags () const
 Returns the flags of the property.
xiiAbstractProperty * AddFlags (xiiBitflags< xiiPropertyFlags > flags)
 Adds flags to the property. Returns itself to allow to be called during initialization.
xiiAbstractProperty * AddAttributes (xiiPropertyAttribute *pAttrib1, xiiPropertyAttribute *pAttrib2=nullptr, xiiPropertyAttribute *pAttrib3=nullptr, xiiPropertyAttribute *pAttrib4=nullptr, xiiPropertyAttribute *pAttrib5=nullptr, xiiPropertyAttribute *pAttrib6=nullptr)
xiiArrayPtr< const xiiPropertyAttribute *const > GetAttributes () const
 Returns the array of property attributes.
template<typename Type>
const Type * GetAttributeByType () const
 Returns the first attribute that derives from the given type, or nullptr if nothing is found.

Additional Inherited Members

Protected Attributes inherited from xiiAbstractProperty
xiiBitflags< xiiPropertyFlags > m_Flags
xiiStringView m_sPropertyName
xiiHybridArray< const xiiPropertyAttribute *, 2U, xiiStaticAllocatorWrapper > m_Attributes

Detailed Description

template<typename Type>
class xiiTypedSetProperty< Type >

Do not cast into this class or any of its derived classes, use xiiAbstractSetProperty instead.

Member Function Documentation

◆ GetSpecificType()

template<typename Type>
virtual const xiiRTTI * xiiTypedSetProperty< Type >::GetSpecificType ( ) const
inlineoverridevirtual

Returns the type information of the constant property. Use this to cast this property to a specific version of xiiTypedConstantProperty.

Implements xiiAbstractProperty.


The documentation for this class was generated from the following file:
  • /home/runner/work/XII/XII/Source/Engine/Foundation/Reflection/Implementation/SetProperty.h