aboutsummaryrefslogtreecommitdiffstats
path: root/components/script/dom/attr.rs
diff options
context:
space:
mode:
authorAnthony Ramine <nox@nox.paris>2020-03-31 13:54:52 +0200
committerAnthony Ramine <nox@nox.paris>2020-03-31 13:54:52 +0200
commit4c16729a01999978326e21f9b2e69de764938792 (patch)
tree19da03b0b2dc9d6611d489d9d1b0bf706541eb77 /components/script/dom/attr.rs
parentf9e7c6b9dc65fc178ef5e7e516bd777ef3bb5052 (diff)
downloadservo-4c16729a01999978326e21f9b2e69de764938792.tar.gz
servo-4c16729a01999978326e21f9b2e69de764938792.zip
Make AttrHelpersForLayout methods be safe
The unsafety isn't there, it's in the creation of the LayoutDom<T> values.
Diffstat (limited to 'components/script/dom/attr.rs')
-rw-r--r--components/script/dom/attr.rs20
1 files changed, 10 insertions, 10 deletions
diff --git a/components/script/dom/attr.rs b/components/script/dom/attr.rs
index cea5df2abf5..b8633619bbb 100644
--- a/components/script/dom/attr.rs
+++ b/components/script/dom/attr.rs
@@ -234,26 +234,26 @@ impl Attr {
#[allow(unsafe_code)]
pub trait AttrHelpersForLayout<'dom> {
- unsafe fn value(self) -> &'dom AttrValue;
- unsafe fn value_ref_forever(self) -> &'dom str;
- unsafe fn value_tokens(self) -> Option<&'dom [Atom]>;
- unsafe fn local_name_atom(self) -> LocalName;
+ fn value(self) -> &'dom AttrValue;
+ fn value_ref_forever(self) -> &'dom str;
+ fn value_tokens(self) -> Option<&'dom [Atom]>;
+ fn local_name_atom(self) -> LocalName;
}
#[allow(unsafe_code)]
impl<'dom> AttrHelpersForLayout<'dom> for LayoutDom<'dom, Attr> {
#[inline]
- unsafe fn value(self) -> &'dom AttrValue {
- (*self.unsafe_get()).value.borrow_for_layout()
+ fn value(self) -> &'dom AttrValue {
+ unsafe { self.unsafe_get().value.borrow_for_layout() }
}
#[inline]
- unsafe fn value_ref_forever(self) -> &'dom str {
+ fn value_ref_forever(self) -> &'dom str {
&**self.value()
}
#[inline]
- unsafe fn value_tokens(self) -> Option<&'dom [Atom]> {
+ fn value_tokens(self) -> Option<&'dom [Atom]> {
// This transmute is used to cheat the lifetime restriction.
match *self.value() {
AttrValue::TokenList(_, ref tokens) => Some(tokens),
@@ -262,7 +262,7 @@ impl<'dom> AttrHelpersForLayout<'dom> for LayoutDom<'dom, Attr> {
}
#[inline]
- unsafe fn local_name_atom(self) -> LocalName {
- (*self.unsafe_get()).identifier.local_name.clone()
+ fn local_name_atom(self) -> LocalName {
+ unsafe { self.unsafe_get().identifier.local_name.clone() }
}
}