widlparser
widlparser copied to clipboard
Stand-alone WebIDL Parser in Python
Ref https://github.com/whatwg/webidl/pull/1397 DO NOT LAND UNTIL SPEC CHANGE IS LANDED
See https://github.com/whatwg/webidl/pull/1311.
See https://github.com/whatwg/webidl/issues/1214. Apparently this restriction used to exist in 2013, but was removed in https://github.com/whatwg/webidl/commit/97499d48855a9f9012fe145d49b83ccd71d1738b. (I got this error via Bikeshed, but I am assuming it's because of widlparser; my...
Despite virtually all constructs having a name, `name` was still marked as `Optional[str]` everywhere. This PR narrows that to `str` wherever possible, so I don't have to do lots of...
Here are two fragments of WebCodecs WebIDL: ```webidl dictionary AudioDecoderConfig { required DOMString codec; [EnforceRange] required unsigned long sampleRate; [EnforceRange] required unsigned long numberOfChannels; BufferSource description; }; ``` and ```webidl...
Given the following IDL: ```idl interface OfflineAudioContext : BaseAudioContext { constructor(OfflineAudioContextOptions contextOptions); constructor(unsigned long numberOfChannels, unsigned long length, float sampleRate); }; ``` If I parse it, then call `widl.normalized_method_names("constructor()")`, I...
See https://github.com/heycam/webidl/pull/936. - `BigInt64Array` and `BigUint64Array` are introduced as keywords. - The `ArrayBufferView` and `BufferSource` aliases now include BigInt64Array and BigUint64Array as part of the union.
It would be great if errors like https://github.com/gpuweb/gpuweb/issues/1484 would not have to be caught by someone trying to implement the specification.
```webidl dictionary TableType { required DOMString element; }; dictionary InitialTableDescriptor : TableType {}; interface Table { constructor(InitialTableDescriptor descriptor); }; ``` yields ``` IDL ERROR LINE: ___ - Dictionary argument "descriptor"...
After the specs are updated, see https://github.com/heycam/webidl/issues/778