--- WebIDL.py +++ WebIDL.py @@ -3653,6 +3653,7 @@ class IDLInterfaceMember(IDLObjectWithIdentifier, IDLExposureMixins): IDLObjectWithIdentifier.__init__(self, location, None, identifier) IDLExposureMixins.__init__(self, location) self.tag = tag + self.exposed = set() if extendedAttrDict is None: self._extendedAttrDict = {} else: @@ -3686,12 +3687,16 @@ class IDLInterfaceMember(IDLObjectWithIdentifier, IDLExposureMixins): def getExtendedAttribute(self, name): return self._extendedAttrDict.get(name, None) + def exposedSet(self): + return self.exposed + def finish(self, scope): # We better be exposed _somewhere_. if (len(self._exposureGlobalNames) == 0): print self.identifier.name assert len(self._exposureGlobalNames) != 0 IDLExposureMixins.finish(self, scope) + globalNameSetToExposureSet(scope, self._exposureGlobalNames, self.exposed) def validate(self): if self.isAttr() or self.isMethod():