summaryrefslogtreecommitdiff
path: root/libjava/java/text/CollationKey.java
diff options
context:
space:
mode:
authormkoch <mkoch@138bc75d-0d04-0410-961f-82ee72b054a4>2004-05-31 22:16:31 +0000
committermkoch <mkoch@138bc75d-0d04-0410-961f-82ee72b054a4>2004-05-31 22:16:31 +0000
commit46a4597d453ae3e13325c7514f22228f04a0c485 (patch)
tree84eadd76d1df1c8b46bd05dd00699bc802f78611 /libjava/java/text/CollationKey.java
parentb33ea851f510803f0fd52f077f42450ff0fe4928 (diff)
downloadgcc-46a4597d453ae3e13325c7514f22228f04a0c485.tar.gz
2004-06-01 Michael Koch <konqueror@gmx.de>
* java/text/CollationElementIterator.java, java/text/CollationKey.java, java/text/RuleBasedCollator.java: New versions from GNU classpath. * testsuite/libjava.mauve/xfails: Removed all java.text.CollationElementIterator tests. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@82510 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'libjava/java/text/CollationKey.java')
-rw-r--r--libjava/java/text/CollationKey.java28
1 files changed, 4 insertions, 24 deletions
diff --git a/libjava/java/text/CollationKey.java b/libjava/java/text/CollationKey.java
index abc28b22ebb..4e6aca2635d 100644
--- a/libjava/java/text/CollationKey.java
+++ b/libjava/java/text/CollationKey.java
@@ -78,24 +78,13 @@ public final class CollationKey implements Comparable
/**
* This is the bit value for this key.
*/
- private int[] key;
+ private byte[] key;
- CollationKey(Collator collator, CollationElementIterator iter,
- String originalText, int strength)
+ CollationKey (Collator collator, String originalText, byte[] key)
{
this.collator = collator;
this.originalText = originalText;
-
- // Compute size of required array.
- int size = 0;
- while (RuleBasedCollator.next(iter, strength)
- != CollationElementIterator.NULLORDER)
- ++size;
-
- iter.reset();
- key = new int[size];
- for (int i = 0; i < size; i++)
- key[i] = RuleBasedCollator.next(iter, strength);
+ this.key = key;
}
/**
@@ -205,15 +194,6 @@ public final class CollationKey implements Comparable
*/
public byte[] toByteArray()
{
- byte[] r = new byte[4 * key.length];
- int off = 0;
- for (int i = 0; i < key.length; ++i)
- {
- r[off++] = (byte) ((key[i] >>> 24) & 255);
- r[off++] = (byte) ((key[i] >>> 16) & 255);
- r[off++] = (byte) ((key[i] >>> 8) & 255);
- r[off++] = (byte) ((key[i] ) & 255);
- }
- return r;
+ return key;
}
}