pike.git / src / pike_macros.h

version» Context lines:

pike.git/src/pike_macros.h:27:      #define BASEOF(ptr, str_type, field) \    ((struct str_type *)((char*)ptr - OFFSETOF(str_type, field)))      #define NELEM(a) (sizeof (a) / sizeof ((a)[0]))   #define ALLOC_STRUCT(X) ( (struct X *)xalloc(sizeof(struct X)) )      #define MINIMUM(X,Y) ((X)<(Y)?(X):(Y))   #define MAXIMUM(X,Y) ((X)>(Y)?(X):(Y))    -  - PMOD_EXPORT extern const char Pike_isidchar_vector[]; - #define isidchar(X) (Pike_isidchar_vector[((unsigned)(X))&0xff] == '1') -  +    #define DO_ALIGN(X,Y) (((size_t)(X)+((Y)-1)) & ~((Y)-1))   #define CONSTANT_STRLEN(X) (sizeof(X) - sizeof(""))      #define SET_NEXT_AND_FREE(p,free_item) do{ \    next=p->next; \    while(p->refs == 1 && (next=p->next)) \    { \    add_ref(next); \    free_item(p); \    p=next; \