/// <summary> /// Constructor. /// </summary> /// <param name="id">The ID of the form S-T or S-T/V, where T is theTarget /// and V is theVariant. Must not be empty.</param> /// <param name="filter">The Unicode filter.</param> /// <param name="target2">The target name.</param> /// <param name="targetScript2">The script code corresponding to theTarget.</param> /// <param name="widthFix2">The <see cref="Transliterator"/> width fix.</param> /// <param name="cache2">The <see cref="ConcurrentDictionary{TKey, TValue}"/> object for cache.</param> public AnyTransliterator(string id, UnicodeFilter filter, string target2, int targetScript2, Transliterator widthFix2, ConcurrentDictionary <int, Transliterator> cache2) : base(id, filter) { targetScript = targetScript2; cache = cache2; target = target2; }
/// <summary> /// Temporary hack for registry problem. Needs to be replaced by better architecture. /// </summary> public virtual Transliterator SafeClone() { UnicodeFilter filter = Filter; if (filter != null && filter is UnicodeSet) { filter = new UnicodeSet((UnicodeSet)filter); } return(new CompoundTransliterator(ID, filter, trans, numAnonymousRBTs)); }
public Transliterator SafeClone() { UnicodeFilter filter = Filter; if (filter != null && filter is UnicodeSet) { filter = new UnicodeSet((UnicodeSet)filter); } return(new RuleBasedTransliterator(ID, data, filter)); }
/// <summary> /// Temporary hack for registry problem. Needs to be replaced by better architecture. /// </summary> public virtual Transliterator SafeClone() { UnicodeFilter filter = Filter; if (filter != null && filter is UnicodeSet) { filter = new UnicodeSet((UnicodeSet)filter); } return(new AnyTransliterator(ID, filter, target, targetScript, widthFix, cache)); }
/// <summary> /// Constructs a transliterator. /// </summary> /// <param name="filter"></param> public UnicodeNameTransliterator(UnicodeFilter filter) : base(_ID, filter) { }
public BreakTransliterator(string id, UnicodeFilter filter) : this(id, filter, null, " ") { }
public BreakTransliterator(string id, UnicodeFilter filter, BreakIterator bi, string insertion) : base(id, filter) { this.bi = bi; this.insertion = insertion; }
/// <summary> /// Internal method for SafeClone... /// </summary> /// <param name="id"></param> /// <param name="filter2"></param> /// <param name="trans2"></param> /// <param name="numAnonymousRBTs2"></param> internal CompoundTransliterator(string id, UnicodeFilter filter2, Transliterator[] trans2, int numAnonymousRBTs2) : base(id, filter2) { trans = trans2; numAnonymousRBTs = numAnonymousRBTs2; }
// /** // * Constructs a new transliterator from the given rules. // * @param rules rules, separated by ';' // * @param direction either FORWARD or REVERSE. // * @exception IllegalArgumentException if rules are malformed // * or direction is invalid. // */ // public RuleBasedTransliterator(String ID, String rules, int direction, // UnicodeFilter filter) { // super(ID, filter); // if (direction != FORWARD && direction != REVERSE) { // throw new IllegalArgumentException("Invalid direction"); // } // // TransliteratorParser parser = new TransliteratorParser(); // parser.parse(rules, direction); // if (parser.idBlockVector.size() != 0 || // parser.compoundFilter != null) { // throw new IllegalArgumentException("::ID blocks illegal in RuleBasedTransliterator constructor"); // } // // data = (Data)parser.dataVector.get(0); // setMaximumContextLength(data.ruleSet.getMaximumContextLength()); // } // /** // * Constructs a new transliterator from the given rules in the // * <code>FORWARD</code> direction. // * @param rules rules, separated by ';' // * @exception IllegalArgumentException if rules are malformed // * or direction is invalid. // */ // public RuleBasedTransliterator(String ID, String rules) { // this(ID, rules, FORWARD, null); // } internal RuleBasedTransliterator(string ID, Data data, UnicodeFilter filter) : base(ID, filter) { this.data = data; MaximumContextLength = data.RuleSet.MaximumContextLength; }