| 94 | |
| 95 | template<class I, class J> |
| 96 | forceinline bool |
| 97 | subset(I& i, J& j) { |
| 98 | // Is i subset of j? |
| 99 | while (i() && j()) |
| 100 | if (j.max() < i.min()) { |
| 101 | ++j; |
| 102 | } else if ((i.min() >= j.min()) && (i.max() <= j.max())) { |
| 103 | ++i; |
| 104 | } else { |
| 105 | return false; |
| 106 | } |
| 107 | return !i(); |
| 108 | } |
| 109 | |
| 110 | template<class I, class J> |
| 111 | forceinline bool |