mirror of
https://github.com/bitcoin/bips.git
synced 2025-05-12 12:03:29 +00:00
bip-path-templates: Change chars for ranges from "[]" to "{}"
This commit is contained in:
parent
2305c5bda6
commit
6ffc3542f8
@ -98,7 +98,7 @@ Each section consists of ''index template'', optionally followed by the hardened
|
|||||||
Index template can be:
|
Index template can be:
|
||||||
|
|
||||||
* An integer value from 0 to 2147483647 ("Unit index template")
|
* An integer value from 0 to 2147483647 ("Unit index template")
|
||||||
* The <nowiki>"["</nowiki> character, followed by a number of ''index ranges'' delimited by commas (","), followed by <nowiki>"]"</nowiki> character ("Ranged index template")
|
* The <nowiki>"{"</nowiki> character, followed by a number of ''index ranges'' delimited by commas (","), followed by <nowiki>"}"</nowiki> character ("Ranged index template")
|
||||||
|
|
||||||
Implementations MAY limit the maximum number of index ranges within the Ranged index template.
|
Implementations MAY limit the maximum number of index ranges within the Ranged index template.
|
||||||
|
|
||||||
@ -129,7 +129,7 @@ It may be desireable to have fully unambiguous encoding, where for each valid pa
|
|||||||
|
|
||||||
To achieve this, two extra rules are needed:
|
To achieve this, two extra rules are needed:
|
||||||
|
|
||||||
* Within Ranged index template, subsequent range MUST NOT start with the value that is equal to the end of the previous range plus one. Thus, <nowiki>"[1,2,3-5]"</nowiki> is not allowed, and should be specified as <nowiki>"[1-5]"</nowiki> instead. This rule might make templates less convenient for frequent edits, though.
|
* Within Ranged index template, subsequent range MUST NOT start with the value that is equal to the end of the previous range plus one. Thus, <nowiki>"{1,2,3-5}"</nowiki> is not allowed, and should be specified as <nowiki>"{1-5}"</nowiki> instead. This rule might make templates less convenient for frequent edits, though.
|
||||||
|
|
||||||
* Only one type of hardened marker should be allowed (either "h" or "'").
|
* Only one type of hardened marker should be allowed (either "h" or "'").
|
||||||
|
|
||||||
@ -193,7 +193,7 @@ At the moment, three implementations exist:
|
|||||||
|
|
||||||
==Examples==
|
==Examples==
|
||||||
|
|
||||||
'''"m/[44,49,84]'/0'/0'/[0-1]/[0-50000]"''' specifies a full template that matches both external and internal chains of BIP44, BIP49 and BIP84 paths, with a constraint that the address index cannot be larger than 50000
|
'''"m/{44,49,84}'/0'/0'/{0-1}/{0-50000}"''' specifies a full template that matches both external and internal chains of BIP44, BIP49 and BIP84 paths, with a constraint that the address index cannot be larger than 50000
|
||||||
|
|
||||||
Its representation after parsing can be (using Python syntax, ignoring full/partial distinction):
|
Its representation after parsing can be (using Python syntax, ignoring full/partial distinction):
|
||||||
[[(2147483692, 2147483692), (2147483697, 2147483697), (2147483732, 2147483732)),
|
[[(2147483692, 2147483692), (2147483697, 2147483697), (2147483732, 2147483732)),
|
||||||
@ -202,7 +202,7 @@ Its representation after parsing can be (using Python syntax, ignoring full/part
|
|||||||
[(0, 1)],
|
[(0, 1)],
|
||||||
[(0, 50000)]]
|
[(0, 50000)]]
|
||||||
|
|
||||||
'''"[0-2,33,123]/*"''' specifies a partial template that matches non-hardened values 0, 1, 2, 33, 123 as first index, and any non-hardened value at second index
|
'''"{0-2,33,123}/*"''' specifies a partial template that matches non-hardened values 0, 1, 2, 33, 123 as first index, and any non-hardened value at second index
|
||||||
|
|
||||||
Its representation after parsing can be:
|
Its representation after parsing can be:
|
||||||
[[(0, 2), (33, 33), (123, 123)], [(0, 2147483647)]]
|
[[(0, 2), (33, 33), (123, 123)], [(0, 2147483647)]]
|
||||||
|
Loading…
x
Reference in New Issue
Block a user