servo/components
J. Ryan Stinnett 2b5c56e6a8 Move match and cascade temporaries to CurrentElementInfo
Before this change, the `ComputedStyle` struct that is part of permanent style
data per element holds 2 `StrongRuleNode`s (unvisited and visited) and 2
`Arc<ComputedValues>` (unvisited and visited).

Both rule nodes and the visited values don't actually need to be here.  This
patch moves these 3 to new temporary storage in `CascadeInputs` on
`CurrentElementInfo` during the match and cascade process.  Rule nodes are
pushed down inside the `ComputedValues` for later access after the cascade.
(Visited values were already available there.)

The permanent style data per element now has just the `Arc<ComputedValues>` for
itself and eager pseudo-elements (plus the `RestyleHint`).

MozReview-Commit-ID: 3wq52ERMpdi
2017-06-22 15:47:32 -05:00
..
atoms Bump serde to 1.0 2017-06-16 13:31:18 +02:00
bluetooth Untry 2017-06-18 13:21:51 +02:00
bluetooth_traits Remove explicit dependencies on serde_derive 2017-06-16 13:58:21 +02:00
canvas Untry 2017-06-18 13:21:51 +02:00
canvas_traits Upgrade cssparser to 0.15 2017-06-16 15:05:46 +02:00
compositing Improve decisions in compositor over when to draw a frame. 2017-06-20 08:47:14 +10:00
config Untry 2017-06-18 13:21:51 +02:00
constellation Update clipboard to 0.4 2017-06-20 00:29:28 +02:00
debugger Enable the debugger on Android 2017-03-17 16:36:06 +01:00
deny_public_fields Update syn to 0.11 2017-02-27 14:46:50 +01:00
devtools Untry 2017-06-18 13:21:51 +02:00
devtools_traits Remove explicit dependencies on serde_derive 2017-06-16 13:58:21 +02:00
dom_struct Make #[dom_struct] a proc_macro attribute 2017-02-24 01:50:51 +01:00
domobject_derive Update syn to 0.11 2017-02-27 14:46:50 +01:00
geometry Bump serde to 1.0 2017-06-16 13:31:18 +02:00
gfx Use generics for the filter property 2017-06-20 13:48:53 +02:00
gfx_traits Remove explicit dependencies on serde_derive 2017-06-16 13:58:21 +02:00
jstraceable_derive Update syn to 0.11 2017-02-27 14:46:50 +01:00
layout Paint worklet size should agree with Chrome. 2017-06-22 09:51:30 -05:00
layout_thread Untry 2017-06-18 13:21:51 +02:00
layout_traits Bump serde to 1.0 2017-06-16 13:31:18 +02:00
msg Remove explicit dependencies on serde_derive 2017-06-16 13:58:21 +02:00
net Untry 2017-06-18 13:21:51 +02:00
net_traits Untry 2017-06-18 13:21:51 +02:00
profile Remove explicit dependencies on serde_derive 2017-06-16 13:58:21 +02:00
profile_traits Remove explicit dependencies on serde_derive 2017-06-16 13:58:21 +02:00
rand squash: convert less interesting debug! logs to traces 2017-01-18 22:21:41 -07:00
range Remove explicit dependencies on serde_derive 2017-06-16 13:58:21 +02:00
remutex Upgrade to rustc 1.19.0-nightly (ced823e26 2017-05-07) 2017-05-08 12:46:03 +02:00
script Move match and cascade temporaries to CurrentElementInfo 2017-06-22 15:47:32 -05:00
script_layout_interface Move match and cascade temporaries to CurrentElementInfo 2017-06-22 15:47:32 -05:00
script_plugins Update Rust nightly to 1.19.0-nightly (2416e222e 2017-06-09) 2017-06-09 11:12:42 +02:00
script_traits Untry 2017-06-18 13:21:51 +02:00
selectors Less unsafe in selectors::builder. 2017-06-20 11:59:11 -07:00
servo Bump serde to 1.0 2017-06-16 13:31:18 +02:00
servo_arc Fix over-alignment assert crash on Android. 2017-06-17 01:43:24 +02:00
size_of_test Add size_of_test crate 2017-05-16 10:12:51 +02:00
style Move match and cascade temporaries to CurrentElementInfo 2017-06-22 15:47:32 -05:00
style_derive Simplify machinery to serialise optional parts of CSS values 2017-06-21 11:17:22 +02:00
style_traits Simplify machinery to serialise optional parts of CSS values 2017-06-21 11:17:22 +02:00
url Untry 2017-06-18 13:21:51 +02:00
webdriver_server Untry 2017-06-18 13:21:51 +02:00
webvr Bump serde to 1.0 2017-06-16 13:31:18 +02:00
webvr_traits Remove explicit dependencies on serde_derive 2017-06-16 13:58:21 +02:00