Lines Matching refs:rules
134 // Fill the precontext and postcontext with the patterns of the rules
171 rules = NULL;
181 rules(0),
203 if (other.rules != 0 && U_SUCCESS(status)) {
213 delete ruleVector; // This deletes the contained rules
214 uprv_free(rules);
223 rules[i]->setData(d);
236 * Add a rule to this set. Rules are added in order, and order is
241 * unfreezes the rules, and freeze() must be called again.
258 uprv_free(rules);
259 rules = 0;
263 * Check this for masked rules and index it to optimize performance.
264 * The sequence of operations is: (1) add rules to a set using
274 * rules by sorting them into 256 bins. Each bin contains all
275 * rules matching the index value for that bin. A rule
279 * Each bin contains zero or more rules, in the same order
280 * they were found originally. However, the total rules in
282 * since rules that have a variable as their first key
285 * That is, each bin contains all rules that either have that
335 uprv_free(rules); // Contains alias pointers
339 rules = NULL;
342 rules = (TransliterationRule **)uprv_malloc(v.size() * sizeof(TransliterationRule *));
344 if (rules == 0) {
349 rules[j] = (TransliterationRule*) v.elementAt(j);
352 // TODO Add error reporting that indicates the rules that
365 TransliterationRule* r1 = rules[j];
367 TransliterationRule* r2 = rules[k];
406 UMatchDegree m = rules[i]->matchAndReplace(text, pos, incremental);
409 _debugOut("match", rules[i], text, pos);
412 _debugOut("partial match", rules[i], text, pos);