Lines Matching refs:Specs
53 TransliteratorIDParser::Specs::Specs(const UnicodeString& s, const UnicodeString& t,
117 Specs* specsA = NULL;
118 Specs* specsB = NULL;
220 Specs* specs = parseFilterID(id, pos, TRUE);
221 if (specs == NULL) {
227 SingleID* single = specsToID(specs, FORWARD);
229 single->filter = specs->filter;
231 delete specs;
692 * at any location between specs or delimiters, and is returned
694 * @return a Specs object, or NULL if the parse failed. If
697 * pattern is returned in the Specs object, otherwise the returned
701 TransliteratorIDParser::Specs*
804 return new Specs(source, target, variant, sawSource, filter);
815 TransliteratorIDParser::specsToID(const Specs* specs, int32_t dir) {
819 if (specs != NULL) {
822 if (specs->sawSource) {
823 buf.append(specs->source).append(TARGET_SEP);
825 basicPrefix = specs->source;
828 buf.append(specs->target);
830 buf.append(specs->target).append(TARGET_SEP).append(specs->source);
832 if (specs->variant.length() != 0) {
833 buf.append(VARIANT_SEP).append(specs->variant);
837 if (specs->filter.length() != 0) {
838 buf.insert(0, specs->filter);
846 * Given a Specs object, return a SingleID representing the
853 TransliteratorIDParser::specsToSpecialInverse(const Specs& specs, UErrorCode &status) {
854 if (0!=specs.source.caseCompare(ANY, 3, U_FOLD_CASE_DEFAULT)) {
865 inverseTarget = (UnicodeString*) SPECIAL_INVERSES->get(specs.target);
873 if (specs.filter.length() != 0) {
874 buf.append(specs.filter);
876 if (specs.sawSource) {
884 if (specs.variant.length() != 0) {
885 buf.append(VARIANT_SEP).append(specs.variant);
886 basicID.append(VARIANT_SEP).append(specs.variant);