src/primitives.cpp

changeset 503
bebe09014dd6
parent 500
cad8cdc42a64
child 504
6a1fa662bfc1
equal deleted inserted replaced
502:f6534d591f80 503:bebe09014dd6
183 183
184 if (!unmatched) 184 if (!unmatched)
185 { // Shouldn't happen.. but catch it anyway. 185 { // Shouldn't happen.. but catch it anyway.
186 PrimitiveCategory cat; 186 PrimitiveCategory cat;
187 cat.setName (g_Other); 187 cat.setName (g_Other);
188 unmatched = & (g_PrimitiveCategories << cat); 188 g_PrimitiveCategories << cat;
189 } 189 unmatched = &g_PrimitiveCategories.last();
190 190 }
191 for (Primitive & prim : g_primitives) 191
192 for (Primitive & prim : g_primitives)
192 { bool matched = false; 193 { bool matched = false;
193 prim.cat = null; 194 prim.cat = null;
194 195
195 // Go over the categories and their regexes, if and when there's a match, 196 // Go over the categories and their regexes, if and when there's a match,
196 // the primitive's category is set to the category the regex beloings to. 197 // the primitive's category is set to the category the regex beloings to.
197 for (PrimitiveCategory & cat : g_PrimitiveCategories) 198 for (PrimitiveCategory& cat : g_PrimitiveCategories)
198 { for (PrimitiveCategory::RegexEntry & entry : cat.regexes) 199 { for (PrimitiveCategory::RegexEntry& entry : cat.regexes)
199 { switch (entry.type) 200 { switch (entry.type)
200 { case PrimitiveCategory::Filename: 201 { case PrimitiveCategory::Filename:
201 // f-regex, check against filename 202 // f-regex, check against filename
202 matched = entry.regex.exactMatch (prim.name); 203 matched = entry.regex.exactMatch (prim.name);
203 break; 204 break;

mercurial