ZFFramework
Loading...
Searching...
No Matches
ZFEnum Class Referenceabstract

abstract base class of all enum type of ZFFramework More...

#include <ZFEnum.h>

Inheritance diagram for ZFEnum:
ZFTypeIdWrapper ZFStyle ZFProgressable ZFObject ZFStyleable ZFSerializable ZFCopyable ZFInterface ZFInterface ZFInterface ZFInterface v_ZFAniForNativeCurve v_ZFCompressLevel v_ZFEnvDeviceUIType v_ZFHttpMethod v_ZFIOOpenOption v_ZFJsonType v_ZFLogLevel v_ZFOutputFormatStep v_ZFProtocolInstanceState v_ZFProtocolLevel v_ZFRegExpOption v_ZFResultType v_ZFStringEncoding v_ZFTcpType v_ZFTextTemplateIndexFlag v_ZFUIAlign v_ZFUIAutoLayoutPos v_ZFUIButtonGroupType v_ZFUIButtonState v_ZFUIImageImplNinePatchPos v_ZFUIImageStateImplAction v_ZFUIKeyAction v_ZFUIKeyCode v_ZFUIMouseAction v_ZFUIMouseButton v_ZFUIOrientation v_ZFUIPagePauseReason v_ZFUIPageResumeReason v_ZFUIScaleType v_ZFUIScrollViewState v_ZFUISizeType v_ZFUITextAppearance v_ZFUITextEditKeyboardReturnAction v_ZFUITextEditKeyboardReturnType v_ZFUITextEditKeyboardType v_ZFUITextTruncateMode v_ZFUITransform v_ZFUIViewChildLayer v_ZFXmlType

Public Member Functions

virtual const ZFClassclassData (void)
 get instance's class info
virtual void objectInfoImpl (zfstring &ret)
 see objectInfo
virtual zfidentity objectHashImpl (void)
 see objectHash
virtual ZFCompareResult objectCompareImpl (ZFObject *anotherObj)
 compare result of two enum values as int, or return ZFCompareUncomparable if any of them are ZFEnumInvalid
virtual zfbool objectIsInternal (void)
 whether this object is internal object or its class is ZFClass::classIsInternal
virtual zfbool objectIsInternalPrivate (void)
 whether this object is internal private object or its class is ZFClass::classIsInternalPrivate
virtual void * wrappedValue (void)
 access the value's address
virtual void wrappedValue (const void *v)
 set the value, no type safe check
virtual void wrappedValueCopy (void *v)
 get the value, no type safe check
virtual void zfvReset (void)
 reset the value to it's init value
virtual zfbool zfvIsInit (void)
 true if the value is in init value state
virtual zfbool wrappedValuePreferStringConverter (void)
 whether prefer string converter during serialization, which would result much shorter result
virtual zfbool zfvFromData (const ZFSerializableData &serializableData, zfstring *outErrorHint=zft_zfnull, ZFSerializableData *outErrorPos=zft_zfnull)
 convert from serializable data
virtual zfbool zfvToData (ZFSerializableData &serializableData, zfstring *outErrorHint=zft_zfnull)
 convert to serializable data
virtual zfbool zfvFromString (const zfchar *src, zfindex srcLen=((zfindex) -1), zfstring *errorHint=zft_zfnull)
 convert from string
virtual zfbool zfvToString (zfstring &s, zfstring *errorHint=zft_zfnull)
 convert to string
virtual zfindex enumCount (void)=0
 get value num
virtual zfindex enumIndexForValue (zfuint value)=0
 get the index of enum value, or zfindexMax() if no such enum value
virtual zfuint enumValueAt (zfindex index)=0
 get the value at index, or ZFEnumInvalid if not exist
virtual const zfstringenumNameAt (zfindex index)=0
 get the name at index, or ZFEnumNameInvalid if not exist
virtual zfbool enumValueContain (zfuint value)=0
 return true if contain the specified value
virtual zfuint enumValueForName (const zfstring &name)=0
 get the value with specified name, or ZFEnumInvalid if not exist
virtual const zfstringenumNameForValue (zfuint value)=0
 get the name with specified value, or ZFEnumNameInvalid if not exist
virtual zfbool enumIsFlags (void)=0
 true if this enum type is flags type (which support bit operation)
virtual zfuint enumDefault (void)=0
 default value of this enum
virtual zfuint const & enumValue (void)
 get the enum value, or ZFEnumInvalid if invalid
virtual const zfstringenumName (void)
 get current value's name, or ZFEnumNameInvalid if invalid
virtual void enumValue (zfuint const &value)
 set the enum value
virtual void wrappedValueOnAssign (ZFTypeIdWrapper *ref)
 see zfvAssign
Public Member Functions inherited from ZFTypeIdWrapper
ZFTypeIdWrapperzfvAssign (ZFTypeIdWrapper *ref)
 copy internal value
virtual const zfstringzfvTypeId (void)=0
 type id for this wrapper type
Public Member Functions inherited from ZFObject
const ZFClassclassDynamic (void)
 dynamic class of this object, see ZFClassDynamicRegister
zfindex objectRetainCount (void)
 return the object's retain count
void objectInfoOfInstanceT (zfstring &ret)
 see objectInfoOfInstance
zfstring objectInfoOfInstance (void)
 return a short string describe the object instance
void objectInfoT (zfstring &ret)
 see objectInfo
zfstring objectInfo (void)
 return object info
zfidentity objectHash (void)
 get hash of this object
ZFCompareResult objectCompare (ZFObject *anotherObj)
 compare with anotherObj
ZFCompareResult objectCompareValue (ZFObject *anotherObj)
 explicitly compare object by logical value, see objectCompare
virtual zfauto invoke (const zfstring &methodName)
 util method to perform ZFDI_invoke, do nothing if fail
virtual zfauto invoke (const zfstring &methodName, ZFObject *param0, ZFObject *param1=((ZFObject *const &) _ZFP_ZFMP_DEF), ZFObject *param2=((ZFObject *const &) _ZFP_ZFMP_DEF), ZFObject *param3=((ZFObject *const &) _ZFP_ZFMP_DEF), ZFObject *param4=((ZFObject *const &) _ZFP_ZFMP_DEF), ZFObject *param5=((ZFObject *const &) _ZFP_ZFMP_DEF), ZFObject *param6=((ZFObject *const &) _ZFP_ZFMP_DEF), ZFObject *param7=((ZFObject *const &) _ZFP_ZFMP_DEF))
 util method to perform ZFDI_invoke, do nothing if fail
virtual zfbool invokeT (zfauto &ret, zfstring *errorHint, const zfstring &methodName, ZFObject *param0=((ZFObject *const &) _ZFP_ZFMP_DEF), ZFObject *param1=((ZFObject *const &) _ZFP_ZFMP_DEF), ZFObject *param2=((ZFObject *const &) _ZFP_ZFMP_DEF), ZFObject *param3=((ZFObject *const &) _ZFP_ZFMP_DEF), ZFObject *param4=((ZFObject *const &) _ZFP_ZFMP_DEF), ZFObject *param5=((ZFObject *const &) _ZFP_ZFMP_DEF), ZFObject *param6=((ZFObject *const &) _ZFP_ZFMP_DEF), ZFObject *param7=((ZFObject *const &) _ZFP_ZFMP_DEF))
 util method to perform ZFDI_invoke, do nothing if fail
virtual zfauto invokeDetail (const zfstring &methodName, const ZFCoreArray< zfauto > &params, zfbool *success=zft_zfnull, zfstring *errorHint=zft_zfnull)
 util method to perform ZFDI_invoke, do nothing if fail
zfbool objectTagExist (void)
 see objectTag, true if this object has tag, and tag can be checked by objectTagGetAllKeyValue
void objectTag (const zfstring &key, ZFObject *tag)
 used to hold a object for app's use, auto retained
zfany objectTag (const zfstring &key)
 see objectTag
void objectTagGetAllKeyValue (ZFCoreArray< zfstring > &allKey, ZFCoreArray< zfauto > &allValue)
 get all key value
void objectTagRemove (const zfstring &key)
 remove tag, same as set tag to null
zfauto objectTagRemoveAndGet (const zfstring &key)
 remove tag, return removed tag or null if not exist
void objectTagRemoveAll (void)
 remove all tag
void observerAdd (zfidentity eventId, const ZFListener &observer, ZFLevel observerLevel=ZFLevelAppNormal)
 see observerNotify
void observerAddForOnce (zfidentity eventId, const ZFListener &observer, ZFLevel observerLevel=ZFLevelAppNormal)
 see observerNotify
void observerRemove (zfidentity eventId, const ZFListener &callback)
 see observerNotify
void observerRemoveAll (zfidentity eventId)
 see observerNotify
void observerRemoveAll (void)
 see observerNotify
zfbool observerHasAdd (void)
 true if any observer has been added
zfbool observerHasAdd (zfidentity eventId)
 true if any observer with eventId has been added
void observerNotify (zfidentity eventId, ZFObject *param0=zft_zfnull, ZFObject *param1=zft_zfnull)
 notify the observer with eventId
void observerNotifyWithSender (ZFObject *customSender, zfidentity eventId, ZFObject *param0=zft_zfnull, ZFObject *param1=zft_zfnull)
 see observerNotify
void observerNotifyReversely (zfidentity eventId, ZFObject *param0=zft_zfnull, ZFObject *param1=zft_zfnull)
 see observerNotify
void observerNotifyReverselyWithSender (ZFObject *customSender, zfidentity eventId, ZFObject *param0=zft_zfnull, ZFObject *param1=zft_zfnull)
 see observerNotify
ZFObserverobserverHolder (void)
 access the internal observer holder
void on (const zfstring &eventName, const ZFListener &observer, ZFLevel observerLevel=ZFLevelAppNormal)
 util to observerAdd
void on (zfidentity eventId, const ZFListener &observer, ZFLevel observerLevel=ZFLevelAppNormal)
 util to observerAdd
void onInit (const ZFListener &impl)
 util for script to achieve chained call
void onDealloc (const ZFListener &impl)
 util for script to achieve chained call
zfbool objectInstanceStateCheck (ZFObjectInstanceState state)
 object instance's state
zfbool objectInitRunning (void)
 util method to check whether ZFObjectInstanceStateOnInit or ZFObjectInstanceStateOnInitFinish running
zfbool objectDeallocRunning (void)
 util method to check whether ZFObjectInstanceStateOnDeallocPrepare or ZFObjectInstanceStateOnDealloc running
Public Member Functions inherited from ZFStyleable
virtual zfanyT< ZFStyleabledefaultStyle (void)
 return default style of this instance
void styleableCopyFrom (ZFObject *anotherStyleable)
 copy style from another styleable, see ZFStyleable
virtual zfbool styleableIsDefaultStyle (void)
 true if this object is defaultStyle
void styleablePropertyGetAllT (ZFCoreArray< const ZFProperty * > &ret)
 return a list of styleable property, for debug use only
ZFCoreArray< const ZFProperty * > styleablePropertyGetAll (void)
 return a list of styleable property, for debug use only
void styleKey (const zfstring &styleKey)
 see ZFStyleSet
const zfstringstyleKey (void)
 see ZFStyleSet
void propStyle (const zfstring &propertyName, const zfstring &styleKey)
 see ZFStyleSet
const zfstringpropStyle (const zfstring &propertyName)
 see ZFStyleSet
Public Member Functions inherited from ZFInterface
virtual ZFObjecttoObject (void)=0
 convert to ZFObject type
Public Member Functions inherited from ZFSerializable
zfbool serializable (void)
 true if object is currently serializable, see ZFSerializable
zfbool serializeFromData (const ZFSerializableData &serializableData, zfstring *outErrorHint=zft_zfnull, ZFSerializableData *outErrorPos=zft_zfnull)
 serialize from data, see ZFSerializable
zfbool serializeToData (ZFSerializableData &serializableData, zfstring *outErrorHint=zft_zfnull, ZFSerializable *refOwner=zft_zfnull)
 serialize to data, see ZFSerializable
zfbool serializeFromString (const zfchar *src, zfindex srcLen=((zfindex) -1), zfstring *errorHint=zft_zfnull)
 serialize from string, return false by default
zfbool serializeToString (zfstring &ret, zfstring *errorHint=zft_zfnull)
 see serializeFromString
void serializablePropertyTypeGetAll (ZFCoreArray< const ZFProperty * > &notSerializableProperty, ZFCoreArray< const ZFProperty * > &serializableProperty, ZFCoreArray< const ZFProperty * > &embededProperty)
 return a list of each type of property, for debug use only
zfstring serializablePropertyTypeInfo (void)
 return info of serializablePropertyTypeGetAll, for debug use only
void serializableGetAllSerializablePropertyT (ZFCoreArray< const ZFProperty * > &ret)
 see serializableGetAllSerializableProperty
ZFCoreArray< const ZFProperty * > serializableGetAllSerializableProperty (void)
 get all serializable property, usually for debug only, see serializableOnCheckPropertyType
void serializableGetAllSerializableEmbededPropertyT (ZFCoreArray< const ZFProperty * > &ret)
 see serializableGetAllSerializableEmbededProperty
ZFCoreArray< const ZFProperty * > serializableGetAllSerializableEmbededProperty (void)
 get all serializable embeded property, usually for debug only, see serializableOnCheckPropertyType
virtual void serializableInfoT (zfstring &ret)
 get info as a serializable
virtual zfstring serializableInfo (void)
 see serializableInfoT
Public Member Functions inherited from ZFCopyable
zfautoT< ZFCopyablecopy (void)
 return a copy of this object
void copyFrom (ZFObject *anotherObj)
 see copy, anotherObj must be same type as this object (by classData), otherwise, do nothing
Public Member Functions inherited from ZFProgressable
virtual zfbool progressUpdate (ZFProgressable *from, ZFProgressable *to, zffloat progress)
 see ZFProgressable

Static Public Member Functions

static const ZFClassClassData (void)
 get class info
Static Public Member Functions inherited from ZFTypeIdWrapper
static const ZFClassClassData (void)
 get class info
Static Public Member Functions inherited from ZFStyle
static const ZFClassClassData (void)
 get class info
Static Public Member Functions inherited from ZFObject
static const ZFClassClassData (void)
 get class info
static zfidentity E_ObjectBeforeAlloc (void)
 see ZFObject::observerNotify
static zfidentity E_ObjectAfterAlloc (void)
 see ZFObject::observerNotify
static zfidentity E_ObjectBeforeDealloc (void)
 see ZFObject::observerNotify
static zfidentity E_ObjectPropertyValueOnUpdate (void)
 see ZFObject::observerNotify
static zfidentity E_ObjectPropertyValueOnReset (void)
 see ZFObject::observerNotify
Static Public Member Functions inherited from ZFStyleable
static const ZFClassClassData (void)
 get class info
Static Public Member Functions inherited from ZFInterface
static const ZFClassClassData (void)
 get class info
Static Public Member Functions inherited from ZFSerializable
static const ZFClassClassData (void)
 get class info
Static Public Member Functions inherited from ZFCopyable
static const ZFClassClassData (void)
 get class info
Static Public Member Functions inherited from ZFProgressable
static const ZFClassClassData (void)
 get class info

Protected Types

typedef ZFTypeIdWrapper zfsuper
 class ref to super
typedef ZFEnum zfself
 class ref to self
Protected Types inherited from ZFTypeIdWrapper
typedef ZFStyle zfsuper
 class ref to super
typedef ZFTypeIdWrapper zfself
 class ref to self
Protected Types inherited from ZFStyle
typedef ZFObject zfsuper
 class ref to super
typedef ZFStyle zfself
 class ref to self
Protected Types inherited from ZFObject
typedef _ZFP_Obj_Base zfsuper
 class ref to super
typedef ZFObject zfself
 class ref to self
Protected Types inherited from ZFStyleable
typedef ZFInterface zfsuper
 typedef for super (always ZFInterface for an interface type)
typedef ZFStyleable zfself
 typedef for self
Protected Types inherited from ZFInterface
typedef _ZFP_ObjI_Base zfsuper
 typedef for super (always ZFInterface for an interface type)
typedef ZFInterface zfself
 typedef for self
Protected Types inherited from ZFSerializable
typedef ZFInterface zfsuper
 typedef for super (always ZFInterface for an interface type)
typedef ZFSerializable zfself
 typedef for self
Protected Types inherited from ZFCopyable
typedef ZFInterface zfsuper
 typedef for super (always ZFInterface for an interface type)
typedef ZFCopyable zfself
 typedef for self
Protected Types inherited from ZFProgressable
typedef ZFInterface zfsuper
 typedef for super (always ZFInterface for an interface type)
typedef ZFProgressable zfself
 typedef for self

Protected Member Functions

virtual zfbool serializableOnSerializeFromData (const ZFSerializableData &serializableData, zfstring *outErrorHint=zft_zfnull, ZFSerializableData *outErrorPos=zft_zfnull)
 for serializable data that has "category" attribute, ZFSerializable would ignore it and leave it to subclass to resolve, see ZFSerializable
virtual zfbool serializableOnSerializeToData (ZFSerializableData &serializableData, zfstring *outErrorHint=zft_zfnull, ZFSerializable *refOwner=zft_zfnull)
 corresponding to serializableOnSerializeFromData, return whether the task is success, see ZFSerializable
virtual void copyableOnCopyFrom (ZFObject *anotherObj)
 called by copy to copy contents from anotherObj
virtual void objectOnInit (zfuint value)
 init with value or ZFEnumInvalid if invalid
virtual void objectOnInit (ZFEnum *another)
 init with ZFEnum
virtual void objectOnInit (void)
 override this to init your object
Protected Member Functions inherited from ZFTypeIdWrapper
virtual void styleableOnCopyFrom (ZFObject *anotherStyleable)
 for subclass to achieve custom style copy step, called by styleableCopyFrom, see ZFStyleable
virtual zfbool serializableOnSerializeFromString (const zfchar *src, zfindex srcLen=((zfindex) -1), zfstring *errorHint=zft_zfnull)
 see serializeFromString
virtual zfbool serializableOnSerializeToString (zfstring &ret, zfstring *errorHint=zft_zfnull)
 see serializeFromString
Protected Member Functions inherited from ZFObject
virtual void objectInfoImplAppend (zfstring &ret)
 see objectInfo
virtual ZFCompareResult objectCompareValueImpl (ZFObject *anotherObj)
 see objectCompareValue
virtual void observerOnAdd (zfidentity eventId)
 called when add first observer
virtual void observerOnRemove (zfidentity eventId)
 called when remove last observer
virtual void observerOnEvent (const ZFArgs &zfargs)
 notified when observerNotify
virtual void objectOnInitFinish (void)
 called after objectOnInit, safe to call virtual functions here
virtual void objectOnDeallocPrepare (void)
 called before objectOnDealloc, safe to call virtual functions here
virtual void objectOnDealloc (void)
 override this to destroy your object
virtual void objectOnRetain (void)
 called to retain object
virtual void objectOnRelease (void)
 called to release object
virtual void objectPropertyValueOnUpdate (const ZFProperty *property, const void *oldValue)
 see E_ObjectPropertyValueOnUpdate
virtual void objectPropertyValueOnReset (const ZFProperty *property)
 see E_ObjectPropertyValueOnReset
Protected Member Functions inherited from ZFStyleable
virtual void styleableOnCopyPropertyFrom (ZFObject *anotherStyleable, const ZFProperty *property)
 copy property with styleable logic
Protected Member Functions inherited from ZFSerializable
virtual ZFSerializablePropertyType serializableOnCheckPropertyType (const ZFProperty *property)
 check the property type that serializable should do what while serializing
virtual zfbool serializableOnCheck (void)
 see serializable
virtual zfbool serializableOnSerializePropertyFromData (const ZFSerializableData &propertyData, const ZFProperty *property, zfstring *outErrorHint=zft_zfnull, ZFSerializableData *outErrorPos=zft_zfnull)
 see serializableOnCheckPropertyType, usually you have no need to override this method, see ZFSerializable
virtual zfbool serializableOnSerializePropertyToData (ZFSerializableData &ownerData, const ZFProperty *property, zfstring *outErrorHint=zft_zfnull, ZFSerializable *refOwner=zft_zfnull)
 see serializableOnCheckPropertyType, usually you have no need to override this method, see ZFSerializable
virtual zfbool serializableOnSerializeEmbededPropertyFromData (const ZFSerializableData &propertyData, const ZFProperty *property, zfstring *outErrorHint=zft_zfnull, ZFSerializableData *outErrorPos=zft_zfnull)
 see serializableOnCheckPropertyType, usually you have no need to override this method, see ZFSerializable
virtual zfbool serializableOnSerializeEmbededPropertyToData (ZFSerializableData &ownerData, const ZFProperty *property, ZFSerializable *refOwner, zfstring *outErrorHint=zft_zfnull)
 see serializableOnCheckPropertyType, usually you have no need to override this method, see ZFSerializable
Protected Member Functions inherited from ZFProgressable
virtual zfbool progressOnUpdate (ZFProgressable *from, ZFProgressable *to, zffloat progress)
 see ZFProgressable

Additional Inherited Members

Public Types inherited from ZFStyle
enum  
Public Types inherited from ZFObject
enum  

Detailed Description

abstract base class of all enum type of ZFFramework

please refer to ZFENUM_BEGIN to see how to use enum type

serializable data:

<EnumClass
value="EmunValueName" // optional, #ZFEnumNameInvalid by default
/>

Member Function Documentation

◆ classData()

◆ serializableOnSerializeFromData()

virtual zfbool ZFEnum::serializableOnSerializeFromData ( const ZFSerializableData & serializableData,
zfstring * outErrorHint = zft_zfnull,
ZFSerializableData * outErrorPos = zft_zfnull )
protectedvirtual

for serializable data that has "category" attribute, ZFSerializable would ignore it and leave it to subclass to resolve, see ZFSerializable

while overriding this method, you should call super first, and then check whether super has resolved the data
if subclass should resolve the category, you should mark data as resolved and return whether resolve success
if not, subclass should leave the data unresoved and return true

Reimplemented from ZFTypeIdWrapper.

◆ serializableOnSerializeToData()

virtual zfbool ZFEnum::serializableOnSerializeToData ( ZFSerializableData & serializableData,
zfstring * outErrorHint = zft_zfnull,
ZFSerializable * refOwner = zft_zfnull )
protectedvirtual

corresponding to serializableOnSerializeFromData, return whether the task is success, see ZFSerializable

Reimplemented from ZFTypeIdWrapper.

◆ copyableOnCopyFrom()

virtual void ZFEnum::copyableOnCopyFrom ( ZFObject * anotherObj)
inlineprotectedvirtual

called by copy to copy contents from anotherObj

anotherObj is ensured the same type as self, ensured not null, and ensured not same instance of this
by default this method would do nothing for performance

Reimplemented from ZFStyle.

◆ objectOnInit()

virtual void ZFEnum::objectOnInit ( void )
inlineprotectedvirtual

override this to init your object

subclass must call superclass's objectOnInit before any other code if override
you may also declare objectOnInit with params like this:

zfclass Parent : ... {
...
protected:
virtual void objectOnInit(void) {...};
};
zfclass Child : Parent {
protected:
// override all parent's objectOnInit is also required,
// because of function hiding of C++
virtual void objectOnInit(void) {
}
// custom init entry
virtual void objectOnInit(Params...) {
// your extra init steps
...
}
};
#define zfoverride
dummy macro shows that method override parent's method
Definition ZFCoreTypeDef_ClassType.h:58
#define zfclass
same as class, shows that this class is a ZFObject type
Definition ZFObjectClassTypeFwd.h:38
virtual void objectOnInit(void)
override this to init your object
Definition ZFEnum.h:78
virtual void objectOnInit(void)
override this to init your object
Warning
objectOnInit and objectOnDealloc is called as a virtual function, take good care of other virtual function call, use zfself::func() instead of this->func() if necessary, or use objectOnInitFinish/objectOnDeallocPrepare, or declare your own constructor with ZFOBJECT_DECLARE_WITH_CUSTOM_CTOR
Note
(ZFTAG_LIMITATION) due to limitations of C++, if your parent type declared objectOnInit with different params, and your child type want to override part of those objectOnInit, then your child type must also override all objectOnInit that parent declared, otherwise, some may be hidden
for objects that designed not to be allocated by user, you should use ZFOBJECT_PRIVATE_ALLOC, typically usage:
zfclass MyObject : zfextend ZFObject {
ZFOBJECT_DECLARE(MyObject, ZFObject)
ZFOBJECT_PRIVATE_ALLOC("should be created by MyObject::instanceForXxx only")
public:
static zfauto instanceForXxx(xxx) {
// can only be allocated by reflection
}
};
static void func(void) {
// MyObject *obj = zfobjAlloc(MyObject); // would compile error
zfauto obj = MyObject::instanceForXxx(xxx); // OK
}
#define zfextend
dummy macro shows class inherit from another
Definition ZFCoreTypeDef_ClassType.h:53
#define ZFOBJECT_DECLARE(ChildClass, SuperClass,...)
necessary for every class inherit from ZFObject
Definition ZFObjectDeclare.h:126
#define ZFOBJECT_PRIVATE_ALLOC(...)
mark this object can not be allocated directly
Definition ZFObjectDeclare.h:245
zfauto newInstance(void) const
make a new instance of ZFObject dynamically, which is described by ZFClass
static const ZFClass * ClassData(void)
get class info
Definition ZFEnum.h:39
a ZFObject holder which would release content object automatically when destroyed
Definition zfautoFwd.h:34

Reimplemented from ZFObject.

◆ objectInfoImpl()

virtual void ZFEnum::objectInfoImpl ( zfstring & ret)
virtual

see objectInfo

Reimplemented from ZFObject.

◆ objectHashImpl()

virtual zfidentity ZFEnum::objectHashImpl ( void )
inlinevirtual

see objectHash

Reimplemented from ZFObject.

◆ objectCompareImpl()

virtual ZFCompareResult ZFEnum::objectCompareImpl ( ZFObject * anotherObj)
virtual

compare result of two enum values as int, or return ZFCompareUncomparable if any of them are ZFEnumInvalid

Reimplemented from ZFObject.

◆ objectIsInternal()

virtual zfbool ZFEnum::objectIsInternal ( void )
inlinevirtual

whether this object is internal object or its class is ZFClass::classIsInternal

if objectIsInternalPrivate, then it is also objectIsInternal

Reimplemented from ZFTypeIdWrapper.

◆ objectIsInternalPrivate()

virtual zfbool ZFEnum::objectIsInternalPrivate ( void )
inlinevirtual

whether this object is internal private object or its class is ZFClass::classIsInternalPrivate

if objectIsInternalPrivate, then it is also objectIsInternal

Reimplemented from ZFObject.

◆ wrappedValue() [1/2]

virtual void * ZFEnum::wrappedValue ( void )
virtual

access the value's address

Implements ZFTypeIdWrapper.

◆ wrappedValue() [2/2]

virtual void ZFEnum::wrappedValue ( const void * v)
virtual

set the value, no type safe check

Implements ZFTypeIdWrapper.

◆ wrappedValueCopy()

virtual void ZFEnum::wrappedValueCopy ( void * v)
virtual

get the value, no type safe check

Implements ZFTypeIdWrapper.

◆ zfvReset()

virtual void ZFEnum::zfvReset ( void )
virtual

reset the value to it's init value

Implements ZFTypeIdWrapper.

◆ zfvIsInit()

virtual zfbool ZFEnum::zfvIsInit ( void )
virtual

true if the value is in init value state

Implements ZFTypeIdWrapper.

◆ wrappedValuePreferStringConverter()

virtual zfbool ZFEnum::wrappedValuePreferStringConverter ( void )
inlinevirtual

whether prefer string converter during serialization, which would result much shorter result

// default complex serializable data:
<Owner>
<TypeId prop="PropertyName" value="xxx"/>
</Owner>
// if prefer string converter
<Owner PropertyName="xxx" />

Reimplemented from ZFTypeIdWrapper.

◆ zfvFromData()

virtual zfbool ZFEnum::zfvFromData ( const ZFSerializableData & serializableData,
zfstring * outErrorHint = zft_zfnull,
ZFSerializableData * outErrorPos = zft_zfnull )
virtual

convert from serializable data

Implements ZFTypeIdWrapper.

◆ zfvToData()

virtual zfbool ZFEnum::zfvToData ( ZFSerializableData & serializableData,
zfstring * outErrorHint = zft_zfnull )
virtual

convert to serializable data

Implements ZFTypeIdWrapper.

◆ zfvFromString()

virtual zfbool ZFEnum::zfvFromString ( const zfchar * src,
zfindex srcLen = ((zfindex) -1),
zfstring * errorHint = zft_zfnull )
virtual

convert from string

Implements ZFTypeIdWrapper.

◆ zfvToString()

virtual zfbool ZFEnum::zfvToString ( zfstring & s,
zfstring * errorHint = zft_zfnull )
virtual

convert to string

Implements ZFTypeIdWrapper.

◆ enumName()

virtual const zfstring & ZFEnum::enumName ( void )
inlinevirtual

get current value's name, or ZFEnumNameInvalid if invalid

return invalid if holds flags value, use zfflagsToString instead

◆ enumValue()

virtual void ZFEnum::enumValue ( zfuint const & value)
inlinevirtual

set the enum value

must be the enum's value or ZFEnumInvalid

◆ wrappedValueOnAssign()

virtual void ZFEnum::wrappedValueOnAssign ( ZFTypeIdWrapper * ref)
inlinevirtual

see zfvAssign

Implements ZFTypeIdWrapper.


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