math: MAXINT* constants

This commit is contained in:
Stefan Harmuth 2024-12-07 06:41:16 +01:00
parent dd39c90f13
commit e06e536292

View File

@ -4,6 +4,14 @@ from decimal import Decimal, ROUND_HALF_UP
from typing import Iterable
MAXINT32 = 2**32
MAXINT64 = 2**64
MAXINT32_SIGNED = 2**31
MAXINT64_SIGNED = 2**63
MAXINT32_UNSIGNED = MAXINT32
MAXINT64_UNSIGNED = MAXINT64
def round_half_up(number: int | float) -> int:
"""pythons round() rounds .5 to the *even* number; 0.5 == 0"""
return int(Decimal(number).to_integral(ROUND_HALF_UP))