- All Implemented Interfaces:
- java.lang.Comparable<PublicSuffixes.Node>
- Enclosing class:
- PublicSuffixes
public static class PublicSuffixes.Node
extends java.lang.Object
implements java.lang.Comparable<PublicSuffixes.Node>
prefix tree node. each Node represents sequence of letters (prefix)
and alternative sequences following it (list of Node's). Nodes in
branches are sorted for skip list like lookup and for generating
effective regular expression (see #compareTo(Node) and #compareTo(char).)
as is intended for internal use only, there's no access methods. procedures for updating
prefix tree with new input are defined within this class ({@link #addBranch(CharSequence)}).
terminal node could be represented in two different form: 1) Node with zero branches,
or 2) Node with zero-length {@code cs}. So, root node must be initialized with empty (not null)
{@code branches} unless empty string matches the overall pattern.
{@code cs} must not be null except for root node.