Package com.ibm.icu.util
Class StringTrieBuilder.DynamicBranchNode
- java.lang.Object
-
- com.ibm.icu.util.StringTrieBuilder.Node
-
- com.ibm.icu.util.StringTrieBuilder.ValueNode
-
- com.ibm.icu.util.StringTrieBuilder.DynamicBranchNode
-
- Enclosing class:
- StringTrieBuilder
private static final class StringTrieBuilder.DynamicBranchNode extends StringTrieBuilder.ValueNode
-
-
Field Summary
Fields Modifier and Type Field Description private java.lang.StringBuilder
chars
private java.util.ArrayList<StringTrieBuilder.Node>
equal
-
Fields inherited from class com.ibm.icu.util.StringTrieBuilder.ValueNode
hasValue, value
-
Fields inherited from class com.ibm.icu.util.StringTrieBuilder.Node
offset
-
-
Constructor Summary
Constructors Constructor Description DynamicBranchNode()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description void
add(char c, StringTrieBuilder.Node node)
StringTrieBuilder.Node
add(StringTrieBuilder builder, java.lang.CharSequence s, int start, int sValue)
Recursive method for adding a new (string, value) pair.private int
find(char c)
StringTrieBuilder.Node
register(StringTrieBuilder builder)
Recursive method for registering unique nodes, after all (string, value) pairs have been added.private StringTrieBuilder.Node
register(StringTrieBuilder builder, int start, int limit)
-
Methods inherited from class com.ibm.icu.util.StringTrieBuilder.ValueNode
equals, hashCode, setValue, write
-
Methods inherited from class com.ibm.icu.util.StringTrieBuilder.Node
getOffset, markRightEdgesFirst, writeUnlessInsideRightEdge
-
-
-
-
Field Detail
-
chars
private java.lang.StringBuilder chars
-
equal
private java.util.ArrayList<StringTrieBuilder.Node> equal
-
-
Method Detail
-
add
public void add(char c, StringTrieBuilder.Node node)
-
add
public StringTrieBuilder.Node add(StringTrieBuilder builder, java.lang.CharSequence s, int start, int sValue)
Description copied from class:StringTrieBuilder.Node
Recursive method for adding a new (string, value) pair. Matches the remaining part of s from start, and adds a new node where there is a mismatch.- Overrides:
add
in classStringTrieBuilder.ValueNode
- Returns:
- this or a replacement Node
-
register
public StringTrieBuilder.Node register(StringTrieBuilder builder)
Description copied from class:StringTrieBuilder.Node
Recursive method for registering unique nodes, after all (string, value) pairs have been added. Final-value nodes are pre-registered while add()ing (string, value) pairs. Other nodes created while add()ing registerNode() themselves later and might replace themselves with new types of nodes for write()ing.- Overrides:
register
in classStringTrieBuilder.Node
- Returns:
- The registered version of this node which implements write().
-
register
private StringTrieBuilder.Node register(StringTrieBuilder builder, int start, int limit)
-
find
private int find(char c)
-
-