aboutsummaryrefslogtreecommitdiffstats
path: root/components/script/dom/bindings/weakref.rs
Commit message (Collapse)AuthorAgeFilesLines
* Introduce DOMTracker, cancel eventsource fetch when aborting document loadGregory Terzian2018-07-291-0/+32
|
* Replace NonZero<*{const,mut} _> with std::ptr::NonNullSimon Sapin2018-01-221-14/+16
|
* Replace all uses of the `heapsize` crate with `malloc_size_of`.Nicholas Nethercote2017-10-181-6/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Servo currently uses `heapsize`, but Stylo/Gecko use `malloc_size_of`. `malloc_size_of` is better -- it handles various cases that `heapsize` does not -- so this patch changes Servo to use `malloc_size_of`. This patch makes the following changes to the `malloc_size_of` crate. - Adds `MallocSizeOf` trait implementations for numerous types, some built-in (e.g. `VecDeque`), some external and Servo-only (e.g. `string_cache`). - Makes `enclosing_size_of_op` optional, because vanilla jemalloc doesn't support that operation. - For `HashSet`/`HashMap`, falls back to a computed estimate when `enclosing_size_of_op` isn't available. - Adds an extern "C" `malloc_size_of` function that does the actual heap measurement; this is based on the same functions from the `heapsize` crate. This patch makes the following changes elsewhere. - Converts all the uses of `heapsize` to instead use `malloc_size_of`. - Disables the "heapsize"/"heap_size" feature for the external crates that provide it. - Removes the `HeapSizeOf` implementation from `hashglobe`. - Adds `ignore` annotations to a few `Rc`/`Arc`, because `malloc_size_of` doesn't derive those types, unlike `heapsize`.
* Move remaining uses of NonZero to our nonzero crateSimon Sapin2017-10-161-1/+1
|
* Remove use of unstable box syntax.Simon Sapin2017-10-161-2/+2
| | | | | | | | | | | | | | | | | | | | 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.
* Make DomRoot::new unsafeAnthony Ramine2017-09-261-1/+3
|
* Rename Root<T> to DomRoot<T>Anthony Ramine2017-09-261-6/+6
| | | | | | | 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.
* Rename dom::bindings::js to dom::bindings::rootAnthony Ramine2017-09-261-1/+1
|
* Upgrade to rustc 1.21.0-nightly (599be0d18 2017-07-26)Simon Sapin2017-07-271-2/+2
|
* Upgrade to rustc 1.19.0-nightly (ced823e26 2017-05-07)Simon Sapin2017-05-081-8/+8
|
* squash: convert less interesting debug! logs to tracesDexter Haslem2017-01-181-2/+2
|
* Rename `Reflectable` to `DomObject`.Corey Farwell2016-12-081-2/+2
| | | | Fixes https://github.com/servo/servo/issues/8473.
* Remove generics from unsafe_no_jsmanaged_fieldsAnthony Ramine2016-12-061-1/+5
|
* Mark JSTraceable and its method as unsafeAnthony Ramine2016-12-061-11/+9
|
* Removed unused importsPer Lundberg2016-05-151-1/+0
| | | | This fixes #11185.
* Say farewell to in-tree HeapSizeOfAnthony Ramine2016-02-041-1/+1
|
* Properly propagate changes when range or trees are mutatedAnthony Ramine2015-12-251-0/+99
|
* Rustfmt some of script.Ms2ger2015-11-181-6/+15
|
* Introduce trait WeakReferenceableAnthony Ramine2015-11-121-0/+175
This allows to take weak references of JS-managed DOM objects.