webidl icon indicating copy to clipboard operation
webidl copied to clipboard

Definition name uniqueness requirement omits mixins

Open bathos opened this issue 1 year ago • 0 comments

In the Names section:

Within the set of IDL fragments that a given implementation supports, the identifier of every interface, namespace, dictionary, enumeration, callback function, callback interface and typedef must not be the same as the identifier of any other interface, namespace, dictionary, enumeration, callback function, callback interface or typedef.

I would have expected interface mixins to be in this list, right?

I’m almost certain that’s an accidental omission, but not 100% sure because...

...there are only two places where interface mixin names can be referenced and both are syntactically unambiguous: the second identifier of an IncludesStatement and the first identifier in PartialInterfaceOrMixin : MixinRest. So like ... technically the following fragment is already unambiguous:

interface Foo {};
interface mixin Foo {};
Foo includes Foo;

...to a computer, anyway :)

bathos avatar Jun 25 '23 20:06 bathos