hydra.overlay.python.lib.literals module
Python implementations of hydra.overlay.python.lib.literals primitives.
- hydra.overlay.python.lib.literals.base64_to_binary(s: str) bytes
Convert string to binary by base64 decoding.
- hydra.overlay.python.lib.literals.bigint_to_decimal(x: int) Decimal
Convert a bigint (Integer) to a decimal (arbitrary-precision exact decimal).
- hydra.overlay.python.lib.literals.bigint_to_int16(x: int) int
Convert a bigint (Integer) to an int16.
- hydra.overlay.python.lib.literals.bigint_to_int32(x: int) int
Convert a bigint (Integer) to an int32.
- hydra.overlay.python.lib.literals.bigint_to_int64(x: int) int
Convert a bigint (Integer) to an int64.
- hydra.overlay.python.lib.literals.bigint_to_int8(x: int) int
Convert a bigint (Integer) to an int8.
- hydra.overlay.python.lib.literals.bigint_to_uint16(x: int) int
Convert a bigint (Integer) to a uint16.
- hydra.overlay.python.lib.literals.bigint_to_uint32(x: int) int
Convert a bigint (Integer) to a uint32.
- hydra.overlay.python.lib.literals.bigint_to_uint64(x: int) int
Convert a bigint (Integer) to a uint64.
- hydra.overlay.python.lib.literals.bigint_to_uint8(x: int) int
Convert a bigint (Integer) to a uint8.
- hydra.overlay.python.lib.literals.binary_to_base64(s: bytes) str
Convert binary to string by base64 encoding.
- hydra.overlay.python.lib.literals.binary_to_bytes(s: bytes) tuple[int, ...]
Convert binary to a list of byte values (0-255).
- hydra.overlay.python.lib.literals.decimal_to_bigint(x: Decimal) int
Convert a decimal to a bigint using banker’s rounding (round half to even).
- hydra.overlay.python.lib.literals.decimal_to_float32(x: Decimal) float
Convert a decimal to a float32 (Float), with possible loss of precision.
- hydra.overlay.python.lib.literals.decimal_to_float64(x: Decimal) float
Convert a decimal to a float64 (Double), with possible loss of precision.
- hydra.overlay.python.lib.literals.float32_to_decimal(x: float) Decimal
Convert a float32 (Float) to a decimal.
- hydra.overlay.python.lib.literals.float32_to_float64(x: float) float
Convert a float32 to a float64 (lossless widening; Python floats are 64-bit, so this is identity).
- hydra.overlay.python.lib.literals.float64_to_decimal(x: float) Decimal
Convert a float64 (Double) to a decimal.
- hydra.overlay.python.lib.literals.float64_to_float32(x: float) float
Convert a float64 to a float32 (lossy narrowing). Round-trips through 4-byte IEEE 754 single.
- hydra.overlay.python.lib.literals.int16_to_bigint(x: int) int
Convert an int16 to a bigint (Integer).
- hydra.overlay.python.lib.literals.int32_to_bigint(x: int) int
Convert an int32 to a bigint (Integer).
- hydra.overlay.python.lib.literals.int64_to_bigint(x: int) int
Convert an int64 to a bigint (Integer).
- hydra.overlay.python.lib.literals.int8_to_bigint(x: int) int
Convert an int8 to a bigint (Integer).
- hydra.overlay.python.lib.literals.parse_bigint(s: str) object
Parse a string to a bigint (Integer).
- hydra.overlay.python.lib.literals.parse_decimal(s: str) object
Parse a string to a decimal (arbitrary-precision exact decimal).
- hydra.overlay.python.lib.literals.parse_float32(s: str) object
Parse a string to a float32 (Float).
- hydra.overlay.python.lib.literals.parse_float64(s: str) object
Parse a string to a float64 (Double).
- hydra.overlay.python.lib.literals.parse_int16(s: str) object
Parse a string to an int16 (-32768 to 32767).
- hydra.overlay.python.lib.literals.parse_int8(s: str) object
Parse a string to an int8 (-128 to 127).
- hydra.overlay.python.lib.literals.parse_uint16(s: str) object
Parse a string to a uint16 (0 to 65535).
- hydra.overlay.python.lib.literals.parse_uint32(s: str) object
Parse a string to a uint32 (0 to 4294967295).
- hydra.overlay.python.lib.literals.parse_uint64(s: str) object
Parse a string to a uint64 (0 to 18446744073709551615).
- hydra.overlay.python.lib.literals.print_bigint(x: int) str
Convert a bigint (Integer) to string.
- hydra.overlay.python.lib.literals.print_boolean(b: bool) str
Convert a boolean to string.
- hydra.overlay.python.lib.literals.print_decimal(x: Decimal) str
Convert a decimal to its string, matching Haskell’s Data.Scientific show.
- hydra.overlay.python.lib.literals.print_float32(x: float) str
Convert a float32 (Float) to string, matching Haskell’s show behavior.
Three bugs fixed here (found via the #317 land-gate’s python-to-haskell bootstrap path, which is the only path that actually exercises this Python-hosted Haskell-literal-printing logic, first run to touch a float32 magnitude >= 10^7, a -0.0/+0.0 case, or an exponential- notation value here): (1) the zero case collapsed BOTH +0.0 and -0.0 to the string “0.0”, losing the sign bit; (2) the general case hand-rounded to a hardcoded 6 significant figures, but float32’s shortest-round-trip representation needs up to 9 (e.g. 16777201.0, not a truncated 16777200.0); (3) the exponential-notation mantissa was computed at full float64 precision (e.g. “2.81474943156224e14”), rather than the shortest string that round-trips at float32 precision (the correct “2.8147494e14”, verified against GHC’s show :: Float). Narrows to float32 precision via struct round-trip, then delegates to _format_float_like_haskell (shared with float64) for notation rules, passing pack_fmt=’f’ so the round-trip search targets float32 precision rather than float64.
- hydra.overlay.python.lib.literals.print_float64(x: float) str
Convert a float64 (Double) to string.
- hydra.overlay.python.lib.literals.print_int16(x: int) str
Convert an int16 to string.
- hydra.overlay.python.lib.literals.print_int32(x: int) str
Convert an int32 to string.
- hydra.overlay.python.lib.literals.print_int64(x: int) str
Convert an int64 to string.
- hydra.overlay.python.lib.literals.print_int8(x: int) str
Convert an int8 to string.
- hydra.overlay.python.lib.literals.print_string(s: str) str
Convert a string to a quoted string representation.
- hydra.overlay.python.lib.literals.print_uint16(x: int) str
Convert a uint16 to string.
- hydra.overlay.python.lib.literals.print_uint32(x: int) str
Convert a uint32 to string.
- hydra.overlay.python.lib.literals.print_uint64(x: int) str
Convert a uint64 to string.
- hydra.overlay.python.lib.literals.print_uint8(x: int) str
Convert a uint8 to string.
- hydra.overlay.python.lib.literals.uint16_to_bigint(x: int) int
Convert a uint16 to a bigint (Integer).
- hydra.overlay.python.lib.literals.uint32_to_bigint(x: int) int
Convert a uint32 to a bigint (Integer).
- hydra.overlay.python.lib.literals.uint64_to_bigint(x: int) int
Convert a uint64 to a bigint (Integer).
- hydra.overlay.python.lib.literals.uint8_to_bigint(x: int) int
Convert a uint8 to a bigint (Integer).