6#ifndef _ZFI_ZFObjectUtil_h_
7#define _ZFI_ZFObjectUtil_h_
38 return e0->objectCompare(e1);
54 switch(e1->objectCompareValue(e0)) {
68 return e0->objectCompareValue(e1);
82 obj->objectInfoOfInstanceT(ret);
102 obj->objectInfoT(ret);
125template<
typename T0,
typename T1>
157 impl.execute(zfargs);
158 return zfargs.result();
#define ZFCOMPARER_DEFAULT_DECLARE(T_Comparable0, T_Comparable1, compareAction)
declare a template specialization for ZFComparerDefault
Definition ZFComparer.h:264
#define ZF_IN
dummy macro that shows the param used as required input
Definition ZFCoreTypeDef_ClassType.h:180
#define ZF_IN_OPT
dummy macro that shows the param used as optional input
Definition ZFCoreTypeDef_ClassType.h:184
#define zfclassNotPOD
shows the class is not a POD type, you should not memset it or declare it in stack or copy value by c...
Definition ZFCoreTypeDef_ClassType.h:48
#define ZF_IN_OUT
dummy macro that shows the param used as required input and output
Definition ZFCoreTypeDef_ClassType.h:196
_zft_zfidentity zfidentity
identity type, ensured at least 32 bit, ensured unsigned
Definition ZFCoreTypeDef_CoreType.h:225
#define zfidentityInvalid()
an invalid id value, ensured ((zfidentity)-1)
Definition ZFCoreTypeDef_CoreType.h:229
#define zfnull
same as NULL, defined for future use
Definition ZFCoreTypeDef_CoreType.h:88
#define ZFTOKEN_zfnull
string tokens
Definition ZFCoreTypeDef_OtherType.h:16
ZFCompareResult
compare result of two ZFObjects
Definition ZFCoreTypeDef_OtherType.h:28
@ ZFCompareSmaller
Definition ZFCoreTypeDef_OtherType.h:30
@ ZFCompareUncomparable
Definition ZFCoreTypeDef_OtherType.h:29
@ ZFCompareEqual
Definition ZFCoreTypeDef_OtherType.h:31
@ ZFCompareGreater
Definition ZFCoreTypeDef_OtherType.h:32
zft_zfstring< zfchar > zfstring
see zft_zfstring
Definition ZFCoreTypeDef_StringType.h:15
#define ZF_NAMESPACE_GLOBAL_BEGIN
begin namespace ZFFramework
Definition ZFNamespace.h:97
#define ZF_NAMESPACE_GLOBAL_END
end namespace ZFFramework
Definition ZFNamespace.h:98
#define zfcast(T_To, obj)
safely cast ZFObject types, return null if not desired type
Definition ZFObjectCast.h:28
#define zftIsZFObject(Type)
true if Type is ZFObject type or ZFInterface type
Definition ZFObjectClassTypeFwd.h:106
base class of all objects
retain count logic for ZFFramework
zfstring ZFObjectInfoOfInstance(ZFObject *obj)
util method to get info of object or return ZFTOKEN_zfnull if obj is null
Definition ZFObjectUtil.h:90
zfidentity ZFObjectHash(ZFObject *obj)
util method to calculate hash of object, or return zfidentityInvalid if null
Definition ZFObjectUtil.h:118
zfstring ZFObjectInfo(ZFObject *obj)
util method to get info of object or return ZFTOKEN_zfnull if obj is null
Definition ZFObjectUtil.h:110
ZFCompareResult ZFObjectCompareValue(ZFObject *const &e0, ZFObject *const &e1)
util method to ZFObject::objectCompareValue
Definition ZFObjectUtil.h:45
ZFCompareResult ZFObjectCompare(ZFObject *const &e0, ZFObject *const &e1)
util method to compare two ZFObject, return ZFCompareEqual if both null, return ZFCompareUncomparable...
Definition ZFObjectUtil.h:21
zfauto ZFObjectCreator(const ZFListener &impl, const ZFArgs &zfargs=ZFArgs())
util to create object from custom impl
Definition ZFObjectUtil.h:153
void ZFObjectInfoOfInstanceT(zfstring &ret, ZFObject *obj)
see ZFObjectInfoOfInstance
Definition ZFObjectUtil.h:74
void ZFObjectInfoT(zfstring &ret, ZFObject *obj)
see ZFObjectInfo
Definition ZFObjectUtil.h:94
listener data used by ZFListener
Definition ZFArgs.h:20
comparer holder fo ZFComparerDefault, you may specialize this class to supply your custom type's comp...
Definition ZFComparer.h:199
listener as ZFCallback, mostly used by ZFObject::observerNotify
Definition ZFObjectObserver.h:30
base class of all objects
Definition ZFObjectCore.h:209
util method to cast ZFObject types freely
Definition zfany.h:35
a ZFObject holder which would release content object automatically when destroyed
Definition zfautoFwd.h:34
std::enable_if wrapper
Definition ZFCoreUtilTemplate.h:409
T_Type TrType
normal type
Definition ZFCoreUtilTemplate.h:105