Lines Matching refs:entry
31 // allocation, deletion, and use of Entry objects. BoundsChecker has
347 // Vector of Entry pointers currently in use
357 // Caller must call DEBUG_setup first. Return index of given Entry,
409 // class Entry
413 * The Entry object stores objects of different types and
474 // entry object owns it. It should only be deleted when the
535 TransliteratorEntry *entry = find(ID);
536 return (entry == 0) ? 0
537 : instantiateEntry(ID, entry, aliasReturn, status);
545 TransliteratorEntry *entry = find(ID);
547 if (entry == 0) {
562 // called reg->reget(), and the entry will already have been fixed up.
563 // We have to detect this so we don't stomp over existing entry
566 if (entry->entryType == TransliteratorEntry::RULES_FORWARD ||
567 entry->entryType == TransliteratorEntry::RULES_REVERSE ||
568 entry->entryType == TransliteratorEntry::LOCALE_RULES) {
571 entry->u.data = 0;
572 entry->entryType = TransliteratorEntry::ALIAS;
573 entry->stringArg = UNICODE_STRING_SIMPLE("Any-NULL");
576 entry->u.data = (TransliterationRuleData*)parser.dataVector.orphanElementAt(0);
577 entry->entryType = TransliteratorEntry::RBT_DATA;
580 entry->stringArg = *(UnicodeString*)(parser.idBlockVector.elementAt(0));
581 entry->compoundFilter = parser.orphanCompoundFilter();
582 entry->entryType = TransliteratorEntry::ALIAS;
585 entry->entryType = TransliteratorEntry::COMPOUND_RBT;
586 entry->compoundFilter = parser.orphanCompoundFilter();
587 entry->u.dataVector = new UVector(status);
588 entry->stringArg.remove();
598 entry->stringArg += *idBlock;
602 entry->u.dataVector->addElement(data, status);
603 entry->stringArg += (UChar)0xffff; // use U+FFFF to mark position of RBTs in ID block
610 instantiateEntry(ID, entry, aliasReturn, status);
618 TransliteratorEntry *entry = new TransliteratorEntry();
619 if (entry == NULL) {
623 entry->adoptPrototype(adoptedProto);
624 registerEntry(adoptedProto->getID(), entry, visible);
632 TransliteratorEntry *entry = new TransliteratorEntry();
633 if (entry == NULL) {
637 entry->setFactory(factory, context);
638 registerEntry(ID, entry, visible);
647 TransliteratorEntry *entry = new TransliteratorEntry();
648 if (entry == NULL) {
652 entry->entryType = (dir == UTRANS_FORWARD) ? TransliteratorEntry::RULES_FORWARD
655 entry->stringArg.setTo(TRUE, resourceName.getBuffer(), -1);
658 entry->stringArg = resourceName;
660 registerEntry(ID, entry, visible);
668 TransliteratorEntry *entry = new TransliteratorEntry();
670 if (entry != NULL) {
671 entry->entryType = TransliteratorEntry::ALIAS;
673 entry->stringArg.setTo(TRUE, alias.getBuffer(), -1);
676 entry->stringArg = alias;
678 registerEntry(ID, entry, visible);
895 * Register an entry object (adopted) with the given ID, source,
1018 * On success, create a new entry object, register it in the dynamic
1028 TransliteratorEntry* entry = 0;
1030 entry = findInBundle(src, trg, variant, UTRANS_FORWARD);
1032 entry = findInBundle(trg, src, variant, UTRANS_REVERSE);
1035 // If we found an entry, store it in the Hashtable for next
1037 if (entry != 0) {
1038 registerEntry(src.getTop(), trg.getTop(), variant, entry, FALSE);
1041 return entry;
1052 * Attempt to find an entry in a single resource bundle. This is
1058 * On success, create a new Entry object, populate it, and return it.
1121 // resources. Create a new registry entry to hold it and return it.
1122 TransliteratorEntry *entry = new TransliteratorEntry();
1123 if (entry != 0) {
1131 entry->entryType = TransliteratorEntry::LOCALE_RULES;
1132 entry->stringArg = resStr;
1133 entry->intArg = dir;
1136 return entry;
1176 TransliteratorEntry* entry;
1183 entry = (TransliteratorEntry*) registry.get(ID);
1184 if (entry != 0) {
1187 return entry;
1193 entry = findInDynamicStore(src, trg, variant);
1194 if (entry != 0) {
1195 return entry;
1199 entry = findInStaticStore(src, trg, variant);
1200 if (entry != 0) {
1201 return entry;
1209 entry = findInDynamicStore(src, trg, NO_VARIANT);
1210 if (entry != 0) {
1211 return entry;
1215 entry = findInStaticStore(src, trg, NO_VARIANT);
1216 if (entry != 0) {
1217 return entry;
1234 * Given an Entry object, instantiate it. Caller owns result. Return
1242 * The entry object is assumed to reside in the dynamic store. It may be
1246 TransliteratorEntry *entry,
1252 switch (entry->entryType) {
1254 t = new RuleBasedTransliterator(ID, entry->u.data);
1260 t = entry->u.prototype->clone();
1266 aliasReturn = new TransliteratorAlias(entry->stringArg, entry->compoundFilter);
1272 t = entry->u.factory.function(ID, entry->u.factory.context);
1279 UVector* rbts = new UVector(entry->u.dataVector->size(), status);
1286 for (int32_t i = 0; U_SUCCESS(status) && i < entry->u.dataVector->size(); i++) {
1289 (TransliterationRuleData*)(entry->u.dataVector->elementAt(i)), FALSE);
1299 aliasReturn = new TransliteratorAlias(ID, entry->stringArg, rbts, entry->compoundFilter);
1306 aliasReturn = new TransliteratorAlias(ID, entry->stringArg,
1307 (UTransDirection) entry->intArg);
1324 //CharString ch(entry->stringArg);
1326 UnicodeString rules = entry->stringArg;
1345 ((entry->entryType == TransliteratorEntry::RULES_REVERSE) ?