summaryrefslogtreecommitdiff
path: root/libjava/java/text/RuleBasedCollator.h
blob: 74b5aa8ea3955267cc6e40239d6ffe77ef945da2 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
// DO NOT EDIT THIS FILE - it is machine generated -*- c++ -*-

#ifndef __java_text_RuleBasedCollator__
#define __java_text_RuleBasedCollator__

#pragma interface

#include <java/text/Collator.h>
#include <gcj/array.h>

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::text::RuleBasedCollator$CollationElement * > * 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__