| 1 |
758 |
jeremybenn |
|
| 2 |
|
|
// DO NOT EDIT THIS FILE - it is machine generated -*- c++ -*-
|
| 3 |
|
|
|
| 4 |
|
|
#ifndef __java_text_RuleBasedCollator__
|
| 5 |
|
|
#define __java_text_RuleBasedCollator__
|
| 6 |
|
|
|
| 7 |
|
|
#pragma interface
|
| 8 |
|
|
|
| 9 |
|
|
#include <java/text/Collator.h>
|
| 10 |
|
|
#include <gcj/array.h>
|
| 11 |
|
|
|
| 12 |
|
|
extern "Java"
|
| 13 |
|
|
{
|
| 14 |
|
|
namespace java
|
| 15 |
|
|
{
|
| 16 |
|
|
namespace text
|
| 17 |
|
|
{
|
| 18 |
|
|
class CharacterIterator;
|
| 19 |
|
|
class CollationElementIterator;
|
| 20 |
|
|
class CollationKey;
|
| 21 |
|
|
class RuleBasedCollator;
|
| 22 |
|
|
class RuleBasedCollator$CollationElement;
|
| 23 |
|
|
}
|
| 24 |
|
|
}
|
| 25 |
|
|
}
|
| 26 |
|
|
|
| 27 |
|
|
class java::text::RuleBasedCollator : public ::java::text::Collator
|
| 28 |
|
|
{
|
| 29 |
|
|
|
| 30 |
|
|
public:
|
| 31 |
|
|
RuleBasedCollator(::java::lang::String *);
|
| 32 |
|
|
public: // actually package-private
|
| 33 |
|
|
static jint findPrefixLength(::java::lang::String *, ::java::lang::String *);
|
| 34 |
|
|
private:
|
| 35 |
|
|
void mergeRules(jint, ::java::lang::String *, ::java::util::ArrayList *, ::java::util::ArrayList *);
|
| 36 |
|
|
jint subParseString(jboolean, ::java::util::ArrayList *, jint, ::java::lang::String *);
|
| 37 |
|
|
public:
|
| 38 |
|
|
virtual ::java::lang::Object * clone();
|
| 39 |
|
|
private:
|
| 40 |
|
|
::java::util::ArrayList * parseString(::java::lang::String *);
|
| 41 |
|
|
void buildCollationVector(::java::util::ArrayList *);
|
| 42 |
|
|
void buildPrefixAccess();
|
| 43 |
|
|
public:
|
| 44 |
|
|
virtual jint compare(::java::lang::String *, ::java::lang::String *);
|
| 45 |
|
|
virtual jboolean equals(::java::lang::Object *);
|
| 46 |
|
|
public: // actually package-private
|
| 47 |
|
|
virtual ::java::text::RuleBasedCollator$CollationElement * getDefaultElement(jchar);
|
| 48 |
|
|
virtual ::java::text::RuleBasedCollator$CollationElement * getDefaultAccentedElement(jchar);
|
| 49 |
|
|
public:
|
| 50 |
|
|
virtual ::java::text::CollationElementIterator * getCollationElementIterator(::java::lang::String *);
|
| 51 |
|
|
virtual ::java::text::CollationElementIterator * getCollationElementIterator(::java::text::CharacterIterator *);
|
| 52 |
|
|
virtual ::java::text::CollationKey * getCollationKey(::java::lang::String *);
|
| 53 |
|
|
virtual ::java::lang::String * getRules();
|
| 54 |
|
|
virtual jint hashCode();
|
| 55 |
|
|
private:
|
| 56 |
|
|
::java::lang::String * __attribute__((aligned(__alignof__( ::java::text::Collator)))) rules;
|
| 57 |
|
|
JArray< ::java::text::RuleBasedCollator$CollationElement * > * ce_table;
|
| 58 |
|
|
public: // actually package-private
|
| 59 |
|
|
::java::util::HashMap * prefix_tree;
|
| 60 |
|
|
private:
|
| 61 |
|
|
jint last_primary_value;
|
| 62 |
|
|
jint last_tertiary_value;
|
| 63 |
|
|
jboolean inverseAccentComparison;
|
| 64 |
|
|
public: // actually package-private
|
| 65 |
|
|
static ::java::text::RuleBasedCollator$CollationElement * SPECIAL_UNKNOWN_SEQ;
|
| 66 |
|
|
public:
|
| 67 |
|
|
static ::java::lang::Class class$;
|
| 68 |
|
|
};
|
| 69 |
|
|
|
| 70 |
|
|
#endif // __java_text_RuleBasedCollator__
|