Data Structures | |
struct | nl_object_ops |
Object Operations. More... | |
Macros | |
#define | NLHDR_COMMON |
Common Object Header. More... | |
#define | AVAILABLE(A, B, ATTR) (((A)->ce_mask & (B)->ce_mask) & (ATTR)) |
Return true if attribute is available in both objects. More... | |
#define | AVAILABLE_MISMATCH(A, B, ATTR) (((A)->ce_mask ^ (B)->ce_mask) & (ATTR)) |
Return true if attribute is available in only one of both objects. More... | |
#define | ATTR_MISMATCH(A, B, ATTR, EXPR) |
Return true if attributes mismatch. More... | |
#define | ATTR_DIFF(LIST, ATTR, A, B, EXPR) |
Return attribute bit if attribute does not match. More... | |
#define ATTR_DIFF | ( | LIST, | |
ATTR, | |||
A, | |||
B, | |||
EXPR | |||
) |
Return attribute bit if attribute does not match.
This function will check if the attribute in question is available in both objects, if not this will count as a mismatch.
If available the function will execute the expression which must return true if the attributes mismatch.
In case the attributes mismatch, the attribute is returned, otherwise 0 is returned.
#define ATTR_MISMATCH | ( | A, | |
B, | |||
ATTR, | |||
EXPR | |||
) |
Return true if attributes mismatch.
This function will check if the attribute in question is available in both objects, if not this will count as a mismatch.
If available the function will execute the expression which must return true if the attributes mismatch.
#define AVAILABLE | ( | A, | |
B, | |||
ATTR | |||
) | (((A)->ce_mask & (B)->ce_mask) & (ATTR)) |
Return true if attribute is available in both objects.
#define AVAILABLE_MISMATCH | ( | A, | |
B, | |||
ATTR | |||
) | (((A)->ce_mask ^ (B)->ce_mask) & (ATTR)) |
Return true if attribute is available in only one of both objects.
#define NLHDR_COMMON |
Common Object Header.
This macro must be included as first member in every object definition to allow objects to be cached.