public class HDPath extends java.util.AbstractList<ChildNumber>
HDPath can be used to represent a full path or a relative path.
 The hasPrivateKey boolean is used for rendering to String
 but (at present) not much else. It defaults to false which is the preferred setting for a relative path.
 
 HDPath is immutable and uses the Collections.UnmodifiableList type internally.
 
 It implements java.util.List<ChildNumber> to ease migration
 from the previous Guava ImmutableList<ChildNumber>. It should be a minor breaking change
 to replace ImmutableList<ChildNumber> with List<ChildNumber> where necessary in your code. Although
 it is recommended to use the HDPath type for clarity and for access to HDPath-specific functionality.
 
 Take note of the overloaded factory methods M() and m(). These can be used to very
 concisely create HDPath objects (especially when statically imported.)
| Modifier and Type | Field and Description | 
|---|---|
protected boolean | 
hasPrivateKey  | 
protected java.util.List<ChildNumber> | 
unmodifiableList  | 
| Constructor and Description | 
|---|
HDPath(boolean hasPrivateKey,
      java.util.List<ChildNumber> list)
Constructs a path for a public or private key. 
 | 
HDPath(java.util.List<ChildNumber> list)
Constructs a path for a public key. 
 | 
| Modifier and Type | Method and Description | 
|---|---|
HDPath | 
extend(ChildNumber child1,
      ChildNumber... children)
Extend the path by appending additional ChildNumber objects. 
 | 
HDPath | 
extend(HDPath path2)
Extend the path by appending a relative path. 
 | 
HDPath | 
extend(java.util.List<ChildNumber> path2)
Extend the path by appending a relative path. 
 | 
ChildNumber | 
get(int index)  | 
boolean | 
hasPrivateKey()
Is this a path to a private key? 
 | 
static HDPath | 
m()
Returns an empty path for a private key. 
 | 
static HDPath | 
M()
Returns an empty path for a public key. 
 | 
static HDPath | 
m(ChildNumber... children)
Returns a path for a private key. 
 | 
static HDPath | 
M(ChildNumber... children)
Returns a path for a public key. 
 | 
static HDPath | 
m(ChildNumber childNumber)
Returns a path for a private key. 
 | 
static HDPath | 
M(ChildNumber childNumber)
Returns a path for a public key. 
 | 
static HDPath | 
m(java.util.List<ChildNumber> list)
Returns a path for a private key. 
 | 
static HDPath | 
M(java.util.List<ChildNumber> list)
Returns a path for a public key. 
 | 
static HDPath | 
parsePath(java.lang.String path)
Create an HDPath from a path string. 
 | 
int | 
size()  | 
java.lang.String | 
toString()  | 
add, add, addAll, clear, equals, hashCode, indexOf, iterator, lastIndexOf, listIterator, listIterator, remove, removeRange, set, subListaddAll, contains, containsAll, isEmpty, remove, removeAll, retainAll, toArray, toArrayclone, finalize, getClass, notify, notifyAll, wait, wait, waitprotected final boolean hasPrivateKey
protected final java.util.List<ChildNumber> unmodifiableList
public HDPath(boolean hasPrivateKey,
              java.util.List<ChildNumber> list)
hasPrivateKey - Whether it is a path to a private key or notlist - List of children in the pathpublic HDPath(java.util.List<ChildNumber> list)
list - List of children in the pathpublic static HDPath M(java.util.List<ChildNumber> list)
list - List of children in the pathpublic static HDPath M()
public static HDPath M(ChildNumber childNumber)
childNumber - Single child in pathpublic static HDPath M(ChildNumber... children)
children - Children in the pathpublic static HDPath m(java.util.List<ChildNumber> list)
list - List of children in the pathpublic static HDPath m()
public static HDPath m(ChildNumber childNumber)
childNumber - Single child in pathpublic static HDPath m(ChildNumber... children)
children - Children in the pathpublic static HDPath parsePath(@Nonnull java.lang.String path)
public boolean hasPrivateKey()
public HDPath extend(ChildNumber child1, ChildNumber... children)
child1 - the first child to appendchildren - zero or more additional children to appendpublic HDPath extend(HDPath path2)
path2 - the relative path to appendpublic HDPath extend(java.util.List<ChildNumber> path2)
path2 - the relative path to appendpublic ChildNumber get(int index)
get in interface java.util.List<ChildNumber>get in class java.util.AbstractList<ChildNumber>public int size()
size in interface java.util.Collection<ChildNumber>size in interface java.util.List<ChildNumber>size in class java.util.AbstractCollection<ChildNumber>public java.lang.String toString()
toString in class java.util.AbstractCollection<ChildNumber>