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__
|