File indexing completed on 2024-04-28 07:31:40
0001 #include <HtmRangeIterator.h> 0002 0003 extern "C" { 0004 // uint64 cc_name2ID(const char *name); 0005 int cc_ID2name(char *name, uint64 id); 0006 } 0007 0008 Key HtmRangeIterator::next() 0009 { 0010 Key key = this->nextval; 0011 getNext(); 0012 return key; 0013 } 0014 0015 void HtmRangeIterator::getNext() 0016 { 0017 if (currange[0] <= 0) 0018 { 0019 nextval = -1; 0020 return; 0021 } 0022 nextval++; 0023 if (nextval > currange[1]) 0024 { 0025 range->getNext(&currange[0], &currange[1]); 0026 if (currange[0] <= 0) 0027 { 0028 nextval = -1; 0029 return; 0030 } 0031 nextval = currange[0]; 0032 } 0033 return; 0034 } 0035 0036 char *HtmRangeIterator::nextSymbolic(char *buffer) 0037 { 0038 Key key = this->next(); 0039 if (key <= 0) 0040 { 0041 buffer[0] = '\0'; 0042 } 0043 else 0044 { 0045 cc_ID2name(buffer, key); 0046 } 0047 return buffer; 0048 } 0049 bool HtmRangeIterator::hasNext() 0050 { 0051 return (nextval > 0); 0052 } 0053 0054 // HtmRangeIterator::