Purpose of template DECLARE_HANDLE in druntime

Kagamin spam at here.lot
Fri Feb 1 07:35:34 UTC 2019


It's a strong typed handle, in C it's declared as

#ifdef STRICT
typedef void *HANDLE;
#if 0 && (_MSC_VER > 1000)
#define DECLARE_HANDLE(name) struct name##__; typedef struct 
name##__ *name
#else
#define DECLARE_HANDLE(name) struct name##__{int unused;}; 
typedef struct name##__ *name
#endif
#else
typedef PVOID HANDLE;
#define DECLARE_HANDLE(name) typedef HANDLE name
#endif


More information about the Digitalmars-d-learn mailing list