Join GitHub today
GitHub is home to over 28 million developers working together to host and review code, manage projects, and build software together.Sign up
More WebIDL Issues #97
From: Jason Ausborn email@example.com
Possible Issue Location : 2.3 Interface Definition (interface
Possible Issue : Inside the interface we have a sequence, but
Possible Issue Location :
Possible Issue : int is not a valid WebIDL type for addTransport (..., int
Possible Issue Location 1 :
Possible Issue Location 2:
Possible Issue : Inside the dictionary we have a Dictionary type for
Possible Issue Location : 11.3 Interface Definition (interface
Possible Issue 1: We have a Promise type used in the interface, but Promise
Possible Issue 2: We have an ArrayBuffer type used for RTCDataChannel.data,
Possible Issue Location : 13 Statistics API & 13.5 RTCStats Dictionary
Possible Issue : In section 13 we have a RTCStats interface, but we also
Possible Issue Location 1:
Possible Issue Location 2:
Possible Issue : We don't have the MediaStreamTrack type defined anywhere.
typedef octect ArrayBuffer;
Each dictionary member (matching DictionaryMember) is specified as a type (matching Type) followed by an identifier (given by an identifier token following the type). The identifier is the key name of the key–value pair. If the Type is an identifier followed by ?, then the identifier MUST identify an interface, enumeration, callback function or typedef. If the dictionary member type is an identifier not followed by ?, then the identifier MUST identify any one of those definitions or a dictionary.
And then each interface that does stats derives from:
On the dictionary member, I believe that WebIDL may be expecting a dictionary type to be defined before it can be used as a member in another dictionary.
We might need to define the parameters dictionary type, and then place it as a dictionary member like this below.
However, the above may not be the case if the WebIDL syntax checker (that I am using) is not covering the current WebIDL syntax. The above change passes with the WebIDL online checker, and the previous syntax does not.
This is the WebIDL checker that I have been checking the syntax with.
Also, I was not able to get the syntax for a Promise type to work with the WebIDL checker yet, but I agree it is a legal type based on the specification, but I'm not confident with my understanding of the expected syntax currently.
@robin-raymond Not fully sure based on the webidl spec. And to be honest, the way it is now may be correct. It is the webidl checker that pointed this out as an issue which doesn't seem to be fully up to date on the webidl spec.
I will try to find out more about this soon to know, but I wonder if we can just use an object type.
The above syntax does pass with the webidl checker.