Arya Nair
cb56ac8561
feat: add can_gc argument to to_frozen_array ( #36043 )
...
* feat: add can_gc argument to to_frozen_array
Signed-off-by: Arya Nair <aryaajitnair@gmail.com>
* fix: linting issues
Signed-off-by: Arya Nair <aryaajitnair@gmail.com>
* feat: add can_gc in binding.conf
Signed-off-by: Arya Nair <aryaajitnair@gmail.com>
* fix: linting issues
Signed-off-by: Arya Nair <aryaajitnair@gmail.com>
---------
Signed-off-by: Arya Nair <aryaajitnair@gmail.com>
2025-03-19 18:03:09 +00:00
Nico Burns
f527217bdc
Use new stylo crate renames ( #35898 )
...
Signed-off-by: Nico Burns <nico@nicoburns.com>
2025-03-12 00:02:12 +00:00
Josh Matthews
c94d909a86
script: Limit public exports. ( #34915 )
...
* script: Restrict reexport visibility of DOM types.
Signed-off-by: Josh Matthews <josh@joshmatthews.net>
* script: Mass pub->pub(crate) conversion.
Signed-off-by: Josh Matthews <josh@joshmatthews.net>
* script: Hide existing dead code warnings.
Signed-off-by: Josh Matthews <josh@joshmatthews.net>
* Formatting.
Signed-off-by: Josh Matthews <josh@joshmatthews.net>
* Fix clippy warnings.
Signed-off-by: Josh Matthews <josh@joshmatthews.net>
* Formatting.
Signed-off-by: Josh Matthews <josh@joshmatthews.net>
* Fix unit tests.
Signed-off-by: Josh Matthews <josh@joshmatthews.net>
* Fix clippy.
Signed-off-by: Josh Matthews <josh@joshmatthews.net>
* More formatting.
Signed-off-by: Josh Matthews <josh@joshmatthews.net>
---------
Signed-off-by: Josh Matthews <josh@joshmatthews.net>
2025-01-10 08:19:19 +00:00
Josh Matthews
e956f3124c
Generate a trait abstracting over all known DOM interfaces ( #34357 )
...
* script: Generate trait for all DOM interfaces and parameterize generated Methods traits over it.
Signed-off-by: Josh Matthews <josh@joshmatthews.net>
* script: Update trait implementations with new generic type.
Signed-off-by: Josh Matthews <josh@joshmatthews.net>
* Formatting.
Signed-off-by: Josh Matthews <josh@joshmatthews.net>
---------
Signed-off-by: Josh Matthews <josh@joshmatthews.net>
2024-11-24 07:35:14 +00:00
Gae24
48d193cb83
implement CachedFrozenArray ( #34145 )
...
* extract code into CachedFrozenArray
Signed-off-by: Gae24 <96017547+Gae24@users.noreply.github.com>
* fix borrow crash
Signed-off-by: Gae24 <96017547+Gae24@users.noreply.github.com>
* fix already borrowed error
using an else will cause the borrow to live more than it needs
Signed-off-by: Gae24 <96017547+Gae24@users.noreply.github.com>
* restore return statement
Signed-off-by: Gae24 <96017547+Gae24@users.noreply.github.com>
---------
Signed-off-by: Gae24 <96017547+Gae24@users.noreply.github.com>
2024-11-06 21:26:08 +00:00
Josh Matthews
25a0764a37
Use out parameter for generated methods returning JSVal ( #34087 )
...
* Make generated bindings that return a WebIDL `any` value use out parameters.
Returning raw JSVal values makes it easier to create GC hazards in code
that calls these methods. Accepting a MutableHandle argument instead
ensures that the values are rooted by the caller.
Signed-off-by: Josh Matthews <josh@joshmatthews.net>
* Update mozjs.
Signed-off-by: Josh Matthews <josh@joshmatthews.net>
* Fix clippy warnings.
Signed-off-by: Josh Matthews <josh@joshmatthews.net>
---------
Signed-off-by: Josh Matthews <josh@joshmatthews.net>
2024-11-05 08:29:08 +00:00
chickenleaf
7ad8822d94
cangc fixes in several files + event.rs + rtcpeerconnection.rs ( #34002 )
...
Signed-off-by: L Ashwin B <lashwinib@gmail.com>
2024-10-25 12:44:15 +00:00
tanishka
f826698d6e
CanGc fixes in components/script/dom ( #33891 )
...
Signed-off-by: taniishkaaa <tanishkasingh2004@gmail.com>
2024-10-17 22:36:04 +00:00
Josh Matthews
7d931e673a
script: Include constructors and static methods in generated DOM traits ( #33665 )
...
* Add all constructors, special operations, and static methods to generated DOM interface traits.
Signed-off-by: Josh Matthews <josh@joshmatthews.net>
* Move all constructors and static methods defined in bare impl blocks inside FooMethods trait impls.
Signed-off-by: Josh Matthews <josh@joshmatthews.net>
* Add missing doc links.
Signed-off-by: Josh Matthews <josh@joshmatthews.net>
---------
Signed-off-by: Josh Matthews <josh@joshmatthews.net>
2024-10-08 01:51:58 +00:00
Josh Matthews
60ef6bc461
Start marking functions that can transitively trigger a GC ( #33144 )
...
* Mark JS reflector wrappers as CanGc.
Signed-off-by: Josh Matthews <josh@joshmatthews.net>
* Propagate CanGc from reflect_dom_object_with_proto.
Signed-off-by: Josh Matthews <josh@joshmatthews.net>
* Mark DOM constructors as GC operations.
Signed-off-by: Josh Matthews <josh@joshmatthews.net>
---------
Signed-off-by: Josh Matthews <josh@joshmatthews.net>
2024-08-22 11:42:36 +00:00
eri
cc082efbfd
clippy: Allow too_many_arguments
for existing functions ( #31974 )
...
* Allow `too_many_arguments` for existing functions
* fix: Surround ASCII with code block in rustdoc
2024-04-02 12:50:45 +00:00
Oluwatobi Sofela
2789e98876
clippy: Fix redundant field names warnings ( #31793 )
2024-03-20 23:05:29 +00:00
Martin Robinson
5c1723c983
rustdoc: Fix many rustdoc errors ( #31147 )
...
This fixes many rustdoc errors that occur due to raw URLs in rustdoc
comments as well as unescaped Rust code that should be in backticks.
2024-01-22 13:13:48 +00:00
Samson
aad2dccc9c
Strict import formatting (grouping and granularity) ( #30325 )
...
* strict imports formatting
* Reformat all imports
2023-09-11 19:16:54 +00:00
Josh Matthews
cc07e27864
Rename reflect_dom_object2.
2023-05-31 23:03:32 -04:00
Josh Matthews
dbff26bce0
Support arbitrary protos when wrapping DOM objects with constructors.
2023-05-28 23:23:12 -04:00
Kyle Nosar
95ddcf5d4d
Use ExtendableMessageEvent for messageerror in service workers
2020-07-30 05:56:29 -07:00
YUAN LYU
3ea6d87bcc
Add trait DomObjectWrap to provide WRAP function
2020-03-20 22:16:56 -04:00
Patrick Shaughnessy
e0b768c6cc
alphabetized frozen supported entry types on the global, avoid moving Heap into Option
2020-02-14 11:34:51 -05:00
Kunal Mohan
f7db4b7f80
Modify script
to prevent further violations of snake_case
2020-01-18 14:22:15 +05:30
Gregory Terzian
0339601128
cache frozen array of ports
2020-01-12 13:27:45 +08:00
Gregory Terzian
e768ca1643
add a generic utility to convert a slice into a frozen array
2020-01-11 22:42:23 +08:00
Gregory Terzian
a9fcd7379b
use dom and new_inherited in (extendable)messageevent
2020-01-09 13:44:44 +08:00
Gregory Terzian
2f8932a6a1
continue messageport, transferable, postmessage options
2019-10-19 14:28:18 +08:00
marmeladema
2c5d0a6ebc
Convert CGTraitInterface to use safe JSContext instead of raw JSContext
2019-07-24 08:24:50 +01:00
Josh Matthews
57d2b5a92d
Remove mozjs dep from malloc_size_of.
2019-05-02 09:30:03 -04:00
Jan Andre Ikenmeyer
a1a14459c1
Update MPL license to https (part 3)
2018-11-19 14:47:12 +01:00
Simon Sapin
45f7199eee
cargo fix --edition
2018-11-06 15:26:02 +01:00
chansuke
c37a345dc9
Format script component
2018-09-19 17:40:47 -04:00
Marcin Mielniczuk
356c57e628
Adapt Servo for mozjs 0.6 and the changes introduced in servo/rust-mozjs#393
2018-03-28 21:28:30 +02:00
Simon Sapin
aa15dc269f
Remove use of unstable box syntax.
...
http://www.robohornet.org gives a score of 101.36 on master,
and 102.68 with this PR. The latter is slightly better,
but probably within noise level.
So it looks like this PR does not affect DOM performance.
This is expected since `Box::new` is defined as:
```rust
impl<T> Box<T> {
#[inline(always)]
pub fn new(x: T) -> Box<T> {
box x
}
}
```
With inlining, it should compile to the same as box syntax.
2017-10-16 17:16:20 +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
0e3c54c191
Rename dom::bindings::js to dom::bindings::root
2017-09-26 02:19:05 +02:00
Imanol Fernandez
efb59b7ecd
Fix unsafe Heap constructor usage in DOM objects
2017-05-04 01:07:23 +02:00
Anthony Ramine
31e9d81c0f
Make #[dom_struct] a proc_macro attribute
2017-02-24 01:50:51 +01:00
Ms2ger
f7e2f0e641
Use RootedTraceableBox for dictionaries.
2017-02-16 11:03:26 +01:00
Ms2ger
8ce9ca6243
Use Heap for dictionary and union members.
2017-02-16 11:03:21 +01:00
Alan Jeffrey
fc67878edf
Remove warnings about unnecessary mutability.
2017-01-28 21:48:07 -06:00
Rohan Prinja
973f77c006
Make WebIDL constructors take a more specific global if possible ( fixes #14071 )
2016-11-30 23:23:41 +01:00
Abelardo E. Mendoza
b372e7c98f
script creates methods taking '*mut JSContext' unsafe
...
rebase + marked the necessary new code as unsafe
2016-11-14 11:06:17 +01:00
Simon Sapin
53b638c0e2
Update to string-cache 0.3
2016-11-03 16:23:05 +01:00
Anthony Ramine
19108aa330
Pass a &GlobalScope to WebIDL static methods and constructors
2016-10-06 21:35:49 +02:00
Anthony Ramine
20bacbf42e
Make dispatch_jsval methods take a &GlobalScope
2016-10-06 21:35:40 +02:00
Anthony Ramine
fcb59d3057
Make reflect_dom_object take a &GlobalScope
2016-10-06 20:59:09 +02:00
Rahul Sharma
8b10cca91f
implement ExtendableEvent as base type for ServiceWorker events
2016-09-17 20:58:46 +05:30