Commit graph

566 commits

Author SHA1 Message Date
Simon Sapin
49e4540ece Update rust-mozjs 2017-10-16 20:20:21 +02:00
Simon Sapin
3bb76a5be5 Don’t rely on unstable 'const fn's in rust-mozjs, so we can remove them. 2017-10-16 20:20:00 +02:00
Simon Sapin
99b052d3a6 Move remaining uses of NonZero to our nonzero crate 2017-10-16 20:19:59 +02:00
Simon Sapin
e2fafd2dfc Replace NonZero<*mut JSObject> with a wrapper to enable local trait impls. 2017-10-16 20:19:56 +02:00
Guillaume Gomez
3d0b7fbc41 Implement EventListenerOptions for EventTarget
For now, only "capture" is supported.
2017-09-30 02:12:35 +02:00
Anthony Ramine
f87c2a8d76 Rename Root<T> to DomRoot<T>
In a later PR, DomRoot<T> will become a type alias of Root<Dom<T>>,
where Root<T> will be able to handle all the things that need to be
rooted that have a stable traceable address that doesn't move for the
whole lifetime of the root. Stay tuned.
2017-09-26 09:49:10 +02:00
Anthony Ramine
e2dac78d36 Rename LayoutJS<T> to LayoutDom<T> 2017-09-26 09:49:04 +02:00
Anthony Ramine
7be32fb237 Rename JS<T> to Dom<T> 2017-09-26 09:48:55 +02:00
Anthony Ramine
0e3c54c191 Rename dom::bindings::js to dom::bindings::root 2017-09-26 02:19:05 +02:00
Josh Matthews
44822c364c Use more named string interpolation. 2017-09-25 16:11:49 -04:00
Josh Matthews
77b3e911c1 Remove almost all uses of Heap::new. 2017-09-25 16:11:49 -04:00
Josh Matthews
f5eb8445b0 Initialize rooted dictionaries to a stable value before setting fields. 2017-09-25 16:11:48 -04:00
Josh Matthews
16166d6673 Derive the Default trait for dictionaries containing GC values. 2017-09-25 16:10:58 -04:00
Josh Matthews
b169689f32 Store rootable dictionary members of dictionaries in RootedTraceableBox. 2017-09-25 16:10:58 -04:00
Josh Matthews
da65698c5c Be more conservative about safety of dictionary and union values.
Mark dictionaries containing GC values as must_root, and wrap them in
RootedTraceableBox in automatically-generated APIs. To accommodate
union variants that are now flagged as unsafe, add RootedTraceableBox
to union variants that need to be rooted, rather than wrapping the
entire union value.
2017-09-25 16:10:58 -04:00
Josh Matthews
e481e8934a Don't generate union conversion functions for object variants. 2017-09-25 16:10:57 -04:00
Anthony Ramine
658dc8a501 Rename a couple of Promise methods 2017-09-21 15:35:04 +02:00
Emilio Cobos Álvarez
90fb284720
script: Properly implement LegacyPlatformGetOwnProperty in WebIDL.
We were missing the "ignoreNamedProperties" bit, which my previous patch
uncovers.
2017-09-18 09:15:14 +02:00
Emilio Cobos Álvarez
6edefb829c
script: remove unused function. 2017-09-18 09:15:13 +02:00
Emilio Cobos Álvarez
f5d16fc069
script: Fix integer-JSID handling in named getters.
Fixes #10686
2017-09-18 09:15:13 +02:00
Emilio Cobos Álvarez
b29e56eefc
script: Fix code generation for named getters.
Fixes part of #18535
2017-09-17 18:42:23 +02:00
Connor Brewster
1a9f4cad08 Fix compartment mismatch issue 2017-08-09 14:36:14 -06:00
Fernando Jiménez Moreno
354d94059b Generate DOM bindings imports for webidl typedefs 2017-08-02 13:15:45 +02:00
Connor Brewster
438191e0b2 Implement CEReactions codegen 2017-07-18 08:18:22 -06:00
Connor Brewster
2333b39569 Implement HTMLConstructor 2017-06-15 21:32:22 -06:00
Connor Brewster
0713257add Generate GetConstructorObject for all interfaces 2017-06-13 15:24:03 -06:00
Anthony Ramine
e566bc7b1c Update the WebIDL parser 2017-06-09 13:57:30 +02:00
Alan Jeffrey
43ca260689 Renamed BrowsingContext to WindowProxy in script. 2017-05-12 15:02:35 -05:00
Aaron Cunningham
f03ddf6c6c Fix various build warnings
This should remove six separate warnings when building servo. One of
the warnings was an unused mut, and the other were various dead code
warnings
2017-04-24 22:54:06 -07:00
mckaymatt
63f9ad022f Add way to get c_void ptr or c_char from caller 2017-04-04 16:46:52 -04:00
bors-servo
af6353df87 Auto merge of #15659 - gregkatz:eliminate_transmute_find_enum, r=Ms2ger
Eliminate a mem::transmute in CodeGen

<!-- Please describe your changes on the following line: -->
Eliminate a mem::transmute in CodeGen by changing the find_enum_string_index function to take a slice of pairs and return an enum value.

---
<!-- Thank you for contributing to Servo! Please replace each `[ ]` by `[X]` when the step is complete, and replace `__` with appropriate data: -->
- [X] `./mach build -d` does not report any errors
- [X] `./mach test-tidy` does not report any errors
- [X] These changes fix #15587 (github issue number if applicable).

<!-- Either: -->
- [ ] There are tests for these changes OR
- [X] These changes do not require tests because _____

<!-- Pull requests that do not address these steps are welcome, but they will require additional verification as part of the review process. -->

<!-- Reviewable:start -->
---
This change is [<img src="https://reviewable.io/review_button.svg" height="34" align="absmiddle" alt="Reviewable"/>](https://reviewable.io/reviews/servo/servo/15659)
<!-- Reviewable:end -->
2017-02-21 04:28:32 -08:00
Gregory Katz
214db8d9f0 Eliminate a mem::transmute in CodeGen 2017-02-20 12:24:45 -05:00
bors-servo
e52eb2a5e3 Auto merge of #15585 - servo:CGConstant, r=nox
Simplify CGConstant.

<!-- Reviewable:start -->
This change is [<img src="https://reviewable.io/review_button.svg" height="34" align="absmiddle" alt="Reviewable"/>](https://reviewable.io/reviews/servo/servo/15585)
<!-- Reviewable:end -->
2017-02-20 04:12:08 -08:00
bors-servo
28698dc8ba Auto merge of #15589 - servo:RootedTraceable-union, r=nox
Use RootedTraceableBox for unions.

<!-- Reviewable:start -->
This change is [<img src="https://reviewable.io/review_button.svg" height="34" align="absmiddle" alt="Reviewable"/>](https://reviewable.io/reviews/servo/servo/15589)
<!-- Reviewable:end -->
2017-02-19 05:56:01 -08:00
Gregory Katz
4d205f00b0 Adds an as_str() method to WebIDL enums to hide slice of strings from callers. Uses the new method in two places. 2017-02-16 10:59:07 -05:00
Ms2ger
d5f8b35a5f Use RootedTraceableBox for unions. 2017-02-16 15:27:16 +01:00
Ms2ger
890273e846 Simplify CGConstant. 2017-02-16 12:03:43 +01:00
Ms2ger
f7e2f0e641 Use RootedTraceableBox for dictionaries. 2017-02-16 11:03:26 +01:00
Ms2ger
8c8eb41cdf Use from_jsval for dictionaries. 2017-02-16 11:03:24 +01:00
Ms2ger
3613e8f231 Implement JSTraceable for more types. 2017-02-16 11:03:22 +01:00
Ms2ger
8ce9ca6243 Use Heap for dictionary and union members. 2017-02-16 11:03:21 +01:00
Ms2ger
5eaa19bdd4 Share a little less code between the branches for conversion to any. 2017-02-16 11:03:20 +01:00
Ms2ger
7d24cd7752 Pass isMember to getJSToNativeConversionInfo for unions.
Also includes a documentation update for isMember.
2017-02-16 11:03:19 +01:00
Zakor Gyula
f3ddee5dbc Modify CodegenRust.py to import structs from sequence return values 2017-02-13 14:35:52 +01:00
bors-servo
6d1d4b5783 Auto merge of #15453 - servo:unwrapCastableObject, r=nox
Inline unwrapCastableObject into its only caller.

<!-- Reviewable:start -->
This change is [<img src="https://reviewable.io/review_button.svg" height="34" align="absmiddle" alt="Reviewable"/>](https://reviewable.io/reviews/servo/servo/15453)
<!-- Reviewable:end -->
2017-02-08 06:38:44 -08:00
Ms2ger
350a970208 Inline unwrapCastableObject into its only caller. 2017-02-08 15:38:23 +01:00
Ms2ger
5230ad2c61 Remove typeNeedsRooting().
It is only used once, in a case where it can never have an effect: in case
for it to do something, both returnType.isDictionary() and
returnType.isGeckoInterface() would need to be true at the same time.
2017-02-08 12:39:38 +01:00
Ms2ger
7d5320f419 Remove pointless assertion in the typedef code. 2017-02-08 12:37:17 +01:00
Ms2ger
507b4bf05e Cleanup formatting for typedefs. 2017-02-08 12:31:56 +01:00
Ms2ger
8a5987c1db Fix typo in the non-union code path for typedefs. 2017-02-08 12:28:51 +01:00