com.ibm.icu.util
Class CharsTrieBuilder

java.lang.Object
  extended by com.ibm.icu.util.StringTrieBuilder
      extended by com.ibm.icu.util.CharsTrieBuilder

public final class CharsTrieBuilder
extends StringTrieBuilder

Builder class for CharsTrie.

This class is not intended for public subclassing.

Author:
Markus W. Scherer
Status:
Stable ICU 4.8.

Nested Class Summary
 
Nested classes/interfaces inherited from class com.ibm.icu.util.StringTrieBuilder
StringTrieBuilder.Option
 
Field Summary
 
Fields inherited from class com.ibm.icu.util.StringTrieBuilder
strings
 
Constructor Summary
CharsTrieBuilder()
          Constructs an empty builder.
 
Method Summary
 CharsTrieBuilder add(CharSequence s, int value)
          Adds a (string, value) pair.
 CharsTrie build(StringTrieBuilder.Option buildOption)
          Builds a CharsTrie for the add()ed data.
 CharSequence buildCharSequence(StringTrieBuilder.Option buildOption)
          Builds a CharsTrie for the add()ed data and char-serializes it.
 CharsTrieBuilder clear()
          Removes all (string, value) pairs.
protected  int getMaxBranchLinearSubNodeLength()
          Deprecated. This API is ICU internal only.
protected  int getMaxLinearMatchLength()
          Deprecated. This API is ICU internal only.
protected  int getMinLinearMatch()
          Deprecated. This API is ICU internal only.
protected  boolean matchNodesCanHaveValues()
          Deprecated. This API is ICU internal only.
protected  int write(int unit)
          Deprecated. This API is ICU internal only.
protected  int write(int offset, int length)
          Deprecated. This API is ICU internal only.
protected  int writeDeltaTo(int jumpTarget)
          Deprecated. This API is ICU internal only.
protected  int writeValueAndFinal(int i, boolean isFinal)
          Deprecated. This API is ICU internal only.
protected  int writeValueAndType(boolean hasValue, int value, int node)
          Deprecated. This API is ICU internal only.
 
Methods inherited from class com.ibm.icu.util.StringTrieBuilder
addImpl, buildImpl, clearImpl
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

CharsTrieBuilder

public CharsTrieBuilder()
Constructs an empty builder.

Status:
Stable ICU 4.8.
Method Detail

add

public CharsTrieBuilder add(CharSequence s,
                            int value)
Adds a (string, value) pair. The string must be unique. The string contents will be copied; the builder does not keep a reference to the input CharSequence.

Parameters:
s - The input string.
value - The value associated with this char sequence.
Returns:
this
Status:
Stable ICU 4.8.

build

public CharsTrie build(StringTrieBuilder.Option buildOption)
Builds a CharsTrie for the add()ed data. Once built, no further data can be add()ed until clear() is called.

Multiple calls to build() or buildCharSequence() return tries or sequences which share the builder's char array, without rebuilding. After clear() has been called, a new array will be used.

Parameters:
buildOption - Build option, see StringTrieBuilder.Option.
Returns:
A new CharsTrie for the add()ed data.
Status:
Stable ICU 4.8.

buildCharSequence

public CharSequence buildCharSequence(StringTrieBuilder.Option buildOption)
Builds a CharsTrie for the add()ed data and char-serializes it. Once built, no further data can be add()ed until clear() is called.

Multiple calls to build() or buildCharSequence() return tries or sequences which share the builder's char array, without rebuilding. After clear() has been called, a new array will be used.

Parameters:
buildOption - Build option, see StringTrieBuilder.Option.
Returns:
A CharSequence with the char-serialized CharsTrie for the add()ed data.
Status:
Stable ICU 4.8.

clear

public CharsTrieBuilder clear()
Removes all (string, value) pairs. New data can then be add()ed and a new trie can be built.

Returns:
this
Status:
Stable ICU 4.8.

matchNodesCanHaveValues

protected boolean matchNodesCanHaveValues()
Deprecated. This API is ICU internal only.

Specified by:
matchNodesCanHaveValues in class StringTrieBuilder
Status:
Internal. This API is ICU internal only.

getMaxBranchLinearSubNodeLength

protected int getMaxBranchLinearSubNodeLength()
Deprecated. This API is ICU internal only.

Specified by:
getMaxBranchLinearSubNodeLength in class StringTrieBuilder
Status:
Internal. This API is ICU internal only.

getMinLinearMatch

protected int getMinLinearMatch()
Deprecated. This API is ICU internal only.

Specified by:
getMinLinearMatch in class StringTrieBuilder
Status:
Internal. This API is ICU internal only.

getMaxLinearMatchLength

protected int getMaxLinearMatchLength()
Deprecated. This API is ICU internal only.

Specified by:
getMaxLinearMatchLength in class StringTrieBuilder
Status:
Internal. This API is ICU internal only.

write

protected int write(int unit)
Deprecated. This API is ICU internal only.

Specified by:
write in class StringTrieBuilder
Status:
Internal. This API is ICU internal only.

write

protected int write(int offset,
                    int length)
Deprecated. This API is ICU internal only.

Specified by:
write in class StringTrieBuilder
Status:
Internal. This API is ICU internal only.

writeValueAndFinal

protected int writeValueAndFinal(int i,
                                 boolean isFinal)
Deprecated. This API is ICU internal only.

Specified by:
writeValueAndFinal in class StringTrieBuilder
Status:
Internal. This API is ICU internal only.

writeValueAndType

protected int writeValueAndType(boolean hasValue,
                                int value,
                                int node)
Deprecated. This API is ICU internal only.

Specified by:
writeValueAndType in class StringTrieBuilder
Status:
Internal. This API is ICU internal only.

writeDeltaTo

protected int writeDeltaTo(int jumpTarget)
Deprecated. This API is ICU internal only.

Specified by:
writeDeltaTo in class StringTrieBuilder
Status:
Internal. This API is ICU internal only.


Copyright (c) 2012 IBM Corporation and others.