aboutsummaryrefslogtreecommitdiffstats
path: root/components/script_layout_interface/wrapper_traits.rs
diff options
context:
space:
mode:
authorbors-servo <lbergstrom+bors@mozilla.com>2016-07-05 18:55:36 -0700
committerGitHub <noreply@github.com>2016-07-05 18:55:36 -0700
commitabdf2f28a0bd25a76a31b4fd2410c7a87448ed54 (patch)
tree762287ff3121993d51e3741e84a2a99ac93435ce /components/script_layout_interface/wrapper_traits.rs
parent3d557b6f25eb9dbd084cb53bbc9a9cf93bad825b (diff)
parent187a47d89d2a4187abca85690429f85293e618cd (diff)
downloadservo-abdf2f28a0bd25a76a31b4fd2410c7a87448ed54.tar.gz
servo-abdf2f28a0bd25a76a31b4fd2410c7a87448ed54.zip
Auto merge of #11886 - bholley:attr_refactor, r=SimonSapin
Refactor attribute handling to avoid marshalling attributes from Gecko into Servo This marshaling is slow, because Gecko stores attributes as UTF-16 and does not atomize them in all cases, and it turns out that the need for them in Servo is pretty minimal. With some refactoring across servo and rust-selectors we can fix this. <!-- Reviewable:start --> --- This change is [<img src="https://reviewable.io/review_button.svg" height="35" align="absmiddle" alt="Reviewable"/>](https://reviewable.io/reviews/servo/servo/11886) <!-- Reviewable:end -->
Diffstat (limited to 'components/script_layout_interface/wrapper_traits.rs')
-rw-r--r--components/script_layout_interface/wrapper_traits.rs4
1 files changed, 2 insertions, 2 deletions
diff --git a/components/script_layout_interface/wrapper_traits.rs b/components/script_layout_interface/wrapper_traits.rs
index a816321ec28..bdbf31c37c8 100644
--- a/components/script_layout_interface/wrapper_traits.rs
+++ b/components/script_layout_interface/wrapper_traits.rs
@@ -86,7 +86,7 @@ pub trait LayoutNode: TNode {
pub trait ThreadSafeLayoutNode: Clone + Copy + Sized + PartialEq {
type ConcreteThreadSafeLayoutElement:
ThreadSafeLayoutElement<ConcreteThreadSafeLayoutNode = Self>
- + ::selectors::Element<Impl=ServoSelectorImpl>;
+ + ::selectors::Element<Impl=ServoSelectorImpl, AttrString=String>;
type ChildrenIterator: Iterator<Item = Self> + Sized;
/// Creates a new `ThreadSafeLayoutNode` for the same `LayoutNode`
@@ -351,7 +351,7 @@ pub trait DangerousThreadSafeLayoutNode: ThreadSafeLayoutNode {
}
pub trait ThreadSafeLayoutElement: Clone + Copy + Sized +
- ::selectors::Element<Impl=ServoSelectorImpl> +
+ ::selectors::Element<Impl=ServoSelectorImpl, AttrString=String> +
PresentationalHintsSynthetizer {
type ConcreteThreadSafeLayoutNode: ThreadSafeLayoutNode<ConcreteThreadSafeLayoutElement = Self>;