Modifier and Type | Field and Description |
---|---|
Node |
ConcurrentRadixTree.NodeKeyPair.node |
protected Node |
ConcurrentRadixTree.root |
Modifier and Type | Method and Description |
---|---|
Node |
ConcurrentRadixTree.getNode() |
Modifier and Type | Method and Description |
---|---|
protected Iterable<ConcurrentRadixTree.NodeKeyPair> |
ConcurrentRadixTree.lazyTraverseDescendants(CharSequence startKey,
Node startNode)
Traverses the tree using depth-first, preordered traversal, starting at the given node, using lazy evaluation
such that the next node is only determined when next() is called on the iterator returned.
|
Constructor and Description |
---|
NodeKeyPair(Node node,
CharSequence key) |
Modifier and Type | Method and Description |
---|---|
Node |
NodeFactory.createNode(CharSequence edgeCharacters,
Object value,
List<Node> childNodes,
boolean isRoot)
|
Node |
Node.getOutgoingEdge(Character edgeFirstCharacter)
Returns the child of this node whose edge starts with the given first character.
|
Modifier and Type | Method and Description |
---|---|
List<Node> |
Node.getOutgoingEdges()
Returns a read-only list of the child nodes to which this node has outgoing edges, i.e.
|
Modifier and Type | Method and Description |
---|---|
void |
Node.updateOutgoingEdge(Node childNode)
Updates the child node reference for a given edge (identified by its first character) to point to a different
child node.
|
Modifier and Type | Method and Description |
---|---|
Node |
NodeFactory.createNode(CharSequence edgeCharacters,
Object value,
List<Node> childNodes,
boolean isRoot)
|
Modifier and Type | Method and Description |
---|---|
Node |
SmartArrayBasedNodeFactory.createNode(CharSequence edgeCharacters,
Object value,
List<Node> childNodes,
boolean isRoot) |
Node |
DefaultByteArrayNodeFactory.createNode(CharSequence edgeCharacters,
Object value,
List<Node> childNodes,
boolean isRoot) |
Node |
DefaultCharArrayNodeFactory.createNode(CharSequence edgeCharacters,
Object value,
List<Node> childNodes,
boolean isRoot) |
Node |
DefaultCharSequenceNodeFactory.createNode(CharSequence edgeCharacters,
Object value,
List<Node> childNodes,
boolean isRoot) |
Modifier and Type | Method and Description |
---|---|
Node |
SmartArrayBasedNodeFactory.createNode(CharSequence edgeCharacters,
Object value,
List<Node> childNodes,
boolean isRoot) |
Node |
DefaultByteArrayNodeFactory.createNode(CharSequence edgeCharacters,
Object value,
List<Node> childNodes,
boolean isRoot) |
Node |
DefaultCharArrayNodeFactory.createNode(CharSequence edgeCharacters,
Object value,
List<Node> childNodes,
boolean isRoot) |
Node |
DefaultCharSequenceNodeFactory.createNode(CharSequence edgeCharacters,
Object value,
List<Node> childNodes,
boolean isRoot) |
Modifier and Type | Class and Description |
---|---|
class |
ByteArrayNodeDefault
Similar to
CharArrayNodeDefault but represents
each character in UTF-8, instead of Java's default 2-byte UFT-16 encoding. |
class |
ByteArrayNodeLeafNullValue
Similar to
CharArrayNodeLeafNullValue but represents
each character in UTF-8, instead of Java's default 2-byte UFT-16 encoding. |
class |
ByteArrayNodeLeafVoidValue
Similar to
CharArrayNodeLeafVoidValue but represents
each character in UTF-8, instead of Java's default 2-byte UFT-16 encoding. |
class |
ByteArrayNodeLeafWithValue
Similar to
CharArrayNodeLeafWithValue but represents
each character in UTF-8, instead of Java's default 2-byte UFT-16 encoding. |
class |
ByteArrayNodeNonLeafNullValue
Similar to
CharArrayNodeNonLeafNullValue but represents
each character in UTF-8, instead of Java's default 2-byte UFT-16 encoding. |
class |
ByteArrayNodeNonLeafVoidValue
Similar to
CharArrayNodeNonLeafVoidValue but represents
each character in UTF-8, instead of Java's default 2-byte UFT-16 encoding. |
Modifier and Type | Method and Description |
---|---|
Node |
ByteArrayNodeNonLeafVoidValue.getOutgoingEdge(Character edgeFirstCharacter) |
Node |
ByteArrayNodeDefault.getOutgoingEdge(Character edgeFirstCharacter) |
Node |
ByteArrayNodeLeafNullValue.getOutgoingEdge(Character edgeFirstCharacter) |
Node |
ByteArrayNodeNonLeafNullValue.getOutgoingEdge(Character edgeFirstCharacter) |
Node |
ByteArrayNodeLeafWithValue.getOutgoingEdge(Character edgeFirstCharacter) |
Node |
ByteArrayNodeLeafVoidValue.getOutgoingEdge(Character edgeFirstCharacter) |
Modifier and Type | Method and Description |
---|---|
List<Node> |
ByteArrayNodeNonLeafVoidValue.getOutgoingEdges() |
List<Node> |
ByteArrayNodeDefault.getOutgoingEdges() |
List<Node> |
ByteArrayNodeLeafNullValue.getOutgoingEdges() |
List<Node> |
ByteArrayNodeNonLeafNullValue.getOutgoingEdges() |
List<Node> |
ByteArrayNodeLeafWithValue.getOutgoingEdges() |
List<Node> |
ByteArrayNodeLeafVoidValue.getOutgoingEdges() |
Modifier and Type | Method and Description |
---|---|
void |
ByteArrayNodeNonLeafVoidValue.updateOutgoingEdge(Node childNode) |
void |
ByteArrayNodeDefault.updateOutgoingEdge(Node childNode) |
void |
ByteArrayNodeLeafNullValue.updateOutgoingEdge(Node childNode) |
void |
ByteArrayNodeNonLeafNullValue.updateOutgoingEdge(Node childNode) |
void |
ByteArrayNodeLeafWithValue.updateOutgoingEdge(Node childNode) |
void |
ByteArrayNodeLeafVoidValue.updateOutgoingEdge(Node childNode) |
Constructor and Description |
---|
ByteArrayNodeDefault(CharSequence edgeCharSequence,
Object value,
List<Node> outgoingEdges) |
ByteArrayNodeNonLeafNullValue(CharSequence edgeCharSequence,
List<Node> outgoingEdges) |
ByteArrayNodeNonLeafVoidValue(CharSequence edgeCharSequence,
List<Node> outgoingEdges) |
Modifier and Type | Class and Description |
---|---|
class |
CharArrayNodeDefault
A non-optimized implementation of the
Node interface. |
class |
CharArrayNodeLeafNullValue
Stores only incoming edge as a
char[] . |
class |
CharArrayNodeLeafVoidValue
Stores only incoming edge as a
char[] . |
class |
CharArrayNodeLeafWithValue
Stores only incoming edge as a
char[] , and a reference to a value. |
class |
CharArrayNodeNonLeafNullValue
Stores incoming edge as a
char[] and outgoing edges as an AtomicReferenceArray . |
class |
CharArrayNodeNonLeafVoidValue
Stores incoming edge as a
char[] and outgoing edges as an AtomicReferenceArray . |
Modifier and Type | Method and Description |
---|---|
Node |
CharArrayNodeLeafWithValue.getOutgoingEdge(Character edgeFirstCharacter) |
Node |
CharArrayNodeLeafNullValue.getOutgoingEdge(Character edgeFirstCharacter) |
Node |
CharArrayNodeNonLeafVoidValue.getOutgoingEdge(Character edgeFirstCharacter) |
Node |
CharArrayNodeDefault.getOutgoingEdge(Character edgeFirstCharacter) |
Node |
CharArrayNodeLeafVoidValue.getOutgoingEdge(Character edgeFirstCharacter) |
Node |
CharArrayNodeNonLeafNullValue.getOutgoingEdge(Character edgeFirstCharacter) |
Modifier and Type | Method and Description |
---|---|
List<Node> |
CharArrayNodeLeafWithValue.getOutgoingEdges() |
List<Node> |
CharArrayNodeLeafNullValue.getOutgoingEdges() |
List<Node> |
CharArrayNodeNonLeafVoidValue.getOutgoingEdges() |
List<Node> |
CharArrayNodeDefault.getOutgoingEdges() |
List<Node> |
CharArrayNodeLeafVoidValue.getOutgoingEdges() |
List<Node> |
CharArrayNodeNonLeafNullValue.getOutgoingEdges() |
Modifier and Type | Method and Description |
---|---|
void |
CharArrayNodeLeafWithValue.updateOutgoingEdge(Node childNode) |
void |
CharArrayNodeLeafNullValue.updateOutgoingEdge(Node childNode) |
void |
CharArrayNodeNonLeafVoidValue.updateOutgoingEdge(Node childNode) |
void |
CharArrayNodeDefault.updateOutgoingEdge(Node childNode) |
void |
CharArrayNodeLeafVoidValue.updateOutgoingEdge(Node childNode) |
void |
CharArrayNodeNonLeafNullValue.updateOutgoingEdge(Node childNode) |
Constructor and Description |
---|
CharArrayNodeDefault(CharSequence edgeCharSequence,
Object value,
List<Node> outgoingEdges) |
CharArrayNodeNonLeafNullValue(CharSequence edgeCharSequence,
List<Node> outgoingEdges) |
CharArrayNodeNonLeafVoidValue(CharSequence edgeCharSequence,
List<Node> outgoingEdges) |
Modifier and Type | Class and Description |
---|---|
class |
CharSequenceNodeDefault
A implementation of the
Node interface which stores the incoming edge as a CharSequence (a
view onto the original key) rather than copying the edge into a character array. |
class |
CharSequenceNodeLeafNullValue
Stores only incoming edge as a
CharSequence (a view onto the original key) rather than copying the
edge into a character array. |
class |
CharSequenceNodeLeafVoidValue
Stores only incoming edge as a
CharSequence (a view onto the original key) rather than copying the
edge into a character array. |
class |
CharSequenceNodeLeafWithValue
Stores incoming edge as a
CharSequence (a view onto the original key) rather than copying the
edge into a character array. |
class |
CharSequenceNodeNonLeafNullValue
Stores incoming edge as a
CharSequence (a view onto the original key) rather than copying the edge
into a character array, and stores outgoing edges as an AtomicReferenceArray . |
class |
CharSequenceNodeNonLeafVoidValue
Stores incoming edge as a
CharSequence (a view onto the original key) rather than copying the edge
into a character array, and stores outgoing edges as an AtomicReferenceArray . |
Modifier and Type | Method and Description |
---|---|
Node |
CharSequenceNodeDefault.getOutgoingEdge(Character edgeFirstCharacter) |
Node |
CharSequenceNodeLeafWithValue.getOutgoingEdge(Character edgeFirstCharacter) |
Node |
CharSequenceNodeLeafNullValue.getOutgoingEdge(Character edgeFirstCharacter) |
Node |
CharSequenceNodeNonLeafVoidValue.getOutgoingEdge(Character edgeFirstCharacter) |
Node |
CharSequenceNodeNonLeafNullValue.getOutgoingEdge(Character edgeFirstCharacter) |
Node |
CharSequenceNodeLeafVoidValue.getOutgoingEdge(Character edgeFirstCharacter) |
Modifier and Type | Method and Description |
---|---|
List<Node> |
CharSequenceNodeDefault.getOutgoingEdges() |
List<Node> |
CharSequenceNodeLeafWithValue.getOutgoingEdges() |
List<Node> |
CharSequenceNodeLeafNullValue.getOutgoingEdges() |
List<Node> |
CharSequenceNodeNonLeafVoidValue.getOutgoingEdges() |
List<Node> |
CharSequenceNodeNonLeafNullValue.getOutgoingEdges() |
List<Node> |
CharSequenceNodeLeafVoidValue.getOutgoingEdges() |
Modifier and Type | Method and Description |
---|---|
void |
CharSequenceNodeDefault.updateOutgoingEdge(Node childNode) |
void |
CharSequenceNodeLeafWithValue.updateOutgoingEdge(Node childNode) |
void |
CharSequenceNodeLeafNullValue.updateOutgoingEdge(Node childNode) |
void |
CharSequenceNodeNonLeafVoidValue.updateOutgoingEdge(Node childNode) |
void |
CharSequenceNodeNonLeafNullValue.updateOutgoingEdge(Node childNode) |
void |
CharSequenceNodeLeafVoidValue.updateOutgoingEdge(Node childNode) |
Constructor and Description |
---|
CharSequenceNodeDefault(CharSequence edgeCharSequence,
Object value,
List<Node> outgoingEdges) |
CharSequenceNodeNonLeafNullValue(CharSequence edgeCharSequence,
List<Node> outgoingEdges) |
CharSequenceNodeNonLeafVoidValue(CharSequence edgeCharSequence,
List<Node> outgoingEdges) |
Modifier and Type | Method and Description |
---|---|
Node |
PrettyPrintable.getNode() |
Modifier and Type | Method and Description |
---|---|
static int |
NodeUtil.binarySearchForEdge(AtomicReferenceArray<Node> childNodes,
Character edgeFirstCharacter)
Returns the index of the node in the given
AtomicReferenceArray whose edge starts with the given
first character. |
static void |
NodeUtil.ensureNoDuplicateEdges(List<Node> nodes)
Throws an exception if any nodes in the given list represent edges having the same first character.
|
Modifier and Type | Method and Description |
---|---|
Node |
ConcurrentInvertedRadixTree.getNode() |
Modifier and Type | Method and Description |
---|---|
Node |
ConcurrentReversedRadixTree.getNode() |
Modifier and Type | Method and Description |
---|---|
Node |
ConcurrentSuffixTree.getNode() |
Copyright © 2019. All rights reserved.