1 #ifndef _RE2C_UTIL_RANGE_
2 #define _RE2C_UTIL_RANGE_
29 return new Range (NULL, c, c + 1);
33 return new Range (NULL, l, u);
37 vFreeList.
erase (
this);
40 uint32_t
lower ()
const {
return lb; }
41 uint32_t
upper ()
const {
return ub; }
52 vFreeList.insert (
this);
54 static void append_overlapping (Range * & head, Range * & tail,
const Range * r);
55 static void append (Range ** & ptail, uint32_t l, uint32_t u);
65 #endif // _RE2C_UTIL_RANGE_
static Range * sub(const Range *r1, const Range *r2)
size_type erase(const key_type &key)
static Range * ran(uint32_t l, uint32_t u)
static free_list< Range * > vFreeList
static Range * sym(uint32_t c)
re2c::Range * range(uint32_t n)
static Range * add(const Range *r1, const Range *r2)