MCPcopy Index your code
hub / github.com/RustPython/RustPython / _parse_hextet

Method _parse_hextet

Lib/ipaddress.py:1761–1784  ·  view source on GitHub ↗

Convert an IPv6 hextet string into an integer. Args: hextet_str: A string, the number to parse. Returns: The hextet as an integer. Raises: ValueError: if the input isn't strictly a hex number from [0..FFFF].

(cls, hextet_str)

Source from the content-addressed store, hash-verified

1759
1760 @classmethod
1761 def _parse_hextet(cls, hextet_str):
1762 """Convert an IPv6 hextet string into an integer.
1763
1764 Args:
1765 hextet_str: A string, the number to parse.
1766
1767 Returns:
1768 The hextet as an integer.
1769
1770 Raises:
1771 ValueError: if the input isn't strictly a hex number from
1772 [0..FFFF].
1773
1774 """
1775 # Reject non-ASCII digits.
1776 if not cls._HEX_DIGITS.issuperset(hextet_str):
1777 raise ValueError("Only hex digits permitted in %r" % hextet_str)
1778 # We do the length check second, since the invalid character error
1779 # is likely to be more informative for the user
1780 if len(hextet_str) > 4:
1781 msg = "At most 4 characters permitted in %r"
1782 raise ValueError(msg % hextet_str)
1783 # Length check means we can skip checking the integer value
1784 return int(hextet_str, 16)
1785
1786 @classmethod
1787 def _compress_hextets(cls, hextets):

Callers 1

_ip_int_from_stringMethod · 0.80

Calls 2

lenFunction · 0.85
issupersetMethod · 0.45

Tested by

no test coverage detected