- Timestamp:
- 2000-07-13T10:21:53+12:00 (24 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
branches/New_Config_Format-branch/gsdl/src/mgpp/text/UCArray.cpp
r855 r1279 35 35 } 36 36 37 char * GetCStr(UCArray text) { 38 39 char *cstr = new char[text.size()+1]; 40 UCArray::const_iterator here = text.begin(); 41 UCArray::const_iterator end = text.end(); 42 43 int i = 0; 44 while (here != end) { 45 cstr[i] = (char)*here; 46 here++; i++; 47 } 48 cstr[i]='\0'; 49 return cstr; 50 } 37 51 38 52 ostream &operator<<(ostream &s, const UCArray &a) { … … 214 228 } 215 229 230 /* comparison for browse index - items match if the smaller word 231 is a prefix of the larger word, case independent 232 */ 233 int BrowseCompare (const UCArray &a1, const UCArray &a2) { 234 unsigned int l1 = a1.size(); 235 unsigned int l2 = a2.size(); 236 unsigned int l = (l1 < l2) ? l1 : l2; // l is the shorter of the two 237 int diff = 0; 238 239 UCArray::const_iterator a1Here = a1.begin(); 240 UCArray::const_iterator a2Here = a2.begin(); 241 242 while(l--) { 243 if ((diff = casecharmap[*a1Here] - casecharmap[*a2Here]) !=0) 244 return diff; 245 a1Here++; 246 a2Here++; 247 } 248 return 0; 249 250 } 216 251 217 252 unsigned long PrefixLen (const UCArray &a1, const UCArray &a2) {
Note:
See TracChangeset
for help on using the changeset viewer.