bors-servo
4275420a56
Auto merge of #23844 - saschanaz:tojson, r=Manishearth
...
Support default toJSON in WebIDL
<!-- Please describe your changes on the following line: -->
Ported related lines from gecko.
---
<!-- 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 #22781
<!-- Either: -->
- [x] There are tests for these changes
<!-- Also, please make sure that "Allow edits from maintainers" checkbox is checked, so that we can help you if you get stuck somewhere along the way.-->
<!-- 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/23844 )
<!-- Reviewable:end -->
2019-08-20 17:27:14 -04:00
marmeladema
357b6c54ff
Use safe JSContext in callbacks
2019-08-09 00:43:29 +01:00
marmeladema
0703a1ad6d
Use safe JSContext as first argument for throw_dom_exception
2019-08-09 00:43:28 +01:00
marmeladema
6c26518f61
Remove usage of various unsafe keyword
2019-08-09 00:43:28 +01:00
marmeladema
78034a90d0
Use safe JSContext when possible in interface.rs
2019-08-09 00:43:24 +01:00
marmeladema
b18fa8b8a7
Use safe JSContext in compartments
2019-08-09 00:02:10 +01:00
marmeladema
8968286aa1
Don't mark new methods as unsafe in code generation
2019-08-09 00:02:09 +01:00
marmeladema
51e22fbc26
Remove some usage of unsafe code in Promise
2019-08-09 00:02:07 +01:00
Simon Sapin
c38c964f1b
Upgrade to rustc 1.38.0-nightly (dddb7fca0 2019-07-30)
2019-07-31 13:34:01 +02:00
Simon Sapin
0215d09ccb
Generate apis.html and css-properties.json for docs as part of crates’ build scripts
...
… rather than as an extra step after `cargo doc`.
This helps always using the correct set of CSS properties
(for layout 2013 v.s. 2020).
2019-07-30 08:37:33 +02:00
Josh Matthews
410d5bc772
Update SpiderMonkey bindings for Windows arm64 crash fix.
2019-07-25 20:23:21 -04:00
Kagami Sascha Rosylight
bf70decdd3
remove redundant extra scoping
2019-07-25 12:43:43 +09:00
Kagami Sascha Rosylight
87cc409579
use SafeJSContext
2019-07-25 11:14:21 +09:00
Kagami Sascha Rosylight
caf7a2488e
Merge branch 'master' into tojson
2019-07-25 10:09:33 +09:00
Kagami Sascha Rosylight
16b4e3446b
Support default toJSON in WebIDL
2019-07-24 22:01:55 +09:00
marmeladema
2c5d0a6ebc
Convert CGTraitInterface to use safe JSContext instead of raw JSContext
2019-07-24 08:24:50 +01:00
marmeladema
808fa65aef
Convert internal methods to handle safe JSContext instead of raw JSContext
2019-07-24 08:18:22 +01:00
marmeladema
2fb3f1f983
Callbacks now uses safe JSContext instead of raw JSContext
2019-07-24 08:18:22 +01:00
marmeladema
6e4caf1153
DefineDOMInterfaceMethod now takes a SafeJSContext instead of a JSContext
...
as first argument.
2019-07-24 08:18:22 +01:00
marmeladema
aa0e4f5c76
GetPerInterfaceObject methods now takes a SafeJSContext instead of a JSContext
...
as first argument.
2019-07-24 08:18:22 +01:00
marmeladema
0a5a9bc7bc
CreateInterfaceObjects now takes a SafeJSContext instead of a JSContext
...
as first argument.
2019-07-24 08:18:21 +01:00
marmeladema
35dc5320ab
Wrap(Global)Method now takes a SafeJSContext instead of a JSContext
...
as first argument.
2019-07-24 08:18:21 +01:00
marmeladema
cd0eb88a3e
ConstructorEnabled now takes a SafeJSContext instead of a JSContext
...
a first argument. The function cannot be made safe because of call
to unsafe function is_exposed_in.
2019-07-24 08:18:20 +01:00
sreeise
871239a3e3
Change bindings generation to make Exposed annotation aware of members/partial interfaces
2019-07-14 09:24:43 -04:00
Kagami Sascha Rosylight
01151274f1
Require default dictionary value for optional dicts
2019-07-12 12:16:09 +09:00
Kagami Sascha Rosylight
40dbb2c100
Implement DOMPoint.fromPoint
2019-07-06 01:15:24 +09:00
Josh Matthews
63714c90fb
Upgrade to Spidermonkey 67.
2019-06-26 18:10:46 -04:00
Bastien Orivel
b7e10a8224
Make tidy happy
2019-05-25 23:23:42 +02:00
Bastien Orivel
0b29caa554
Add support for attributes to the inCompartments binding parameter
2019-05-25 14:43:44 +02:00
Bastien Orivel
7dbff6efb7
Add an inCompartments config for bindings
2019-05-24 23:02:38 +02:00
Josh Matthews
4328713f71
Update to SpiderMonkey 66.
2019-05-10 22:43:43 -04:00
Peter Hall
8bfd4dc1e2
#8539 Config preferences backend restructure
2019-03-20 15:01:26 +00:00
Anthony Ramine
4d527b20ee
Simplify RootedReference and make it specifically about slicesIt's now called DomSlice<T>.
2019-03-11 16:25:39 +01:00
Anthony Ramine
1744a42dad
Don't use RootedReference for Option<T> in codegen anymore
2019-03-10 18:24:35 +01:00
Anthony Ramine
5fe5e5d6de
Remove most RootedReference uses
...
We can replace all uses of RootedReference for Option<T> by Option::deref calls.
2019-03-10 17:51:35 +01:00
Manish Goregaokar
ce635b715b
Add support for default dict values being boolean, use in MediaStreamConstraints
2019-03-04 15:31:47 +05:30
Manish Goregaokar
caa05948bf
Add aspect/frameRate/sampleRate parameters
2019-03-04 15:31:47 +05:30
Manish Goregaokar
7b48df53a1
Update WebIDL.py to 4166cae81546
...
4166cae815
Pulls in changes from https://bugzilla.mozilla.org/show_bug.cgi?id=1359269
2019-03-04 14:03:31 +05:30
Piotr Szpetkowski
abd577bfd4
Update bool pattern matching into if-else
2019-01-30 20:54:12 +01:00
Josh Matthews
644101e1e4
Update to new JS runtime creation APIs.
2019-01-15 14:00:05 -05:00
Jan Andre Ikenmeyer
a1a14459c1
Update MPL license to https (part 3)
2018-11-19 14:47:12 +01:00
Simon Sapin
9f9bf8f6bc
Switch most crates to the 2018 edition
2018-11-06 16:12:04 +01:00
Simon Sapin
acabd50f03
Use 2018-style paths in generated DOM bindings
2018-11-06 15:14:17 +01:00
Keith Yeung
99589d2f2a
Handle default empty sequence values
2018-11-01 14:54:23 -07:00
CYBAI
8b28921136
Make expectionCode of Promise have newline character automatically
...
In the `fill` method, it will check if the exception code is empty
string or has newline character in the end of string or not. However, we
didn't do any change to exceptionCode when type is Promise. Thus, we add
the newline character to make it pass the checking in `fill` method.
See more detail from the log of IRC: https://mozilla.logbot.info/servo/20180501#c14692647
2018-10-18 01:38:27 +08:00
Simon Sapin
a846ed1654
Upgrade to rustc 1.31.0-nightly (8c4ad4e9e 2018-10-04)
...
CC https://github.com/rust-lang/rust/issues/54846
2018-10-05 15:06:29 +02:00
Anthony Ramine
baa94702e4
Properly set desc.obj in CodegenRust.py ( fixes #11868 )
2018-09-04 13:57:10 +02:00
Anthony Ramine
900a19058e
Support unions of objects in overloads
...
Part of #20513 , implementing the parts useful for WebGL.
2018-08-30 16:15:40 +02:00
Alan Jeffrey
74c1e00d81
Upgraded to SM 60
2018-08-20 18:22:29 -04:00
Manish Goregaokar
cceaede96a
Make (dictionary)::empty() safe
...
It currently works by constructing from null (which will throw a runtime
error if there are non-defaultable members).
This changes it so that we no longer need a JSContext to construct this,
so it can be safely constructed. In the case of non-defaultable members,
this method simply does not exist.
2018-07-06 13:10:56 -07:00