Support callback interfaces with constants.

This commit is contained in:
Chris Paris 2014-10-06 22:13:14 -10:00
parent 10c68e7519
commit d2b0d5e040
3 changed files with 61 additions and 36 deletions

View file

@ -162,10 +162,12 @@ class Descriptor(DescriptorProvider):
self.concreteType = ifaceName
self.register = desc.get('register', True)
self.outerObjectHook = desc.get('outerObjectHook', 'None')
self.proxy = False
# If we're concrete, we need to crawl our ancestor interfaces and mark
# them as having a concrete descendant.
self.concrete = desc.get('concrete', True)
self.concrete = (not self.interface.isCallback() and
desc.get('concrete', True))
self.operations = {
'IndexedGetter': None,
@ -190,7 +192,6 @@ class Descriptor(DescriptorProvider):
addOperation('Stringifier', m)
if self.concrete:
self.proxy = False
iface = self.interface
while iface:
for m in iface.members: