aboutsummaryrefslogtreecommitdiffstats
path: root/components/script/dom
diff options
context:
space:
mode:
authorMs2ger <ms2ger@gmail.com>2014-10-23 11:48:29 +0200
committerMs2ger <ms2ger@gmail.com>2014-10-23 18:21:02 +0200
commitfff0491c01fedbcb5ad9325318592b856349153e (patch)
treeaea79322c335c6ccd326478b758f981335b1207c /components/script/dom
parentd643ade7e844f33a26dbcc2a3fcb8fc126aba7d7 (diff)
downloadservo-fff0491c01fedbcb5ad9325318592b856349153e.tar.gz
servo-fff0491c01fedbcb5ad9325318592b856349153e.zip
Move the methods on bare Document onto DocumentHelpers.
Diffstat (limited to 'components/script/dom')
-rw-r--r--components/script/dom/browsercontext.rs2
-rw-r--r--components/script/dom/document.rs33
-rw-r--r--components/script/dom/domimplementation.rs3
-rw-r--r--components/script/dom/htmlimageelement.rs2
-rw-r--r--components/script/dom/range.rs2
-rw-r--r--components/script/dom/servohtmlparser.rs2
-rw-r--r--components/script/dom/treewalker.rs2
7 files changed, 25 insertions, 21 deletions
diff --git a/components/script/dom/browsercontext.rs b/components/script/dom/browsercontext.rs
index 5984ec3b70e..b663327d5af 100644
--- a/components/script/dom/browsercontext.rs
+++ b/components/script/dom/browsercontext.rs
@@ -4,7 +4,7 @@
use dom::bindings::js::{JS, JSRef, Temporary};
use dom::bindings::utils::{Reflectable, WindowProxyHandler};
-use dom::document::Document;
+use dom::document::{Document, DocumentHelpers};
use dom::window::Window;
use js::jsapi::JSObject;
diff --git a/components/script/dom/document.rs b/components/script/dom/document.rs
index 94263523bf1..88a56c27493 100644
--- a/components/script/dom/document.rs
+++ b/components/script/dom/document.rs
@@ -162,6 +162,9 @@ impl CollectionFilter for AppletsFilter {
}
pub trait DocumentHelpers<'a> {
+ fn window(self) -> Temporary<Window>;
+ fn encoding_name(self) -> Ref<'a, DOMString>;
+ fn is_html_document(self) -> bool;
fn url(self) -> &'a Url;
fn quirks_mode(self) -> QuirksMode;
fn set_quirks_mode(self, mode: QuirksMode);
@@ -178,6 +181,21 @@ pub trait DocumentHelpers<'a> {
}
impl<'a> DocumentHelpers<'a> for JSRef<'a, Document> {
+ #[inline]
+ fn window(self) -> Temporary<Window> {
+ Temporary::new(self.window)
+ }
+
+ #[inline]
+ fn encoding_name(self) -> Ref<'a, DOMString> {
+ self.extended_deref().encoding_name.borrow()
+ }
+
+ #[inline]
+ fn is_html_document(self) -> bool {
+ self.is_html_document
+ }
+
fn url(self) -> &'a Url {
&self.extended_deref().url
}
@@ -388,21 +406,6 @@ impl Document {
node.set_owner_doc(*document);
Temporary::from_rooted(*document)
}
-
- #[inline]
- pub fn window(&self) -> Temporary<Window> {
- Temporary::new(self.window)
- }
-
- #[inline]
- pub fn encoding_name(&self) -> Ref<DOMString> {
- self.encoding_name.borrow()
- }
-
- #[inline]
- pub fn is_html_document(&self) -> bool {
- self.is_html_document
- }
}
impl Reflectable for Document {
diff --git a/components/script/dom/domimplementation.rs b/components/script/dom/domimplementation.rs
index 364729721b9..6530a728004 100644
--- a/components/script/dom/domimplementation.rs
+++ b/components/script/dom/domimplementation.rs
@@ -12,7 +12,8 @@ use dom::bindings::global::Window;
use dom::bindings::js::{JS, JSRef, Root, Temporary, OptionalRootable};
use dom::bindings::utils::{Reflector, Reflectable, reflect_dom_object};
use dom::bindings::utils::{QName, Name, InvalidXMLName, xml_name_type};
-use dom::document::{Document, HTMLDocument, NonHTMLDocument, NotFromParser};
+use dom::document::{Document, DocumentHelpers, HTMLDocument, NonHTMLDocument};
+use dom::document::NotFromParser;
use dom::documenttype::DocumentType;
use dom::htmlbodyelement::HTMLBodyElement;
use dom::htmlheadelement::HTMLHeadElement;
diff --git a/components/script/dom/htmlimageelement.rs b/components/script/dom/htmlimageelement.rs
index 94028b638cf..bc0e58db9be 100644
--- a/components/script/dom/htmlimageelement.rs
+++ b/components/script/dom/htmlimageelement.rs
@@ -10,7 +10,7 @@ use dom::bindings::codegen::Bindings::HTMLImageElementBinding::HTMLImageElementM
use dom::bindings::codegen::InheritTypes::{NodeCast, ElementCast, HTMLElementCast, HTMLImageElementDerived};
use dom::bindings::js::{JS, JSRef, Temporary};
use dom::bindings::utils::{Reflectable, Reflector};
-use dom::document::Document;
+use dom::document::{Document, DocumentHelpers};
use dom::element::{Element, HTMLImageElementTypeId};
use dom::element::AttributeHandlers;
use dom::eventtarget::{EventTarget, NodeTargetTypeId};
diff --git a/components/script/dom/range.rs b/components/script/dom/range.rs
index 99b48cea700..8bb34143183 100644
--- a/components/script/dom/range.rs
+++ b/components/script/dom/range.rs
@@ -9,7 +9,7 @@ use dom::bindings::error::Fallible;
use dom::bindings::global::{GlobalRef, Window};
use dom::bindings::js::{JSRef, Temporary};
use dom::bindings::utils::{Reflectable, Reflector, reflect_dom_object};
-use dom::document::Document;
+use dom::document::{Document, DocumentHelpers};
#[dom_struct]
pub struct Range {
diff --git a/components/script/dom/servohtmlparser.rs b/components/script/dom/servohtmlparser.rs
index 8bd33ae1efa..6b81ab512c5 100644
--- a/components/script/dom/servohtmlparser.rs
+++ b/components/script/dom/servohtmlparser.rs
@@ -12,7 +12,7 @@ use dom::bindings::trace::JSTraceable;
use dom::bindings::js::{JS, JSRef, Temporary};
use dom::bindings::utils::{Reflectable, Reflector, reflect_dom_object};
use dom::node::TrustedNodeAddress;
-use dom::document::Document;
+use dom::document::{Document, DocumentHelpers};
use parse::html::JSMessage;
use std::default::Default;
diff --git a/components/script/dom/treewalker.rs b/components/script/dom/treewalker.rs
index 44a62f60baa..78d708a4c4b 100644
--- a/components/script/dom/treewalker.rs
+++ b/components/script/dom/treewalker.rs
@@ -15,7 +15,7 @@ use dom::bindings::error::{ErrorResult, Fallible};
use dom::bindings::global::Window;
use dom::bindings::js::{JS, JSRef, OptionalRootable, Temporary};
use dom::bindings::utils::{Reflectable, Reflector, reflect_dom_object};
-use dom::document::Document;
+use dom::document::{Document, DocumentHelpers};
use dom::node::{Node, NodeHelpers};
use std::cell::Cell;