1
0

lnutil: (trivial) add ShortChannelID.from_str() method

for console use atm
This commit is contained in:
SomberNight
2021-03-04 12:14:47 +01:00
parent 738411e32b
commit 785fe6aeea

View File

@@ -1265,6 +1265,18 @@ class ShortChannelID(bytes):
oi = output_index.to_bytes(2, byteorder='big')
return ShortChannelID(bh + tpos + oi)
@classmethod
def from_str(cls, scid: str) -> 'ShortChannelID':
"""Parses a formatted scid str, e.g. '643920x356x0'."""
components = scid.split("x")
if len(components) != 3:
raise ValueError(f"failed to parse ShortChannelID: {scid!r}")
try:
components = [int(x) for x in components]
except ValueError:
raise ValueError(f"failed to parse ShortChannelID: {scid!r}") from None
return ShortChannelID.from_components(*components)
@classmethod
def normalize(cls, data: Union[None, str, bytes, 'ShortChannelID']) -> Optional['ShortChannelID']:
if isinstance(data, ShortChannelID) or data is None: