… | |
… | |
98 | ((unsigned int)(val) - (unsigned int)(beg) <= (unsigned int)(end) - (unsigned int)(beg)) |
98 | ((unsigned int)(val) - (unsigned int)(beg) <= (unsigned int)(end) - (unsigned int)(beg)) |
99 | |
99 | |
100 | // in range excluding end |
100 | // in range excluding end |
101 | #define IN_RANGE_EXC(val,beg,end) \ |
101 | #define IN_RANGE_EXC(val,beg,end) \ |
102 | ((unsigned int)(val) - (unsigned int)(beg) < (unsigned int)(end) - (unsigned int)(beg)) |
102 | ((unsigned int)(val) - (unsigned int)(beg) < (unsigned int)(end) - (unsigned int)(beg)) |
|
|
103 | |
|
|
104 | // for m >= -n, ensure remainder lies between 0..n-1 |
|
|
105 | #define MOD(m,n) (((m) + (n)) % (n)) |
103 | |
106 | |
104 | // makes dynamically allocated objects zero-initialised |
107 | // makes dynamically allocated objects zero-initialised |
105 | struct zero_initialized { |
108 | struct zero_initialized { |
106 | void *operator new (size_t s); |
109 | void *operator new (size_t s); |
107 | void operator delete (void *p, size_t s); |
110 | void operator delete (void *p, size_t s); |