Parse decimal in the form of '08U'.
Parse division such as FLASH_BANK_SIZE / FLASH_SOMETHING in defines.
This commit is contained in:
parent
0358c950da
commit
dca5886b25
4
parse.py
4
parse.py
@ -148,6 +148,8 @@ def parse_value(val, defines):
|
||||
val = val.strip()
|
||||
if val == '':
|
||||
return 0
|
||||
if m := re.match('(0([1-9][0-9]*)(U))', val):
|
||||
return int(m.group(2), 10)
|
||||
if m := re.match('((0x[0-9a-fA-F]+|\\d+))(|u|ul|U|UL)$', val):
|
||||
return int(m.group(1), 0)
|
||||
if m := re.match('([0-9A-Za-z_]+)$', val):
|
||||
@ -159,6 +161,8 @@ def parse_value(val, defines):
|
||||
return parse_value(m.group(1), defines)
|
||||
# if m := re.match('\\*?\\(u?int(8|16|32|64)_t\\ *)(.*)$', val):
|
||||
# return parse_value(m.group(1), defines)
|
||||
if m := re.match('(.*)/(.*)$', val):
|
||||
return parse_value(m.group(1), defines) / parse_value(m.group(2), defines)
|
||||
if m := re.match('(.*)<<(.*)$', val):
|
||||
return (parse_value(m.group(1), defines) << parse_value(m.group(2), defines)) & 0xFFFFFFFF
|
||||
if m := re.match('(.*)>>(.*)$', val):
|
||||
|
Loading…
x
Reference in New Issue
Block a user