| Commit message (Collapse) | Author | Age | Files | Lines |
|\
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Fixed compile error in generated code, when webidl constructors have same number of args
One of the ways that generated code differentiates constructors is by comparing if the args are array-like. The generated code was calling a function `IsArrayLike` that no longer exists. I re-implemented it with a more rust-like naming scheme.
<!-- Reviewable:start -->
[<img src="https://reviewable.io/review_button.svg" height="40" alt="Review on Reviewable"/>](https://reviewable.io/reviews/servo/servo/9786)
<!-- Reviewable:end -->
|
| |
| |
| |
| |
| |
| | |
number of args
Edited test webidl to show issue, and fix
|
| | |
|
| | |
|
| | |
|
| |
| |
| |
| |
| | |
We need them to be cached to not instantiate them multiple times with
lazy initialisation.
|
| | |
|
| |
| |
| |
| |
| |
| | |
According to JSProxy.h, without this the default implementation calls
ownPropertyKeys and filters out the unenumerable properties. We know when such
things exist so we don't need to do that.
|
| | |
|
| |
| |
| |
| | |
Named properties are read-only if there is no named setter.
|
| | |
|
| |
| |
| |
| | |
http://github.com/heycam/webidl/issues/82
|
| |
| |
| |
| | |
The receiver parameter is useless here.
|
|/ |
|
|\
| |
| |
| |
| |
| |
| |
| |
| |
| | |
All interface objects now share the same hasInstance
r? @nox
<!-- Reviewable:start -->
[<img src="https://reviewable.io/review_button.svg" height="40" alt="Review on Reviewable"/>](https://reviewable.io/reviews/servo/servo/9633)
<!-- Reviewable:end -->
|
| | |
|
| |
| |
| |
| | |
refer to #9531
|
| | |
|
|/
|
|
| |
Use it on DOMException.
|
| |
|
| |
|
|\
| |
| |
| |
| |
| |
| |
| |
| |
| | |
generate typedefs in CodegenRust.
fixes #9384
<!-- Reviewable:start -->
[<img src="https://reviewable.io/review_button.png" height=40 alt="Review on Reviewable"/>](https://reviewable.io/reviews/servo/servo/9419)
<!-- Reviewable:end -->
|
| | |
|
| |
| |
| |
| | |
module
|
|/ |
|
| |
|
|
|
|
|
|
|
|
| |
That way it does not depend on the return value for the same type.
This hopefully makes the code more clear, and avoids errors if something
changes in the future (for example, we could want to pass slices as
sequence arguments).
|
|
|
|
| |
Unblocks #9053
|
| |
|
| |
|
| |
|
|
|
|
| |
JS_NewFunction doesn't allow us to set the prototype of the interface objects.
|
| |
|
| |
|
|
|
|
| |
window.NodeFilter's prototype should be the object prototype.
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The function do_create_interface_objects is removed in favour of 4 functions:
create_callback_interface_object, create_interface_prototype_object,
create_noncallback_interface_object and create_named_constructors.
While this increases the amount of codegen'd code, this greatly improves the
readability of the code involved in this part of DOM, instead of having one function
doing 4 different things. We can always find a more adequate abstraction later.
NativeProperties and everything related to the interface objects have been removed
from the utils module.
|
| |
|
|\
| |
| |
| |
| |
| |
| |
| | |
Remove unneeded dict sorting functions in CodegenRust.py
<!-- Reviewable:start -->
[<img src="https://reviewable.io/review_button.png" height=40 alt="Review on Reviewable"/>](https://reviewable.io/reviews/servo/servo/9200)
<!-- Reviewable:end -->
|
| | |
|
|/ |
|
| |
|
|\
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Properly propagate changes when range or trees are mutated
Does the same thing as #6817, but storing Range instances directly in their start and end containers.
Cc @dzbarsky
<!-- Reviewable:start -->
[<img src="https://reviewable.io/review_button.png" height=40 alt="Review on Reviewable"/>](https://reviewable.io/reviews/servo/servo/8506)
<!-- Reviewable:end -->
|
| | |
|
|\ \
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Slightly reduce the output of codegen
Interfaces which we know are never instantiated can generate less code.
<!-- Reviewable:start -->
[<img src="https://reviewable.io/review_button.png" height=40 alt="Review on Reviewable"/>](https://reviewable.io/reviews/servo/servo/8993)
<!-- Reviewable:end -->
|
| | |
| | |
| | |
| | |
| | |
| | | |
This makes codegen not emit anything strictly related to the interface which
are never used in the case of abstract interfaces, such as the Wrap method
or the DOMJSClass.
|
| | | |
|
|\ \ \
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
Do not create modules from files with nothing to codegen (fixes #8711)
Fixes #8711.
<!-- Reviewable:start -->
[<img src="https://reviewable.io/review_button.png" height=40 alt="Review on Reviewable"/>](https://reviewable.io/reviews/servo/servo/8996)
<!-- Reviewable:end -->
|
| |/ / |
|
| | | |
|
|\ \ \
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
Remove all our patches to the WebIDL parser
All the tweaks we need can just be made through Configuration.py.
<!-- Reviewable:start -->
[<img src="https://reviewable.io/review_button.png" height=40 alt="Review on Reviewable"/>](https://reviewable.io/reviews/servo/servo/8055)
<!-- Reviewable:end -->
|