Commit graph

123 commits

Author SHA1 Message Date
Ms2ger
903305416a Implement Clone for Copy types. 2015-04-28 23:31:10 +02:00
Anthony Ramine
1a30925cad Remove Temporary::new()
Temporary::from_rooted() now takes an Assignable value.
2015-04-28 09:22:46 +02:00
Anthony Ramine
2770886196 Remove unrooted() methods 2015-04-28 09:22:45 +02:00
Anthony Ramine
af21229c0e Remove the Comparable trait 2015-04-28 09:22:45 +02:00
Anthony Ramine
7197052c0d Uniformise root() methods
They now live in traits Rootable, OptionalOptionalRootable, OptionalRootable
and ResultRootable.
2015-04-28 09:22:45 +02:00
Manish Goregaokar
369a568264 Make RootedVec/RootCollection #[no_move]; improve code (fixes #5737) 2015-04-28 04:35:58 +05:30
Manish Goregaokar
63714ebc5f Add the rust-tenacious move-protection lint, use it for Root<T> (fixes #5724) 2015-04-28 04:20:40 +05:30
Anthony Ramine
afafde5191 Change MutNullableJS<T> to MutNullableHeap<JS<T>> 2015-04-27 10:45:38 +02:00
Anthony Ramine
4e7b9d319c Remove useless unsafe methods on LayoutJS<T> 2015-04-26 21:39:11 +02:00
Anthony Ramine
9369b616ce Remove useless unsafe methods on JS<T> 2015-04-26 21:39:09 +02:00
bors-servo
2089c1f285 Auto merge of #5550 - aneeshusa:fix-issue-5540, r=jdm
Fixes issue #5540.

As far as I can tell this is all that's necessary, but I'm new to Rust, so let me know if I missed something!
2015-04-07 23:04:12 -05:00
Aneesh Agrawal
04468a53df Don't consume self when calling root on a Temporary<T>.
Fixes issue #5540.
2015-04-06 18:57:06 -04:00
Jag Talon
6e013d3c9c RootCollection: Start using RootedVec instead of SmallVec32.
dom/bindings/js.rs: Alphabetize `use`.

dom/bindings/js.rs: moved `unsafe` block to a let binding.

dom/bindings/trace.rs: rename alternate constructor of RootedVec.

dom/bindings/trace.rs: `new()` is now using `new_with_destination_address()` internally.

dom/bindings/js.rs: alphabetize imports.
2015-04-06 16:36:10 -04:00
bors-servo
85808c1cdd auto merge of #5425 : pcwalton/servo/optimize-rooting, r=Ms2ger
This was showing up very high in instruction-level profiling.

r? @jdm
2015-04-02 10:51:40 -06:00
Patrick Walton
d1c13faf4b script: Optimize JS rooting to not move the entire Root struct from
the stack to the return out-pointer.

This was showing up very high in instruction-level profiling.
2015-04-02 09:03:45 -07:00
Ms2ger
bc8ed81dc1 Use a larger small vector. 2015-04-02 09:47:30 +02:00
bors-servo
52cc63a262 auto merge of #5166 : JIoJIaJIu/servo/gc, r=jdm 2015-03-31 09:24:58 -06:00
Josh Matthews
48b151948f Fix double-panic when the script task panics. 2015-03-23 19:19:18 +01:00
Ms2ger
5f15eb5fbf Upgrade rustc to d3c49d2140fc65e8bb7d7cf25bfe74dda6ce5ecf/rustc-1.0.0-dev. 2015-03-18 13:18:31 -04:00
Guro Bokum
8de3c01fe4 RootCollection doesn't check if its SmallVec has spilled #5037 2015-03-13 15:43:11 +07:00
Keith Yeung
a07a0cf39f Added type parameter to PartialEq on JSRef (fixes #5112, #3960) 2015-03-03 11:46:13 +08:00
Ms2ger
601e80fa43 Simplify RootCollection::unroot a bit. 2015-02-23 22:46:41 +01:00
Ms2ger
6d30ec77c8 Replace uint/int by usize/isize in various places. 2015-02-20 14:45:47 +01:00
Ms2ger
7b1b030f8a Remove MutNullableJS::get_inner.
There should be no reason to call this.
2015-02-12 20:59:22 +01:00
Ms2ger
b3f93b25a5 Remove JS::unsafe_get.
The codegen users already migrated to Unrooted, and the layout users are
better off using LayoutJS.
2015-02-12 20:59:22 +01:00
Ms2ger
8ab7d37ef2 Add Unrooted::from_js.
There should not be a JS here; that is #2661. Until that's fixed, though,
it's better to encapsulate it.
2015-02-12 20:59:22 +01:00
Ms2ger
37584ab056 Improve documentation for MutHeap and RootCollection. 2015-02-10 12:52:52 +01:00
Ms2ger
84425bf4d7 Improve the documentation in js.rs. 2015-02-10 11:09:41 +01:00
Ms2ger
1d3cd4c34d Rewrap the documentation in js.rs to 80 columns for readability. 2015-02-10 09:43:19 +01:00
Ms2ger
147dadce89 Implement an Unrooted smart pointer to replace JS when it is not traced. 2015-02-06 12:33:32 +01:00
Ms2ger
4036206734 Remove the Root.jsref member.
It is simpler to just construct it when the methods are called.
2015-02-05 18:45:21 +01:00
Ms2ger
d8c2c88bbd Replace Root::deref by a custom get_unsound_ref_forever method.
This will hopefully make it clearer that this is not the correct function
to call.
2015-02-05 18:45:20 +01:00
Ms2ger
eb5759774c Remove JS::from_trusted_node_address. 2015-02-03 16:04:47 +01:00
Tetsuharu OHZEKI
2cca095481 Add LayoutJS<T: Reflectable>.get_jsobject(). 2015-02-01 01:54:38 +09:00
Tetsuharu OHZEKI
b7443bef83 Remove JS<From>.transmute<To>(). 2015-02-01 01:54:38 +09:00
Tetsuharu OHZEKI
9f57fa17d0 Add LayoutJS<Node>::from_trusted_node_address() 2015-02-01 01:54:38 +09:00
Tetsuharu OHZEKI
8889041c19 Use BarCast::to_layout_js() instead of LayoutJS.to_script(). 2015-02-01 01:54:37 +09:00
Tetsuharu OHZEKI
6b1e2bd11c Use LayoutJS<T> in layout crate. 2015-02-01 01:54:37 +09:00
Tetsuharu OHZEKI
a5d7240534 Introduce LayoutJS<T> 2015-02-01 01:50:16 +09:00
Ms2ger
5225442dc1 Use NonZero to reduce the size of DOM smart pointers (fixes #4502). 2015-01-30 22:18:22 +01:00
Ms2ger
505159a464 Import the util crate as util rather than servo_util.
This used to conflict with the util crate from the standard library, which
has long since been removed.

The import in layout has not been changed because of a conflict with the
util mod there.
2015-01-29 12:16:41 +01:00
Ms2ger
f8ac1777ff Don't shadow lifetimes in script. 2015-01-28 13:48:28 +01:00
bors-servo
d373f8dc26 auto merge of #4739 : Manishearth/servo/warning-patrol, r=Ms2ger 2015-01-28 02:27:50 -07:00
bors-servo
1a2a08aa50 auto merge of #4717 : Ms2ger/servo/doc-proxy, r=saneyuki 2015-01-28 01:48:52 -07:00
Manish Goregaokar
e44ee70faf Remove some old impls 2015-01-28 13:37:18 +05:30
Josh Matthews
95fc29fa0d Update rustc to 00b112c45a604fa6f4b59af2a40c9deeadfdb7c6/rustc-1.0.0-dev. 2015-01-28 10:16:49 +10:00
Ms2ger
238f3e2d91 Require documentation for all code in dom::bindings (excluding dom::bindings::codegen). 2015-01-25 22:01:04 +01:00
Ms2ger
801949556d Return *const T from JS::unsafe_get() (fixes #4712). 2015-01-24 16:43:19 +01:00
Ms2ger
dfbf83a8ac Don't call transmute_copy in JS::unsafe_get.
It hasn't had borrow flags for quite a while.
2015-01-24 15:57:09 +01:00
Ms2ger
13c7cf928a Stop calling deref() and deref_mut() explicitly. 2015-01-22 16:04:21 +01:00