mirror of
https://gitlab.freedesktop.org/xorg/proto/xcbproto.git
synced 2026-05-09 07:08:08 +02:00
Revive support for hex literals in protocol
As a side-effect it also adds octal and binary literals. Exact syntax is described at http://docs.python.org/reference/lexical_analysis.html#numbers It is unwise to use full syntax, as there might be other binding generators, octal, binary and hex literals seem to be safe though. Signed-off-by: Mikhail Gusarov <dottedmag@dottedmag.net> Signed-off-by: Julien Danjou <julien@danjou.info>
This commit is contained in:
parent
2d873a3dc8
commit
dae6b32d78
2 changed files with 3 additions and 3 deletions
|
|
@ -77,7 +77,7 @@ class Expression(object):
|
|||
|
||||
elif elt.tag == 'value':
|
||||
# Constant expression
|
||||
self.nmemb = int(elt.text)
|
||||
self.nmemb = int(elt.text, 0)
|
||||
|
||||
else:
|
||||
# Notreached
|
||||
|
|
|
|||
|
|
@ -131,7 +131,7 @@ class Enum(SimpleType):
|
|||
if value.tag == 'value':
|
||||
self.values.append((item.get('name'), value.text))
|
||||
elif value.tag == 'bit':
|
||||
self.values.append((item.get('name'), '%u' % (1 << int(value.text))))
|
||||
self.values.append((item.get('name'), '%u' % (1 << int(value.text, 0))))
|
||||
self.bits.append((item.get('name'), value.text))
|
||||
|
||||
def resolve(self, module):
|
||||
|
|
@ -243,7 +243,7 @@ class PadType(Type):
|
|||
Type.__init__(self, tcard8.name)
|
||||
self.is_pad = True
|
||||
self.size = 1
|
||||
self.nmemb = 1 if (elt == None) else int(elt.get('bytes'))
|
||||
self.nmemb = 1 if (elt == None) else int(elt.get('bytes'), 0)
|
||||
|
||||
def resolve(self, module):
|
||||
self.resolved = True
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue