Merge pull request #2032 from ericsson49/ericsson49/fix_ceillog2_output_type

Make `cellog2` return `uint64`
This commit is contained in:
Danny Ryan 2020-09-01 07:53:14 -06:00 committed by GitHub
commit 3da7e32068
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
1 changed files with 4 additions and 2 deletions

View File

@ -152,8 +152,10 @@ GeneralizedIndex = NewType('GeneralizedIndex', int)
SSZObject = TypeVar('SSZObject', bound=View) SSZObject = TypeVar('SSZObject', bound=View)
''' '''
SUNDRY_CONSTANTS_FUNCTIONS = ''' SUNDRY_CONSTANTS_FUNCTIONS = '''
def ceillog2(x: uint64) -> int: def ceillog2(x: int) -> uint64:
return (x - 1).bit_length() if x < 1:
raise ValueError(f"ceillog2 accepts only positive values, x={x}")
return uint64((x - 1).bit_length())
''' '''
PHASE0_SUNDRY_FUNCTIONS = ''' PHASE0_SUNDRY_FUNCTIONS = '''
def get_eth1_data(block: Eth1Block) -> Eth1Data: def get_eth1_data(block: Eth1Block) -> Eth1Data: