// DO NOT EDIT THIS FILE - it is machine generated -*- c++ -*- #ifndef __java_text_RuleBasedCollator__ #define __java_text_RuleBasedCollator__ #pragma interface #include #include extern "Java" { namespace java { namespace text { class CharacterIterator; class CollationElementIterator; class CollationKey; class RuleBasedCollator; class RuleBasedCollator$CollationElement; } } } class java::text::RuleBasedCollator : public ::java::text::Collator { public: RuleBasedCollator(::java::lang::String *); public: // actually package-private static jint findPrefixLength(::java::lang::String *, ::java::lang::String *); private: void mergeRules(jint, ::java::lang::String *, ::java::util::ArrayList *, ::java::util::ArrayList *); jint subParseString(jboolean, ::java::util::ArrayList *, jint, ::java::lang::String *); public: virtual ::java::lang::Object * clone(); private: ::java::util::ArrayList * parseString(::java::lang::String *); void buildCollationVector(::java::util::ArrayList *); void buildPrefixAccess(); public: virtual jint compare(::java::lang::String *, ::java::lang::String *); virtual jboolean equals(::java::lang::Object *); public: // actually package-private virtual ::java::text::RuleBasedCollator$CollationElement * getDefaultElement(jchar); virtual ::java::text::RuleBasedCollator$CollationElement * getDefaultAccentedElement(jchar); public: virtual ::java::text::CollationElementIterator * getCollationElementIterator(::java::lang::String *); virtual ::java::text::CollationElementIterator * getCollationElementIterator(::java::text::CharacterIterator *); virtual ::java::text::CollationKey * getCollationKey(::java::lang::String *); virtual ::java::lang::String * getRules(); virtual jint hashCode(); private: ::java::lang::String * __attribute__((aligned(__alignof__( ::java::text::Collator)))) rules; JArray< ::java::lang::Object * > * ce_table; public: // actually package-private ::java::util::HashMap * prefix_tree; private: jint last_primary_value; jint last_tertiary_value; jboolean inverseAccentComparison; public: // actually package-private static ::java::text::RuleBasedCollator$CollationElement * SPECIAL_UNKNOWN_SEQ; public: static ::java::lang::Class class$; }; #endif // __java_text_RuleBasedCollator__