org.ardverk.collection
Class StringKeyAnalyzer

java.lang.Object
  extended by org.ardverk.collection.AbstractKeyAnalyzer<java.lang.String>
      extended by org.ardverk.collection.StringKeyAnalyzer
All Implemented Interfaces:
java.io.Serializable, java.util.Comparator<java.lang.String>, KeyAnalyzer<java.lang.String>

public class StringKeyAnalyzer
extends AbstractKeyAnalyzer<java.lang.String>

An KeyAnalyzer for Strings

See Also:
Serialized Form

Field Summary
static StringKeyAnalyzer INSTANCE
          A singleton instance of StringKeyAnalyzer
static int LENGTH
          The number of bits per Character
 
Fields inherited from interface org.ardverk.collection.KeyAnalyzer
EQUAL_BIT_KEY, NULL_BIT_KEY, OUT_OF_BOUNDS_BIT_KEY
 
Constructor Summary
StringKeyAnalyzer()
           
 
Method Summary
 int bitIndex(java.lang.String key, int offsetInBits, int lengthInBits, java.lang.String other, int otherOffsetInBits, int otherLengthInBits)
          Returns the n-th different bit between key and found.
 int bitsPerElement()
          Returns the number of bits per element in the key.
 boolean isBitSet(java.lang.String key, int bitIndex, int lengthInBits)
          Returns whether or not a bit is set
 boolean isPrefix(java.lang.String prefix, int offsetInBits, int lengthInBits, java.lang.String key)
          Determines whether or not the given prefix (from offset to length) is a prefix of the given key.
 int lengthInBits(java.lang.String key)
          Returns the length of the Key in bits.
 
Methods inherited from class org.ardverk.collection.AbstractKeyAnalyzer
compare
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 
Methods inherited from interface java.util.Comparator
equals
 

Field Detail

INSTANCE

public static final StringKeyAnalyzer INSTANCE
A singleton instance of StringKeyAnalyzer


LENGTH

public static final int LENGTH
The number of bits per Character

See Also:
Constant Field Values
Constructor Detail

StringKeyAnalyzer

public StringKeyAnalyzer()
Method Detail

bitsPerElement

public int bitsPerElement()
Returns the number of bits per element in the key. This is only useful for variable-length keys, such as Strings.


lengthInBits

public int lengthInBits(java.lang.String key)
Returns the length of the Key in bits.


bitIndex

public int bitIndex(java.lang.String key,
                    int offsetInBits,
                    int lengthInBits,
                    java.lang.String other,
                    int otherOffsetInBits,
                    int otherLengthInBits)
Returns the n-th different bit between key and found. This starts the comparison in key at 'keyStart' and goes for 'keyLength' bits, and compares to the found key starting at 'foundStart' and going for 'foundLength' bits.


isBitSet

public boolean isBitSet(java.lang.String key,
                        int bitIndex,
                        int lengthInBits)
Returns whether or not a bit is set


isPrefix

public boolean isPrefix(java.lang.String prefix,
                        int offsetInBits,
                        int lengthInBits,
                        java.lang.String key)
Determines whether or not the given prefix (from offset to length) is a prefix of the given key.



Copyright © 2005-2009 Roger Kapsi, Sam Berlin. All Rights Reserved.