diff options
author | Anthony Ramine <n.oxyde@gmail.com> | 2016-05-22 13:25:07 +0200 |
---|---|---|
committer | Anthony Ramine <n.oxyde@gmail.com> | 2016-05-24 10:54:57 +0200 |
commit | cdc7bca944b6ffebc59169d42331fffbee7f71ee (patch) | |
tree | b727287bb85a82b9ff16c1eac1737d09749be2f4 /components/script/dom | |
parent | 7b467ee52d59d1d2f078948acc9e4d188eac7338 (diff) | |
download | servo-cdc7bca944b6ffebc59169d42331fffbee7f71ee.tar.gz servo-cdc7bca944b6ffebc59169d42331fffbee7f71ee.zip |
Move DOMString back to script
This entirely removes the 'non-geckolib' feature of the util crate.
Diffstat (limited to 'components/script/dom')
166 files changed, 457 insertions, 261 deletions
diff --git a/components/script/dom/activation.rs b/components/script/dom/activation.rs index 9fd94ae6690..ff8d59aac96 100644 --- a/components/script/dom/activation.rs +++ b/components/script/dom/activation.rs @@ -4,12 +4,12 @@ use dom::bindings::codegen::Bindings::EventBinding::EventMethods; use dom::bindings::inheritance::Castable; +use dom::bindings::str::DOMString; use dom::element::Element; use dom::event::{Event, EventBubbles, EventCancelable}; use dom::eventtarget::EventTarget; use dom::mouseevent::MouseEvent; use dom::node::window_from_node; -use util::str::DOMString; /// Trait for elements with defined activation behavior pub trait Activatable { diff --git a/components/script/dom/attr.rs b/components/script/dom/attr.rs index 50a5a754f25..95ff73e2cb7 100644 --- a/components/script/dom/attr.rs +++ b/components/script/dom/attr.rs @@ -10,6 +10,7 @@ use dom::bindings::inheritance::Castable; use dom::bindings::js::{JS, MutNullableHeap}; use dom::bindings::js::{LayoutJS, Root, RootedReference}; use dom::bindings::reflector::{Reflector, reflect_dom_object}; +use dom::bindings::str::DOMString; use dom::element::{AttributeMutation, Element}; use dom::virtualmethods::vtable_for; use dom::window::Window; @@ -18,7 +19,6 @@ use std::cell::Ref; use std::mem; use string_cache::{Atom, Namespace}; pub use style::attr::{AttrIdentifier, AttrValue}; -use util::str::DOMString; // https://dom.spec.whatwg.org/#interface-attr #[dom_struct] @@ -101,14 +101,13 @@ impl AttrMethods for Attr { // https://dom.spec.whatwg.org/#dom-attr-value fn SetValue(&self, value: DOMString) { - match self.owner() { - None => *self.value.borrow_mut() = AttrValue::String(value), - Some(owner) => { - let value = owner.parse_attribute(&self.identifier.namespace, - self.local_name(), - value); - self.set_value(value, owner.r()); - } + if let Some(owner) = self.owner() { + let value = owner.parse_attribute(&self.identifier.namespace, + self.local_name(), + value); + self.set_value(value, owner.r()); + } else { + *self.value.borrow_mut() = AttrValue::String(value.into()); } } diff --git a/components/script/dom/beforeunloadevent.rs b/components/script/dom/beforeunloadevent.rs index 9257cbcafcb..b66df9429dc 100644 --- a/components/script/dom/beforeunloadevent.rs +++ b/components/script/dom/beforeunloadevent.rs @@ -10,9 +10,9 @@ use dom::bindings::global::GlobalRef; use dom::bindings::inheritance::Castable; use dom::bindings::js::Root; use dom::bindings::reflector::reflect_dom_object; +use dom::bindings::str::DOMString; use dom::event::{Event, EventBubbles, EventCancelable}; use string_cache::Atom; -use util::str::DOMString; // https://html.spec.whatwg.org/multipage/#beforeunloadevent #[dom_struct] diff --git a/components/script/dom/bindings/codegen/CodegenRust.py b/components/script/dom/bindings/codegen/CodegenRust.py index b10170be835..b44cf2c1c2b 100644 --- a/components/script/dom/bindings/codegen/CodegenRust.py +++ b/components/script/dom/bindings/codegen/CodegenRust.py @@ -2087,16 +2087,15 @@ def UnionTypes(descriptors, dictionaries, callbacks, config): 'dom::bindings::conversions::FromJSValConvertible', 'dom::bindings::conversions::ToJSValConvertible', 'dom::bindings::conversions::ConversionBehavior', - 'dom::bindings::conversions::root_from_handlevalue', 'dom::bindings::conversions::StringificationBehavior', + 'dom::bindings::conversions::root_from_handlevalue', 'dom::bindings::error::throw_not_in_union', 'dom::bindings::js::Root', - 'dom::bindings::str::USVString', + 'dom::bindings::str::{DOMString, USVString}', 'dom::types::*', 'js::jsapi::JSContext', 'js::jsapi::{HandleValue, MutableHandleValue}', 'js::jsval::JSVal', - 'util::str::DOMString', ] # Now find all the things we'll need as arguments and return values because @@ -5598,14 +5597,12 @@ class CGBindingRoot(CGThing): 'dom::bindings::proxyhandler::{ensure_expando_object, fill_property_descriptor}', 'dom::bindings::proxyhandler::{get_expando_object, get_property_descriptor}', 'dom::bindings::num::Finite', - 'dom::bindings::str::ByteString', - 'dom::bindings::str::USVString', + 'dom::bindings::str::{ByteString, DOMString, USVString}', 'dom::bindings::trace::RootedVec', 'dom::bindings::weakref::{DOM_WEAK_SLOT, WeakBox, WeakReferenceable}', 'mem::heap_size_of_raw_self_and_children', 'libc', 'util::prefs', - 'util::str::DOMString', 'std::borrow::ToOwned', 'std::cmp', 'std::mem', diff --git a/components/script/dom/bindings/conversions.rs b/components/script/dom/bindings/conversions.rs index e6e1dac58df..80911b65e74 100644 --- a/components/script/dom/bindings/conversions.rs +++ b/components/script/dom/bindings/conversions.rs @@ -36,27 +36,26 @@ use dom::bindings::inheritance::Castable; use dom::bindings::js::Root; use dom::bindings::num::Finite; use dom::bindings::reflector::{Reflectable, Reflector}; -use dom::bindings::str::{ByteString, USVString}; +use dom::bindings::str::{ByteString, DOMString, USVString}; use dom::bindings::utils::DOMClass; use js; pub use js::conversions::{FromJSValConvertible, ToJSValConvertible, ConversionBehavior}; +use js::conversions::latin1_to_string; use js::error::throw_type_error; use js::glue::{GetProxyPrivate, IsWrapper}; use js::glue::{RUST_JSID_IS_STRING, RUST_JSID_TO_STRING, UnwrapObject}; -use js::jsapi::{HandleId, HandleObject, HandleValue, JS_GetClass}; -use js::jsapi::{JSClass, JSContext, JSObject, MutableHandleValue}; -use js::jsapi::{JS_GetLatin1StringCharsAndLength, JS_GetReservedSlot}; -use js::jsapi::{JS_GetObjectAsArrayBufferView, JS_GetArrayBufferViewType}; -use js::jsapi::{JS_GetTwoByteStringCharsAndLength, JS_IsArrayObject, JS_NewStringCopyN}; -use js::jsapi::{JS_StringHasLatin1Chars, JS_WrapValue}; -use js::jsapi::{Type}; +use js::jsapi::{HandleId, HandleObject, HandleValue, JSClass, JSContext}; +use js::jsapi::{JSObject, JSString, JS_GetArrayBufferViewType, JS_GetClass}; +use js::jsapi::{JS_GetLatin1StringCharsAndLength, JS_GetObjectAsArrayBufferView}; +use js::jsapi::{JS_GetReservedSlot, JS_GetTwoByteStringCharsAndLength}; +use js::jsapi::{JS_IsArrayObject, JS_NewStringCopyN, JS_StringHasLatin1Chars}; +use js::jsapi::{JS_WrapValue, MutableHandleValue, Type}; use js::jsval::{ObjectValue, StringValue}; use js::rust::ToString; use libc; use num_traits::Float; -use std::{ptr, mem, slice}; -pub use util::non_geckolib::{StringificationBehavior, jsstring_to_str}; -use util::str::DOMString; +use std::{char, mem, ptr, slice}; +use util::opts; /// A trait to check whether a given `JSObject` implements an IDL interface. pub trait IDLInterface { @@ -125,6 +124,82 @@ impl ToJSValConvertible for USVString { } } +/// Behavior for stringification of `JSVal`s. +#[derive(PartialEq, Clone)] +pub enum StringificationBehavior { + /// Convert `null` to the string `"null"`. + Default, + /// Convert `null` to the empty string. + Empty, +} + +// https://heycam.github.io/webidl/#es-DOMString +impl ToJSValConvertible for DOMString { + unsafe fn to_jsval(&self, cx: *mut JSContext, rval: MutableHandleValue) { + (**self).to_jsval(cx, rval); + } +} + +// https://heycam.github.io/webidl/#es-DOMString +impl FromJSValConvertible for DOMString { + type Config = StringificationBehavior; + unsafe fn from_jsval(cx: *mut JSContext, + value: HandleValue, + null_behavior: StringificationBehavior) + -> Result<DOMString, ()> { + if null_behavior == StringificationBehavior::Empty && + value.get().is_null() { + Ok(DOMString::new()) + } else { + let jsstr = ToString(cx, value); + if jsstr.is_null() { + debug!("ToString failed"); + Err(()) + } else { + Ok(jsstring_to_str(cx, jsstr)) + } + } + } +} + +/// Convert the given `JSString` to a `DOMString`. Fails if the string does not +/// contain valid UTF-16. +pub unsafe fn jsstring_to_str(cx: *mut JSContext, s: *mut JSString) -> DOMString { + let latin1 = JS_StringHasLatin1Chars(s); + DOMString::from_string(if latin1 { + latin1_to_string(cx, s) + } else { + let mut length = 0; + let chars = JS_GetTwoByteStringCharsAndLength(cx, ptr::null(), s, &mut length); + assert!(!chars.is_null()); + let potentially_ill_formed_utf16 = slice::from_raw_parts(chars, length as usize); + let mut s = String::with_capacity(length as usize); + for item in char::decode_utf16(potentially_ill_formed_utf16.iter().cloned()) { + match item { + Ok(c) => s.push(c), + Err(_) => { + // FIXME: Add more info like document URL in the message? + macro_rules! message { + () => { + "Found an unpaired surrogate in a DOM string. \ + If you see this in real web content, \ + please comment on https://github.com/servo/servo/issues/6564" + } + } + if opts::get().replace_surrogates { + error!(message!()); + s.push('\u{FFFD}'); + } else { + panic!(concat!(message!(), " Use `-Z replace-surrogates` \ + on the command line to make this non-fatal.")); + } + } + } + } + s + }) +} + // http://heycam.github.io/webidl/#es-USVString impl FromJSValConvertible for USVString { type Config = (); diff --git a/components/script/dom/bindings/str.rs b/components/script/dom/bindings/str.rs index f1de6297ceb..4c5f4b4fd6a 100644 --- a/components/script/dom/bindings/str.rs +++ b/components/script/dom/bindings/str.rs @@ -6,11 +6,14 @@ use std::ascii::AsciiExt; use std::borrow::ToOwned; +use std::fmt; use std::hash::{Hash, Hasher}; use std::mem; use std::ops; +use std::ops::{Deref, DerefMut}; use std::str; -use std::str::FromStr; +use std::str::{Bytes, FromStr}; +use string_cache::Atom; /// Encapsulates the IDL `ByteString` type. #[derive(JSTraceable, Clone, Eq, PartialEq, HeapSizeOf)] @@ -114,3 +117,119 @@ pub fn is_token(s: &[u8]) -> bool { } }) } + +/// A DOMString. +#[derive(Clone, Debug, Eq, Hash, HeapSizeOf, Ord, PartialEq, PartialOrd)] +pub struct DOMString(String); + +impl !Send for DOMString {} + +impl DOMString { + /// Creates a new `DOMString`. + pub fn new() -> DOMString { + DOMString(String::new()) + } + + /// Creates a new `DOMString` from a `String`. + pub fn from_string(s: String) -> DOMString { + DOMString(s) + } + + /// Appends a given string slice onto the end of this String. + pub fn push_str(&mut self, string: &str) { + self.0.push_str(string) + } + + /// Truncates this `DOMString`, removing all contents. + pub fn clear(&mut self) { + self.0.clear() + } + + /// An iterator over the bytes of this `DOMString`. + pub fn bytes(&self) -> Bytes { + self.0.bytes() + } +} + +impl Default for DOMString { + fn default() -> Self { + DOMString(String::new()) + } +} + +impl Deref for DOMString { + type Target = str; + + #[inline] + fn deref(&self) -> &str { + &self.0 + } +} + +impl DerefMut for DOMString { + #[inline] + fn deref_mut(&mut self) -> &mut str { + &mut self.0 + } +} + +impl AsRef<str> for DOMString { + fn as_ref(&self) -> &str { + &self.0 + } +} + +impl fmt::Display for DOMString { + #[inline] + fn fmt(&self, f: &mut fmt::Formatter) -> fmt::Result { + fmt::Display::fmt(&**self, f) + } +} + +impl PartialEq<str> for DOMString { + fn eq(&self, other: &str) -> bool { + &**self == other + } +} + +impl<'a> PartialEq<&'a str> for DOMString { + fn eq(&self, other: &&'a str) -> bool { + &**self == *other + } +} + +impl From<String> for DOMString { + fn from(contents: String) -> DOMString { + DOMString(contents) + } +} + +impl<'a> From<&'a str> for DOMString { + fn from(contents: &str) -> DOMString { + DOMString::from(String::from(contents)) + } +} + +impl From<DOMString> for Atom { + fn from(contents: DOMString) -> Atom { + Atom::from(contents.0) + } +} + +impl From<DOMString> for String { + fn from(contents: DOMString) -> String { + contents.0 + } +} + +impl Into<Vec<u8>> for DOMString { + fn into(self) -> Vec<u8> { + self.0.into() + } +} + +impl Extend<char> for DOMString { + fn extend<I>(&mut self, iterable: I) where I: IntoIterator<Item=char> { + self.0.extend(iterable) + } +} diff --git a/components/script/dom/bindings/trace.rs b/components/script/dom/bindings/trace.rs index 4c6941a5f5e..e97e5cb923d 100644 --- a/components/script/dom/bindings/trace.rs +++ b/components/script/dom/bindings/trace.rs @@ -37,6 +37,7 @@ use devtools_traits::WorkerId; use dom::bindings::js::{JS, Root}; use dom::bindings::refcounted::Trusted; use dom::bindings::reflector::{Reflectable, Reflector}; +use dom::bindings::str::DOMString; use dom::bindings::utils::WindowProxyHandler; use dom::worker::SharedRt; use encoding::types::EncodingRef; @@ -89,7 +90,7 @@ use style::selector_impl::PseudoElement; use style::values::specified::Length; use url::Origin as UrlOrigin; use url::Url; -use util::str::{DOMString, LengthOrPercentageOrAuto}; +use util::str::LengthOrPercentageOrAuto; use uuid::Uuid; use webrender_traits::WebGLError; diff --git a/components/script/dom/bindings/utils.rs b/components/script/dom/bindings/utils.rs index cf1cf37a8b9..607f74456d2 100644 --- a/components/script/dom/bindings/utils.rs +++ b/components/script/dom/bindings/utils.rs @@ -7,9 +7,11 @@ use dom::bindings::codegen::InterfaceObjectMap; use dom::bindings::codegen::PrototypeList; use dom::bindings::codegen::PrototypeList::{MAX_PROTO_CHAIN_LENGTH, PROTO_OR_IFACE_LENGTH}; -use dom::bindings::conversions::{DOM_OBJECT_SLOT, is_dom_class, private_from_proto_check}; +use dom::bindings::conversions::{DOM_OBJECT_SLOT, is_dom_class}; +use dom::bindings::conversions::{jsstring_to_str, private_from_proto_check}; use dom::bindings::error::throw_invalid_this; use dom::bindings::inheritance::TopTypeId; +use dom::bindings::str::DOMString; use dom::bindings::trace::trace_object; use dom::browsingcontext; use heapsize::HeapSizeOf; @@ -37,9 +39,7 @@ use std::ffi::CString; use std::os::raw::c_void; use std::ptr; use std::slice; -use util::non_geckolib::jsstring_to_str; use util::prefs; -use util::str::DOMString; /// Proxy handler for a WindowProxy. pub struct WindowProxyHandler(pub *const libc::c_void); diff --git a/components/script/dom/bindings/xmlname.rs b/components/script/dom/bindings/xmlname.rs index b7dd7ca7d19..11b83be7b99 100644 --- a/components/script/dom/bindings/xmlname.rs +++ b/components/script/dom/bindings/xmlname.rs @@ -5,8 +5,8 @@ //! Functions for validating and extracting qualified XML names. use dom::bindings::error::{Error, ErrorResult, Fallible}; +use dom::bindings::str::DOMString; use string_cache::{Atom, Namespace}; -use util::str::DOMString; /// Validate a qualified name. See https://dom.spec.whatwg.org/#validate for details. pub fn validate_qualified_name(qualified_name: &str) -> ErrorResult { diff --git a/components/script/dom/blob.rs b/components/script/dom/blob.rs index bac02339917..47d758d3028 100644 --- a/components/script/dom/blob.rs +++ b/components/script/dom/blob.rs @@ -9,6 +9,7 @@ use dom::bindings::error::Fallible; use dom::bindings::global::GlobalRef; use dom::bindings::js::Root; use dom::bindings::reflector::{Reflectable, Reflector, reflect_dom_object}; +use dom::bindings::str::DOMString; use encoding::all::UTF_8; use encoding::types::{EncoderTrap, Encoding}; use num_traits::ToPrimitive; @@ -17,7 +18,6 @@ use std::borrow::ToOwned; use std::cell::Cell; use std::cmp::{max, min}; use std::sync::Arc; -use util::str::DOMString; #[derive(Clone, JSTraceable)] pub struct DataSlice { diff --git a/components/script/dom/bluetooth.rs b/components/script/dom/bluetooth.rs index 94e4ac5b146..3afc31d71a7 100644 --- a/components/script/dom/bluetooth.rs +++ b/components/script/dom/bluetooth.rs @@ -11,6 +11,7 @@ use dom::bindings::error::Fallible; use dom::bindings::global::GlobalRef; use dom::bindings::js::Root; use dom::bindings::reflector::{Reflectable, Reflector, reflect_dom_object}; +use dom::bindings::str::DOMString; use dom::bluetoothadvertisingdata::BluetoothAdvertisingData; use dom::bluetoothdevice::BluetoothDevice; use dom::bluetoothuuid::BluetoothUUID; @@ -18,7 +19,6 @@ use ipc_channel::ipc::{self, IpcSender}; use net_traits::bluetooth_scanfilter::{BluetoothScanfilter, BluetoothScanfilterSequence}; use net_traits::bluetooth_scanfilter::{RequestDeviceoptions, ServiceUUIDSequence}; use net_traits::bluetooth_thread::BluetoothMethodMsg; -use util::str::DOMString; const FILTER_EMPTY_ERROR: &'static str = "'filters' member must be non - empty to find any devices."; const FILTER_ERROR: &'static str = "A filter must restrict the devices in some way."; diff --git a/components/script/dom/bluetoothdevice.rs b/components/script/dom/bluetoothdevice.rs index 9d26905261e..ad575b47e18 100644 --- a/components/script/dom/bluetoothdevice.rs +++ b/components/script/dom/bluetoothdevice.rs @@ -7,9 +7,9 @@ use dom::bindings::codegen::Bindings::BluetoothDeviceBinding::BluetoothDeviceMet use dom::bindings::global::GlobalRef; use dom::bindings::js::{JS, Root, MutHeap, MutNullableHeap}; use dom::bindings::reflector::{Reflectable, Reflector, reflect_dom_object}; +use dom::bindings::str::DOMString; use dom::bluetoothadvertisingdata::BluetoothAdvertisingData; use dom::bluetoothremotegattserver::BluetoothRemoteGATTServer; -use util::str::DOMString; // https://webbluetoothcg.github.io/web-bluetooth/#bluetoothdevice #[dom_struct] diff --git a/components/script/dom/bluetoothremotegattcharacteristic.rs b/components/script/dom/bluetoothremotegattcharacteristic.rs index 9ae6c6596ba..5ad8d89c25b 100644 --- a/components/script/dom/bluetoothremotegattcharacteristic.rs +++ b/components/script/dom/bluetoothremotegattcharacteristic.rs @@ -14,14 +14,13 @@ use dom::bindings::error::{Fallible, ErrorResult}; use dom::bindings::global::GlobalRef; use dom::bindings::js::{JS, MutHeap, Root}; use dom::bindings::reflector::{Reflectable, Reflector, reflect_dom_object}; -use dom::bindings::str::ByteString; +use dom::bindings::str::{ByteString, DOMString}; use dom::bluetoothcharacteristicproperties::BluetoothCharacteristicProperties; use dom::bluetoothremotegattdescriptor::BluetoothRemoteGATTDescriptor; use dom::bluetoothremotegattservice::BluetoothRemoteGATTService; use dom::bluetoothuuid::{BluetoothDescriptorUUID, BluetoothUUID}; use ipc_channel::ipc::{self, IpcSender}; use net_traits::bluetooth_thread::BluetoothMethodMsg; -use util::str::DOMString; // https://webbluetoothcg.github.io/web-bluetooth/#bluetoothremotegattcharacteristic #[dom_struct] diff --git a/components/script/dom/bluetoothremotegattdescriptor.rs b/components/script/dom/bluetoothremotegattdescriptor.rs index 8e5a106cd05..f7ed72ee0a8 100644 --- a/components/script/dom/bluetoothremotegattdescriptor.rs +++ b/components/script/dom/bluetoothremotegattdescriptor.rs @@ -15,11 +15,10 @@ use dom::bindings::error::{Fallible, ErrorResult}; use dom::bindings::global::GlobalRef; use dom::bindings::js::{JS, MutHeap, Root}; use dom::bindings::reflector::{Reflectable, Reflector, reflect_dom_object}; -use dom::bindings::str::ByteString; +use dom::bindings::str::{ByteString, DOMString}; use dom::bluetoothremotegattcharacteristic::BluetoothRemoteGATTCharacteristic; use ipc_channel::ipc::{self, IpcSender}; use net_traits::bluetooth_thread::BluetoothMethodMsg; -use util::str::DOMString; // http://webbluetoothcg.github.io/web-bluetooth/#bluetoothremotegattdescriptor #[dom_struct] diff --git a/components/script/dom/bluetoothremotegattserver.rs b/components/script/dom/bluetoothremotegattserver.rs index e4f4b20a9dc..6935f0207eb 100644 --- a/components/script/dom/bluetoothremotegattserver.rs +++ b/components/script/dom/bluetoothremotegattserver.rs @@ -10,13 +10,13 @@ use dom::bindings::error::{Fallible, ErrorResult}; use dom::bindings::global::GlobalRef; use dom::bindings::js::{JS, MutHeap, Root}; use dom::bindings::reflector::{Reflectable, Reflector, reflect_dom_object}; +use dom::bindings::str::DOMString; use dom::bluetoothdevice::BluetoothDevice; use dom::bluetoothremotegattservice::BluetoothRemoteGATTService; use dom::bluetoothuuid::{BluetoothServiceUUID, BluetoothUUID}; use ipc_channel::ipc::{self, IpcSender}; use net_traits::bluetooth_thread::BluetoothMethodMsg; use std::cell::Cell; -use util::str::DOMString; // https://webbluetoothcg.github.io/web-bluetooth/#bluetoothremotegattserver #[dom_struct] diff --git a/components/script/dom/bluetoothremotegattservice.rs b/components/script/dom/bluetoothremotegattservice.rs index 92a5edc2f28..bf9312112c1 100644 --- a/components/script/dom/bluetoothremotegattservice.rs +++ b/components/script/dom/bluetoothremotegattservice.rs @@ -9,13 +9,13 @@ use dom::bindings::error::Fallible; use dom::bindings::global::GlobalRef; use dom::bindings::js::{JS, MutHeap, Root}; use dom::bindings::reflector::{Reflectable, Reflector, reflect_dom_object}; +use dom::bindings::str::DOMString; use dom::bluetoothcharacteristicproperties::BluetoothCharacteristicProperties; use dom::bluetoothdevice::BluetoothDevice; use dom::bluetoothremotegattcharacteristic::BluetoothRemoteGATTCharacteristic; use dom::bluetoothuuid::{BluetoothCharacteristicUUID, BluetoothUUID}; use ipc_channel::ipc::{self, IpcSender}; use net_traits::bluetooth_thread::BluetoothMethodMsg; -use util::str::DOMString; // https://webbluetoothcg.github.io/web-bluetooth/#bluetoothremotegattservice #[dom_struct] diff --git a/components/script/dom/bluetoothuuid.rs b/components/script/dom/bluetoothuuid.rs index d4ed2b5e6a7..ab51d37c6e7 100644 --- a/components/script/dom/bluetoothuuid.rs +++ b/components/script/dom/bluetoothuuid.rs @@ -7,8 +7,8 @@ use dom::bindings::error::Error::Syntax; use dom::bindings::error::Fallible; use dom::bindings::global::GlobalRef; use dom::bindings::reflector::Reflector; +use dom::bindings::str::DOMString; use regex::Regex; -use util::str::DOMString; pub type UUID = DOMString; pub type BluetoothServiceUUID = StringOrUnsignedLong; diff --git a/components/script/dom/browsingcontext.rs b/components/script/dom/browsingcontext.rs index 0371950300c..c46afe71971 100644 --- a/components/script/dom/browsingcontext.rs +++ b/components/script/dom/browsingcontext.rs @@ -8,6 +8,7 @@ use dom::bindings::conversions::{ToJSValConvertible, root_from_handleobject}; use dom::bindings::js::{JS, Root, RootedReference}; use dom::bindings::proxyhandler::{fill_property_descriptor, get_property_descriptor}; use dom::bindings::reflector::{Reflectable, Reflector}; +use dom::bindings::str::DOMString; use dom::bindings::trace::JSTraceable; use dom::bindings::utils::WindowProxyHandler; use dom::bindings::utils::get_array_index_from_id; @@ -26,7 +27,6 @@ use js::jsval::{UndefinedValue, PrivateValue}; use msg::constellation_msg::{PipelineId, SubpageId}; use std::cell::Cell; use url::Url; -use util::str::DOMString; #[dom_struct] pub struct BrowsingContext { diff --git a/components/script/dom/canvasgradient.rs b/components/script/dom/canvasgradient.rs index b2d3f846c89..f47589b60af 100644 --- a/components/script/dom/canvasgradient.rs +++ b/components/script/dom/canvasgradient.rs @@ -13,7 +13,7 @@ use dom::bindings::global::GlobalRef; use dom::bindings::js::Root; use dom::bindings::num::Finite; use dom::bindings::reflector::{Reflector, reflect_dom_object}; -use util::str::DOMString; +use dom::bindings::str::DOMString; // https://html.spec.whatwg.org/multipage/#canvasgradient #[dom_struct] diff --git a/components/script/dom/canvasrenderingcontext2d.rs b/components/script/dom/canvasrenderingcontext2d.rs index e7ac0813174..88d11c78205 100644 --- a/components/script/dom/canvasrenderingcontext2d.rs +++ b/components/script/dom/canvasrenderingcontext2d.rs @@ -25,6 +25,7 @@ use dom::bindings::inheritance::Castable; use dom::bindings::js::{JS, LayoutJS, Root}; use dom::bindings::num::Finite; use dom::bindings::reflector::{Reflectable, Reflector, reflect_dom_object}; +use dom::bindings::str::DOMString; use dom::canvasgradient::{CanvasGradient, CanvasGradientStyle, ToFillOrStrokeStyle}; use dom::canvaspattern::CanvasPattern; use dom::htmlcanvaselement::HTMLCanvasElement; @@ -46,7 +47,6 @@ use std::str::FromStr; use std::{cmp, fmt}; use unpremultiplytable::UNPREMULTIPLY_TABLE; use url::Url; -use util::str::DOMString; use util::vec::byte_swap; #[must_root] diff --git a/components/script/dom/characterdata.rs b/components/script/dom/characterdata.rs index e992834b640..74fd0db94c9 100644 --- a/components/script/dom/characterdata.rs +++ b/components/script/dom/characterdata.rs @@ -12,6 +12,7 @@ use dom::bindings::codegen::UnionTypes::NodeOrString; use dom::bindings::error::{Error, ErrorResult, Fallible}; use dom::bindings::inheritance::Castable; use dom::bindings::js::{LayoutJS, Root}; +use dom::bindings::str::DOMString; use dom::comment::Comment; use dom::document::Document; use dom::element::Element; @@ -19,7 +20,6 @@ use dom::node::{Node, NodeDamage}; use dom::processinginstruction::ProcessingInstruction; use dom::text::Text; use std::cell::Ref; -use util::str::DOMString; // https://dom.spec.whatwg.org/#characterdata #[dom_struct] diff --git a/components/script/dom/closeevent.rs b/components/script/dom/closeevent.rs index 63e058fef6e..b8fe636af60 100644 --- a/components/script/dom/closeevent.rs +++ b/components/script/dom/closeevent.rs @@ -10,9 +10,9 @@ use dom::bindings::global::GlobalRef; use dom::bindings::inheritance::Castable; use dom::bindings::js::Root; use dom::bindings::reflector::reflect_dom_object; +use dom::bindings::str::DOMString; use dom::event::{Event, EventBubbles, EventCancelable}; use string_cache::Atom; -use util::str::DOMString; #[dom_struct] pub struct CloseEvent { diff --git a/components/script/dom/comment.rs b/components/script/dom/comment.rs index 093b1263b9e..43115e1dd51 100644 --- a/components/script/dom/comment.rs +++ b/components/script/dom/comment.rs @@ -7,10 +7,10 @@ use dom::bindings::codegen::Bindings::WindowBinding::WindowMethods; use dom::bindings::error::Fallible; use dom::bindings::global::GlobalRef; use dom::bindings::js::Root; +use dom::bindings::str::DOMString; use dom::characterdata::CharacterData; use dom::document::Document; use dom::node::Node; -use util::str::DOMString; /// An HTML comment. #[dom_struct] diff --git a/components/script/dom/console.rs b/components/script/dom/console.rs index f611c983043..9382bf936a8 100644 --- a/components/script/dom/console.rs +++ b/components/script/dom/console.rs @@ -9,9 +9,9 @@ use dom::bindings::codegen::Bindings::ConsoleBinding::ConsoleMethods; use dom::bindings::global::GlobalRef; use dom::bindings::js::Root; use dom::bindings::reflector::{Reflectable, Reflector, reflect_dom_object}; +use dom::bindings::str::DOMString; use std::collections::HashMap; use time::{Timespec, get_time}; -use util::str::DOMString; // https://developer.mozilla.org/en-US/docs/Web/API/Console #[dom_struct] diff --git a/components/script/dom/create.rs b/components/script/dom/create.rs index 4f095b905b1..6cdaf2b0e78 100644 --- a/components/script/dom/create.rs +++ b/components/script/dom/create.rs @@ -3,6 +3,7 @@ * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ use dom::bindings::js::Root; +use dom::bindings::str::DOMString; use dom::document::Document; use dom::element::Element; use dom::element::ElementCreator; @@ -76,7 +77,6 @@ use dom::htmlulistelement::HTMLUListElement; use dom::htmlunknownelement::HTMLUnknownElement; use dom::htmlvideoelement::HTMLVideoElement; use string_cache::{Atom, QualName}; -use util::str::DOMString; pub fn create_element(name: QualName, prefix: Option<Atom>, diff --git a/components/script/dom/css.rs b/components/script/dom/css.rs index d53a94e5da2..105de8ec9c1 100644 --- a/components/script/dom/css.rs +++ b/components/script/dom/css.rs @@ -6,7 +6,7 @@ use cssparser::serialize_identifier; use dom::bindings::error::Fallible; use dom::bindings::global::GlobalRef; use dom::bindings::reflector::Reflector; -use util::str::DOMString; +use dom::bindings::str::DOMString; #[dom_struct] pub struct CSS { diff --git a/components/script/dom/cssstyledeclaration.rs b/components/script/dom/cssstyledeclaration.rs index 97a3602a8e1..6d537c40ea5 100644 --- a/components/script/dom/cssstyledeclaration.rs +++ b/components/script/dom/cssstyledeclaration.rs @@ -8,6 +8,7 @@ use dom::bindings::global::GlobalRef; use dom::bindings::inheritance::Castable; use dom::bindings::js::{JS, Root}; use dom::bindings::reflector::{Reflector, reflect_dom_object}; +use dom::bindings::str::DOMString; use dom::element::{Element, StylePriority}; use dom::node::{Node, NodeDamage, window_from_node}; use dom::window::Window; @@ -18,7 +19,7 @@ use string_cache::Atom; use style::properties::{PropertyDeclaration, Shorthand}; use style::properties::{is_supported_property, parse_one_declaration}; use style::selector_impl::PseudoElement; -use util::str::{DOMString, str_join}; +use util::str::str_join; // http://dev.w3.org/csswg/cssom/#the-cssstyledeclaration-interface #[dom_struct] diff --git a/components/script/dom/customevent.rs b/components/script/dom/customevent.rs index 3dd202d1aee..301c3b6f816 100644 --- a/components/script/dom/customevent.rs +++ b/components/script/dom/customevent.rs @@ -10,11 +10,11 @@ use dom::bindings::global::GlobalRef; use dom::bindings::inheritance::Castable; use dom::bindings::js::{MutHeapJSVal, Root}; use dom::bindings::reflector::reflect_dom_object; +use dom::bindings::str::DOMString; use dom::event::Event; use js::jsapi::{HandleValue, JSContext}; use js::jsval::JSVal; use string_cache::Atom; -use util::str::DOMString; // https://dom.spec.whatwg.org/#interface-customevent #[dom_struct] diff --git a/components/script/dom/dedicatedworkerglobalscope.rs b/components/script/dom/dedicatedworkerglobalscope.rs index 120565b00fa..8373855ac14 100644 --- a/components/script/dom/dedicatedworkerglobalscope.rs +++ b/components/script/dom/dedicatedworkerglobalscope.rs @@ -14,6 +14,7 @@ use dom::bindings::inheritance::Castable; use dom::bindings::js::{Root, RootCollection}; use dom::bindings::refcounted::LiveDOMReferences; use dom::bindings::reflector::Reflectable; +use dom::bindings::str::DOMString; use dom::bindings::structuredclone::StructuredCloneData; use dom::messageevent::MessageEvent; use dom::worker::{SimpleWorkerErrorHandler, SharedRt, TrustedWorkerAddress}; @@ -36,7 +37,6 @@ use std::mem::replace; use std::sync::mpsc::{Receiver, RecvError, Select, Sender, channel}; use std::sync::{Arc, Mutex}; use url::Url; -use util::str::DOMString; use util::thread::spawn_named_with_send_on_panic; use util::thread_state::{IN_WORKER, SCRIPT}; diff --git a/components/script/dom/document.rs b/components/script/dom/document.rs index 1962e462282..d204bd0d8c6 100644 --- a/components/script/dom/document.rs +++ b/components/script/dom/document.rs @@ -28,6 +28,7 @@ use dom::bindings::js::{JS, LayoutJS, MutNullableHeap, Root}; use dom::bindings::num::Finite; use dom::bindings::refcounted::Trusted; use dom::bindings::reflector::{Reflectable, reflect_dom_object}; +use dom::bindings::str::DOMString; use dom::bindings::trace::RootedVec; use dom::bindings::xmlname::XMLName::InvalidXMLName; use dom::bindings::xmlname::{validate_and_extract, namespace_from_domstring, xml_name_type}; @@ -127,7 +128,7 @@ use task_source::dom_manipulation::DOMManipulationTask; use time; use url::Url; use url::percent_encoding::percent_decode; -use util::str::{DOMString, split_html_space_chars, str_join}; +use util::str::{split_html_space_chars, str_join}; #[derive(JSTraceable, PartialEq, HeapSizeOf)] pub enum IsHTMLDocument { @@ -2087,7 +2088,7 @@ impl DocumentMethods for Document { local_name.make_ascii_lowercase(); } let name = Atom::from(local_name); - let value = AttrValue::String(DOMString::new()); + let value = AttrValue::String("".to_owned()); Ok(Attr::new(&self.window, name.clone(), value, name, ns!(), None, None)) } @@ -2099,7 +2100,7 @@ impl DocumentMethods for Document { -> Fallible<Root<Attr>> { let (namespace, prefix, local_name) = try!(validate_and_extract(namespace, &qualified_name)); - let value = AttrValue::String(DOMString::new()); + let value = AttrValue::String("".to_owned()); let qualified_name = Atom::from(qualified_name); Ok(Attr::new(&self.window, local_name, diff --git a/components/script/dom/documentfragment.rs b/components/script/dom/documentfragment.rs index f77fb658d41..0fba19d5aff 100644 --- a/components/script/dom/documentfragment.rs +++ b/components/script/dom/documentfragment.rs @@ -10,13 +10,13 @@ use dom::bindings::error::{ErrorResult, Fallible}; use dom::bindings::global::GlobalRef; use dom::bindings::inheritance::Castable; use dom::bindings::js::Root; +use dom::bindings::str::DOMString; use dom::document::Document; use dom::element::Element; use dom::htmlcollection::HTMLCollection; use dom::node::{Node, window_from_node}; use dom::nodelist::NodeList; use string_cache::Atom; -use util::str::DOMString; // https://dom.spec.whatwg.org/#documentfragment #[dom_struct] diff --git a/components/script/dom/documenttype.rs b/components/script/dom/documenttype.rs index 98a5f98eb36..0f8b688c93b 100644 --- a/components/script/dom/documenttype.rs +++ b/components/script/dom/documenttype.rs @@ -8,9 +8,9 @@ use dom::bindings::codegen::UnionTypes::NodeOrString; use dom::bindings::error::ErrorResult; use dom::bindings::inheritance::Castable; use dom::bindings::js::Root; +use dom::bindings::str::DOMString; use dom::document::Document; use dom::node::Node; -use util::str::DOMString; // https://dom.spec.whatwg.org/#documenttype /// The `DOCTYPE` tag. diff --git a/components/script/dom/domexception.rs b/components/script/dom/domexception.rs index 0b6c205a9b0..e32d5dc40ac 100644 --- a/components/script/dom/domexception.rs +++ b/components/script/dom/domexception.rs @@ -8,7 +8,7 @@ use dom::bindings::codegen::Bindings::DOMExceptionBinding::DOMExceptionMethods; use dom::bindings::global::GlobalRef; use dom::bindings::js::Root; use dom::bindings::reflector::{Reflector, reflect_dom_object}; -use util::str::DOMString; +use dom::bindings::str::DOMString; #[repr(u16)] #[derive(JSTraceable, Copy, Clone, Debug, HeapSizeOf)] diff --git a/components/script/dom/domimplementation.rs b/components/script/dom/domimplementation.rs index 8c0f9bd61ee..30974ea2f46 100644 --- a/components/script/dom/domimplementation.rs +++ b/components/script/dom/domimplementation.rs @@ -12,6 +12,7 @@ use dom::bindings::global::GlobalRef; use dom::bindings::inheritance::Castable; use dom::bindings::js::{JS, Root}; use dom::bindings::reflector::{Reflector, reflect_dom_object}; +use dom::bindings::str::DOMString; use dom::bindings::xmlname::{validate_qualified_name, namespace_from_domstring}; use dom::document::DocumentSource; use dom::document::{Document, IsHTMLDocument}; @@ -23,7 +24,6 @@ use dom::htmltitleelement::HTMLTitleElement; use dom::node::Node; use dom::text::Text; use dom::xmldocument::XMLDocument; -use util::str::DOMString; // https://dom.spec.whatwg.org/#domimplementation #[dom_struct] diff --git a/components/script/dom/domparser.rs b/components/script/dom/domparser.rs index 1a3fb7f3793..f5655fdbed3 100644 --- a/components/script/dom/domparser.rs +++ b/components/script/dom/domparser.rs @@ -12,12 +12,12 @@ use dom::bindings::error::Fallible; use dom::bindings::global::GlobalRef; use dom::bindings::js::{JS, Root}; use dom::bindings::reflector::{Reflector, reflect_dom_object}; +use dom::bindings::str::DOMString; use dom::document::DocumentSource; use dom::document::{Document, IsHTMLDocument}; use dom::window::Window; use parse::html::{ParseContext, parse_html}; use parse::xml::{self, parse_xml}; -use util::str::DOMString; #[dom_struct] pub struct DOMParser { diff --git a/components/script/dom/domstringmap.rs b/components/script/dom/domstringmap.rs index 713b8cc0368..c5e534d242e 100644 --- a/components/script/dom/domstringmap.rs +++ b/components/script/dom/domstringmap.rs @@ -8,9 +8,9 @@ use dom::bindings::error::ErrorResult; use dom::bindings::global::GlobalRef; use dom::bindings::js::{JS, Root}; use dom::bindings::reflector::{Reflector, reflect_dom_object}; +use dom::bindings::str::DOMString; use dom::htmlelement::HTMLElement; use dom::node::window_from_node; -use util::str::DOMString; #[dom_struct] pub struct DOMStringMap { diff --git a/components/script/dom/domtokenlist.rs b/components/script/dom/domtokenlist.rs index 3968b2084cb..dabf3bf4cb9 100644 --- a/components/script/dom/domtokenlist.rs +++ b/components/script/dom/domtokenlist.rs @@ -9,10 +9,11 @@ use dom::bindings::error::{Error, ErrorResult, Fallible}; use dom::bindings::global::GlobalRef; use dom::bindings::js::{JS, Root}; use dom::bindings::reflector::{Reflector, reflect_dom_object}; +use dom::bindings::str::DOMString; use dom::element::Element; use dom::node::window_from_node; use string_cache::Atom; -use util::str::{DOMString, HTML_SPACE_CHARACTERS}; +use util::str::HTML_SPACE_CHARACTERS; #[dom_struct] pub struct DOMTokenList { diff --git a/components/script/dom/element.rs b/components/script/dom/element.rs index 6c8066308b5..ec33deb1608 100644 --- a/components/script/dom/element.rs +++ b/components/script/dom/element.rs @@ -26,6 +26,7 @@ use dom::bindings::global::GlobalRef; use dom::bindings::inheritance::{Castable, ElementTypeId, HTMLElementTypeId, NodeTypeId}; use dom::bindings::js::{JS, LayoutJS, MutNullableHeap}; use dom::bindings::js::{Root, RootedReference}; +use dom::bindings::str::DOMString; use dom::bindings::xmlname::XMLName::InvalidXMLName; use dom::bindings::xmlname::{namespace_from_domstring, validate_and_extract, xml_name_type}; use dom::characterdata::CharacterData; @@ -91,7 +92,7 @@ use style::properties::{PropertyDeclaration, PropertyDeclarationBlock, parse_sty use style::selector_impl::{NonTSPseudoClass, ServoSelectorImpl}; use style::values::CSSFloat; use style::values::specified::{self, CSSColor, CSSRGBA, LengthOrPercentage}; -use util::str::{DOMString, LengthOrPercentageOrAuto}; +use util::str::LengthOrPercentageOrAuto; // TODO: Update focus state when the top-level browsing context gains or loses system focus, // and when the element enters or leaves a browsing context container. @@ -1031,7 +1032,7 @@ impl Element { if *namespace == ns!() { vtable_for(self.upcast()).parse_plain_attribute(local_name, value) } else { - AttrValue::String(value) + AttrValue::String(value.into()) } } @@ -1076,7 +1077,7 @@ impl Element { pub fn set_atomic_attribute(&self, local_name: &Atom, value: DOMString) { assert!(*local_name == local_name.to_ascii_lowercase()); - let value = AttrValue::from_atomic(value); + let value = AttrValue::from_atomic(value.into()); self.set_attribute(local_name, value); } @@ -1126,7 +1127,7 @@ impl Element { } pub fn set_string_attribute(&self, local_name: &Atom, value: DOMString) { assert!(*local_name == local_name.to_ascii_lowercase()); - self.set_attribute(local_name, AttrValue::String(value)); + self.set_attribute(local_name, AttrValue::String(value.into())); } pub fn get_tokenlist_attribute(&self, local_name: &Atom) -> Vec<Atom> { @@ -1140,7 +1141,8 @@ impl Element { pub fn set_tokenlist_attribute(&self, local_name: &Atom, value: DOMString) { assert!(*local_name == local_name.to_ascii_lowercase()); - self.set_attribute(local_name, AttrValue::from_serialized_tokenlist(value)); + self.set_attribute(local_name, + AttrValue::from_serialized_tokenlist(value.into())); } pub fn set_atomic_tokenlist_attribute(&self, local_name: &Atom, tokens: Vec<Atom>) { @@ -1169,7 +1171,7 @@ impl Element { pub fn set_int_attribute(&self, local_name: &Atom, value: i32) { assert!(*local_name == local_name.to_ascii_lowercase()); - self.set_attribute(local_name, AttrValue::Int(DOMString::from(value.to_string()), value)); + self.set_attribute(local_name, AttrValue::Int(value.to_string(), value)); } pub fn get_uint_attribute(&self, local_name: &Atom, default: u32) -> u32 { @@ -1187,9 +1189,7 @@ impl Element { } pub fn set_uint_attribute(&self, local_name: &Atom, value: u32) { assert!(*local_name == local_name.to_ascii_lowercase()); - // FIXME(ajeffrey): Directly convert u32 to DOMString - self.set_attribute(local_name, - AttrValue::UInt(DOMString::from(value.to_string()), value)); + self.set_attribute(local_name, AttrValue::UInt(value.to_string(), value)); } pub fn will_mutate_attr(&self) { @@ -2032,8 +2032,8 @@ impl VirtualMethods for Element { fn parse_plain_attribute(&self, name: &Atom, value: DOMString) -> AttrValue { match name { - &atom!("id") => AttrValue::from_atomic(value), - &atom!("class") => AttrValue::from_serialized_tokenlist(value), + &atom!("id") => AttrValue::from_atomic(value.into()), + &atom!("class") => AttrValue::from_serialized_tokenlist(value.into()), _ => self.super_type().unwrap().parse_plain_attribute(name, value), } } diff --git a/components/script/dom/errorevent.rs b/components/script/dom/errorevent.rs index cb6bd15c7d7..f6c5802ca29 100644 --- a/components/script/dom/errorevent.rs +++ b/components/script/dom/errorevent.rs @@ -11,12 +11,12 @@ use dom::bindings::global::GlobalRef; use dom::bindings::inheritance::Castable; use dom::bindings::js::{MutHeapJSVal, Root}; use dom::bindings::reflector::reflect_dom_object; +use dom::bindings::str::DOMString; use dom::event::{Event, EventBubbles, EventCancelable}; use js::jsapi::{RootedValue, HandleValue, JSContext}; use js::jsval::JSVal; use std::cell::Cell; use string_cache::Atom; -use util::str::DOMString; #[dom_struct] pub struct ErrorEvent { diff --git a/components/script/dom/event.rs b/components/script/dom/event.rs index 97fc065d2b1..9174fa2cb3d 100644 --- a/components/script/dom/event.rs +++ b/components/script/dom/event.rs @@ -9,12 +9,12 @@ use dom::bindings::error::Fallible; use dom::bindings::global::GlobalRef; use dom::bindings::js::{JS, MutNullableHeap, Root}; use dom::bindings::reflector::{Reflector, reflect_dom_object}; +use dom::bindings::str::DOMString; use dom::eventtarget::EventTarget; use std::cell::Cell; use std::default::Default; use string_cache::Atom; use time; -use util::str::DOMString; #[derive(JSTraceable, Copy, Clone, Debug, PartialEq, Eq)] #[repr(u16)] diff --git a/components/script/dom/eventsource.rs b/components/script/dom/eventsource.rs index 40103e30f76..4007e391852 100644 --- a/components/script/dom/eventsource.rs +++ b/components/script/dom/eventsource.rs @@ -9,10 +9,10 @@ use dom::bindings::error::{Error, Fallible}; use dom::bindings::global::GlobalRef; use dom::bindings::js::Root; use dom::bindings::reflector::reflect_dom_object; +use dom::bindings::str::DOMString; use dom::eventtarget::EventTarget; use std::cell::Cell; use url::Url; -use util::str::DOMString; #[derive(JSTraceable, PartialEq, Copy, Clone, Debug, HeapSizeOf)] enum EventSourceReadyState { diff --git a/components/script/dom/eventtarget.rs b/components/script/dom/eventtarget.rs index c8eecc8e65d..ebacde4de4d 100644 --- a/components/script/dom/eventtarget.rs +++ b/components/script/dom/eventtarget.rs @@ -19,6 +19,7 @@ use dom::bindings::error::{Error, Fallible, report_pending_exception}; use dom::bindings::inheritance::Castable; use dom::bindings::js::Root; use dom::bindings::reflector::{Reflectable, Reflector}; +use dom::bindings::str::DOMString; use dom::element::Element; use dom::errorevent::ErrorEvent; use dom::event::{Event, EventBubbles, EventCancelable}; @@ -42,7 +43,6 @@ use std::ptr; use std::rc::Rc; use string_cache::Atom; use url::Url; -use util::str::DOMString; #[derive(PartialEq, Clone, JSTraceable)] pub enum CommonEventHandler { diff --git a/components/script/dom/file.rs b/components/script/dom/file.rs index 4ece71a5ce3..62e1b0a95bd 100644 --- a/components/script/dom/file.rs +++ b/components/script/dom/file.rs @@ -9,12 +9,12 @@ use dom::bindings::error::Fallible; use dom::bindings::global::GlobalRef; use dom::bindings::js::Root; use dom::bindings::reflector::reflect_dom_object; +use dom::bindings::str::DOMString; use dom::blob::{Blob, DataSlice, blob_parts_to_bytes}; use dom::window::Window; use net_traits::filemanager_thread::SelectedFile; use std::sync::Arc; use time; -use util::str::DOMString; #[dom_struct] pub struct File { diff --git a/components/script/dom/filereader.rs b/components/script/dom/filereader.rs index b31f9c3d5a6..175e771ffa7 100644 --- a/components/script/dom/filereader.rs +++ b/components/script/dom/filereader.rs @@ -12,6 +12,7 @@ use dom::bindings::inheritance::Castable; use dom::bindings::js::{JS, MutNullableHeap, Root}; use dom::bindings::refcounted::Trusted; use dom::bindings::reflector::{Reflectable, reflect_dom_object}; +use dom::bindings::str::DOMString; use dom::blob::{Blob, DataSlice}; use dom::domexception::{DOMErrorName, DOMException}; use dom::event::{Event, EventBubbles, EventCancelable}; @@ -27,7 +28,6 @@ use script_runtime::{ScriptChan, CommonScriptMsg}; use script_thread::Runnable; use std::cell::Cell; use string_cache::Atom; -use util::str::DOMString; use util::thread::spawn_named; #[derive(PartialEq, Clone, Copy, JSTraceable, HeapSizeOf)] diff --git a/components/script/dom/focusevent.rs b/components/script/dom/focusevent.rs index 0b0048e1e98..dd5e41e8426 100644 --- a/components/script/dom/focusevent.rs +++ b/components/script/dom/focusevent.rs @@ -10,12 +10,12 @@ use dom::bindings::global::GlobalRef; use dom::bindings::inheritance::Castable; use dom::bindings::js::{JS, MutNullableHeap, Root, RootedReference}; use dom::bindings::reflector::reflect_dom_object; +use dom::bindings::str::DOMString; use dom::event::{EventBubbles, EventCancelable}; use dom::eventtarget::EventTarget; use dom::uievent::UIEvent; use dom::window::Window; use std::default::Default; -use util::str::DOMString; #[dom_struct] pub struct FocusEvent { diff --git a/components/script/dom/forcetouchevent.rs b/components/script/dom/forcetouchevent.rs index b0fd6376760..95532cb5c8f 100644 --- a/components/script/dom/forcetouchevent.rs +++ b/components/script/dom/forcetouchevent.rs @@ -10,9 +10,9 @@ use dom::bindings::inheritance::Castable; use dom::bindings::js::{Root}; use dom::bindings::num::Finite; use dom::bindings::reflector::reflect_dom_object; +use dom::bindings::str::DOMString; use dom::uievent::UIEvent; use dom::window::Window; -use util::str::DOMString; #[dom_struct] pub struct ForceTouchEvent { diff --git a/components/script/dom/formdata.rs b/components/script/dom/formdata.rs index c8388c3e4d8..c7521a94365 100644 --- a/components/script/dom/formdata.rs +++ b/components/script/dom/formdata.rs @@ -10,14 +10,13 @@ use dom::bindings::error::Fallible; use dom::bindings::global::GlobalRef; use dom::bindings::js::{JS, Root}; use dom::bindings::reflector::{Reflectable, Reflector, reflect_dom_object}; -use dom::bindings::str::USVString; +use dom::bindings::str::{DOMString, USVString}; use dom::blob::Blob; use dom::file::File; use dom::htmlformelement::HTMLFormElement; use std::collections::HashMap; use std::collections::hash_map::Entry::{Occupied, Vacant}; use string_cache::Atom; -use util::str::DOMString; #[derive(JSTraceable, Clone)] #[must_root] diff --git a/components/script/dom/hashchangeevent.rs b/components/script/dom/hashchangeevent.rs index 95308f17eed..33562123ac6 100644 --- a/components/script/dom/hashchangeevent.rs +++ b/components/script/dom/hashchangeevent.rs @@ -10,10 +10,9 @@ use dom::bindings::global::GlobalRef; use dom::bindings::inheritance::Castable; use dom::bindings::js::Root; use dom::bindings::reflector::reflect_dom_object; -use dom::bindings::str::USVString; +use dom::bindings::str::{DOMString, USVString}; use dom::event::Event; use string_cache::Atom; -use util::str::DOMString; // https://html.spec.whatwg.org/multipage/#hashchangeevent #[dom_struct] diff --git a/components/script/dom/htmlanchorelement.rs b/components/script/dom/htmlanchorelement.rs index 4b733dbdcbd..7807ad67870 100644 --- a/components/script/dom/htmlanchorelement.rs +++ b/components/script/dom/htmlanchorelement.rs @@ -13,7 +13,7 @@ use dom::bindings::codegen::Bindings::MouseEventBinding::MouseEventMethods; use dom::bindings::codegen::Bindings::NodeBinding::NodeMethods; use dom::bindings::inheritance::Castable; use dom::bindings::js::{JS, MutNullableHeap, Root}; -use dom::bindings::str::USVString; +use dom::bindings::str::{DOMString, USVString}; use dom::document::Document; use dom::domtokenlist::DOMTokenList; use dom::element::Element; @@ -29,7 +29,6 @@ use num_traits::ToPrimitive; use std::default::Default; use string_cache::Atom; use url::Url; -use util::str::DOMString; #[dom_struct] pub struct HTMLAnchorElement { @@ -92,7 +91,7 @@ impl VirtualMethods for HTMLAnchorElement { fn parse_plain_attribute(&self, name: &Atom, value: DOMString) -> AttrValue { match name { - &atom!("rel") => AttrValue::from_serialized_tokenlist(value), + &atom!("rel") => AttrValue::from_serialized_tokenlist(value.into()), _ => self.super_type().unwrap().parse_plain_attribute(name, value), } } diff --git a/components/script/dom/htmlappletelement.rs b/components/script/dom/htmlappletelement.rs index 1648e07dc11..df46e89f06f 100644 --- a/components/script/dom/htmlappletelement.rs +++ b/components/script/dom/htmlappletelement.rs @@ -7,12 +7,12 @@ use dom::bindings::codegen::Bindings::HTMLAppletElementBinding; use dom::bindings::codegen::Bindings::HTMLAppletElementBinding::HTMLAppletElementMethods; use dom::bindings::inheritance::Castable; use dom::bindings::js::Root; +use dom::bindings::str::DOMString; use dom::document::Document; use dom::htmlelement::HTMLElement; use dom::node::Node; use dom::virtualmethods::VirtualMethods; use string_cache::Atom; -use util::str::DOMString; #[dom_struct] pub struct HTMLAppletElement { @@ -53,7 +53,7 @@ impl VirtualMethods for HTMLAppletElement { fn parse_plain_attribute(&self, name: &Atom, value: DOMString) -> AttrValue { match name { - &atom!("name") => AttrValue::from_atomic(value), + &atom!("name") => AttrValue::from_atomic(value.into()), _ => self.super_type().unwrap().parse_plain_attribute(name, value), } } diff --git a/components/script/dom/htmlareaelement.rs b/components/script/dom/htmlareaelement.rs index 159c8c58881..4e8139374f0 100644 --- a/components/script/dom/htmlareaelement.rs +++ b/components/script/dom/htmlareaelement.rs @@ -7,6 +7,7 @@ use dom::bindings::codegen::Bindings::HTMLAreaElementBinding; use dom::bindings::codegen::Bindings::HTMLAreaElementBinding::HTMLAreaElementMethods; use dom::bindings::inheritance::Castable; use dom::bindings::js::{JS, MutNullableHeap, Root}; +use dom::bindings::str::DOMString; use dom::document::Document; use dom::domtokenlist::DOMTokenList; use dom::htmlelement::HTMLElement; @@ -14,7 +15,6 @@ use dom::node::Node; use dom::virtualmethods::VirtualMethods; use std::default::Default; use string_cache::Atom; -use util::str::DOMString; #[dom_struct] pub struct HTMLAreaElement { @@ -46,7 +46,7 @@ impl VirtualMethods for HTMLAreaElement { fn parse_plain_attribute(&self, name: &Atom, value: DOMString) -> AttrValue { match name { - &atom!("rel") => AttrValue::from_serialized_tokenlist(value), + &atom!("rel") => AttrValue::from_serialized_tokenlist(value.into()), _ => self.super_type().unwrap().parse_plain_attribute(name, value), } } diff --git a/components/script/dom/htmlaudioelement.rs b/components/script/dom/htmlaudioelement.rs index 98ee31fb299..4db6b013116 100644 --- a/components/script/dom/htmlaudioelement.rs +++ b/components/script/dom/htmlaudioelement.rs @@ -4,11 +4,11 @@ use dom::bindings::codegen::Bindings::HTMLAudioElementBinding; use dom::bindings::js::Root; +use dom::bindings::str::DOMString; use dom::document::Document; use dom::htmlmediaelement::HTMLMediaElement; use dom::node::Node; use string_cache::Atom; -use util::str::DOMString; #[dom_struct] pub struct HTMLAudioElement { diff --git a/components/script/dom/htmlbaseelement.rs b/components/script/dom/htmlbaseelement.rs index 7656520e283..944b3675cba 100644 --- a/components/script/dom/htmlbaseelement.rs +++ b/components/script/dom/htmlbaseelement.rs @@ -7,6 +7,7 @@ use dom::bindings::codegen::Bindings::HTMLBaseElementBinding; use dom::bindings::codegen::Bindings::HTMLBaseElementBinding::HTMLBaseElementMethods; use dom::bindings::inheritance::Castable; use dom::bindings::js::Root; +use dom::bindings::str::DOMString; use dom::document::Document; use dom::element::{AttributeMutation, Element}; use dom::htmlelement::HTMLElement; @@ -14,7 +15,6 @@ use dom::node::{Node, UnbindContext, document_from_node}; use dom::virtualmethods::VirtualMethods; use string_cache::Atom; use url::Url; -use util::str::DOMString; #[dom_struct] pub struct HTMLBaseElement { diff --git a/components/script/dom/htmlbodyelement.rs b/components/script/dom/htmlbodyelement.rs index 536e3759fb3..b5408d877ac 100644 --- a/components/script/dom/htmlbodyelement.rs +++ b/components/script/dom/htmlbodyelement.rs @@ -9,6 +9,7 @@ use dom::bindings::codegen::Bindings::HTMLBodyElementBinding::{self, HTMLBodyEle use dom::bindings::codegen::Bindings::WindowBinding::WindowMethods; use dom::bindings::inheritance::Castable; use dom::bindings::js::{LayoutJS, Root}; +use dom::bindings::str::DOMString; use dom::document::Document; use dom::element::{AttributeMutation, Element, RawLayoutElementHelpers}; use dom::eventtarget::EventTarget; @@ -19,7 +20,6 @@ use script_traits::ScriptMsg as ConstellationMsg; use string_cache::Atom; use time; use url::Url; -use util::str::DOMString; /// How long we should wait before performing the initial reflow after `<body>` is parsed, in /// nanoseconds. @@ -141,8 +141,10 @@ impl VirtualMethods for HTMLBodyElement { fn parse_plain_attribute(&self, name: &Atom, value: DOMString) -> AttrValue { match *name { atom!("bgcolor") | - atom!("text") => AttrValue::from_legacy_color(value), - atom!("background") => AttrValue::from_url(document_from_node(self).url(), value), + atom!("text") => AttrValue::from_legacy_color(value.into()), + atom!("background") => { + AttrValue::from_url(document_from_node(self).url(), value.into()) + }, _ => self.super_type().unwrap().parse_plain_attribute(name, value), } } diff --git a/components/script/dom/htmlbrelement.rs b/components/script/dom/htmlbrelement.rs index e9b31954f9f..e95a667c0c4 100644 --- a/components/script/dom/htmlbrelement.rs +++ b/components/script/dom/htmlbrelement.rs @@ -4,11 +4,11 @@ use dom::bindings::codegen::Bindings::HTMLBRElementBinding; use dom::bindings::js::Root; +use dom::bindings::str::DOMString; use dom::document::Document; use dom::htmlelement::HTMLElement; use dom::node::Node; use string_cache::Atom; -use util::str::DOMString; #[dom_struct] pub struct HTMLBRElement { diff --git a/components/script/dom/htmlbuttonelement.rs b/components/script/dom/htmlbuttonelement.rs index 43f0f925971..e15d559cee3 100644 --- a/components/script/dom/htmlbuttonelement.rs +++ b/components/script/dom/htmlbuttonelement.rs @@ -8,6 +8,7 @@ use dom::bindings::codegen::Bindings::HTMLButtonElementBinding; use dom::bindings::codegen::Bindings::HTMLButtonElementBinding::HTMLButtonElementMethods; use dom::bindings::inheritance::Castable; use dom::bindings::js::Root; +use dom::bindings::str::DOMString; use dom::document::Document; use dom::element::{AttributeMutation, Element}; use dom::event::Event; @@ -25,7 +26,6 @@ use dom::virtualmethods::VirtualMethods; use std::cell::Cell; use string_cache::Atom; use style::element_state::*; -use util::str::DOMString; #[derive(JSTraceable, PartialEq, Copy, Clone)] #[derive(HeapSizeOf)] diff --git a/components/script/dom/htmlcanvaselement.rs b/components/script/dom/htmlcanvaselement.rs index e97f3b3769b..cf36ee9673b 100644 --- a/components/script/dom/htmlcanvaselement.rs +++ b/components/script/dom/htmlcanvaselement.rs @@ -16,6 +16,7 @@ use dom::bindings::global::GlobalRef; use dom::bindings::inheritance::Castable; use dom::bindings::js::{HeapGCValue, JS, LayoutJS, Root}; use dom::bindings::num::Finite; +use dom::bindings::str::DOMString; use dom::canvasrenderingcontext2d::{CanvasRenderingContext2D, LayoutCanvasRenderingContext2DHelpers}; use dom::document::Document; use dom::element::{AttributeMutation, Element, RawLayoutElementHelpers}; @@ -32,7 +33,6 @@ use offscreen_gl_context::GLContextAttributes; use rustc_serialize::base64::{STANDARD, ToBase64}; use std::iter::repeat; use string_cache::Atom; -use util::str::DOMString; const DEFAULT_WIDTH: u32 = 300; const DEFAULT_HEIGHT: u32 = 150; @@ -312,8 +312,8 @@ impl VirtualMethods for HTMLCanvasElement { fn parse_plain_attribute(&self, name: &Atom, value: DOMString) -> AttrValue { match name { - &atom!("width") => AttrValue::from_u32(value, DEFAULT_WIDTH), - &atom!("height") => AttrValue::from_u32(value, DEFAULT_HEIGHT), + &atom!("width") => AttrValue::from_u32(value.into(), DEFAULT_WIDTH), + &atom!("height") => AttrValue::from_u32(value.into(), DEFAULT_HEIGHT), _ => self.super_type().unwrap().parse_plain_attribute(name, value), } } diff --git a/components/script/dom/htmlcollection.rs b/components/script/dom/htmlcollection.rs index b1f1771dd07..bbacf5c7a0d 100644 --- a/components/script/dom/htmlcollection.rs +++ b/components/script/dom/htmlcollection.rs @@ -8,6 +8,7 @@ use dom::bindings::global::GlobalRef; use dom::bindings::inheritance::Castable; use dom::bindings::js::{JS, Root, MutNullableHeap}; use dom::bindings::reflector::{Reflector, reflect_dom_object}; +use dom::bindings::str::DOMString; use dom::bindings::trace::JSTraceable; use dom::bindings::xmlname::namespace_from_domstring; use dom::element::Element; @@ -16,7 +17,7 @@ use dom::window::Window; use std::ascii::AsciiExt; use std::cell::Cell; use string_cache::{Atom, Namespace, QualName}; -use util::str::{DOMString, split_html_space_chars}; +use util::str::split_html_space_chars; pub trait CollectionFilter : JSTraceable { fn filter<'a>(&self, elem: &'a Element, root: &'a Node) -> bool; diff --git a/components/script/dom/htmldataelement.rs b/components/script/dom/htmldataelement.rs index 9f949afb1fb..c665fece132 100644 --- a/components/script/dom/htmldataelement.rs +++ b/components/script/dom/htmldataelement.rs @@ -4,11 +4,11 @@ use dom::bindings::codegen::Bindings::HTMLDataElementBinding; use dom::bindings::js::Root; +use dom::bindings::str::DOMString; use dom::document::Document; use dom::htmlelement::HTMLElement; use dom::node::Node; use string_cache::Atom; -use util::str::DOMString; #[dom_struct] pub struct HTMLDataElement { diff --git a/components/script/dom/htmldatalistelement.rs b/components/script/dom/htmldatalistelement.rs index 064b3d50b56..a44e3965d5c 100644 --- a/components/script/dom/htmldatalistelement.rs +++ b/components/script/dom/htmldatalistelement.rs @@ -6,6 +6,7 @@ use dom::bindings::codegen::Bindings::HTMLDataListElementBinding; use dom::bindings::codegen::Bindings::HTMLDataListElementBinding::HTMLDataListElementMethods; use dom::bindings::inheritance::Castable; use dom::bindings::js::Root; +use dom::bindings::str::DOMString; use dom::document::Document; use dom::element::Element; use dom::htmlcollection::{CollectionFilter, HTMLCollection}; @@ -13,7 +14,6 @@ use dom::htmlelement::HTMLElement; use dom::htmloptionelement::HTMLOptionElement; use dom::node::{Node, window_from_node}; use string_cache::Atom; -use util::str::DOMString; #[dom_struct] pub struct HTMLDataListElement { diff --git a/components/script/dom/htmldetailselement.rs b/components/script/dom/htmldetailselement.rs index 724c9cff614..cde3aef6f86 100644 --- a/components/script/dom/htmldetailselement.rs +++ b/components/script/dom/htmldetailselement.rs @@ -8,6 +8,7 @@ use dom::bindings::codegen::Bindings::HTMLDetailsElementBinding::HTMLDetailsElem use dom::bindings::inheritance::Castable; use dom::bindings::js::Root; use dom::bindings::refcounted::Trusted; +use dom::bindings::str::DOMString; use dom::document::Document; use dom::element::AttributeMutation; use dom::eventtarget::EventTarget; @@ -18,7 +19,6 @@ use script_thread::Runnable; use std::cell::Cell; use string_cache::Atom; use task_source::dom_manipulation::DOMManipulationTask; -use util::str::DOMString; #[dom_struct] pub struct HTMLDetailsElement { diff --git a/components/script/dom/htmldialogelement.rs b/components/script/dom/htmldialogelement.rs index f6d10f33a9f..70edd6ec7fb 100644 --- a/components/script/dom/htmldialogelement.rs +++ b/components/script/dom/htmldialogelement.rs @@ -6,11 +6,11 @@ use dom::bindings::cell::DOMRefCell; use dom::bindings::codegen::Bindings::HTMLDialogElementBinding; use dom::bindings::codegen::Bindings::HTMLDialogElementBinding::HTMLDialogElementMethods; use dom::bindings::js::Root; +use dom::bindings::str::DOMString; use dom::document::Document; use dom::htmlelement::HTMLElement; use dom::node::Node; use string_cache::Atom; -use util::str::DOMString; #[dom_struct] pub struct HTMLDialogElement { diff --git a/components/script/dom/htmldirectoryelement.rs b/components/script/dom/htmldirectoryelement.rs index 2c48231beff..7a2cbd19c67 100644 --- a/components/script/dom/htmldirectoryelement.rs +++ b/components/script/dom/htmldirectoryelement.rs @@ -4,11 +4,11 @@ use dom::bindings::codegen::Bindings::HTMLDirectoryElementBinding; use dom::bindings::js::Root; +use dom::bindings::str::DOMString; use dom::document::Document; use dom::htmlelement::HTMLElement; use dom::node::Node; use string_cache::Atom; -use util::str::DOMString; #[dom_struct] pub struct HTMLDirectoryElement { diff --git a/components/script/dom/htmldivelement.rs b/components/script/dom/htmldivelement.rs index eaa99f3e100..585bc7e2e03 100644 --- a/components/script/dom/htmldivelement.rs +++ b/components/script/dom/htmldivelement.rs @@ -4,11 +4,11 @@ use dom::bindings::codegen::Bindings::HTMLDivElementBinding::{self, HTMLDivElementMethods}; use dom::bindings::js::Root; +use dom::bindings::str::DOMString; use dom::document::Document; use dom::htmlelement::HTMLElement; use dom::node::Node; use string_cache::Atom; -use util::str::DOMString; #[dom_struct] pub struct HTMLDivElement { diff --git a/components/script/dom/htmldlistelement.rs b/components/script/dom/htmldlistelement.rs index bfc36d67d38..c29aea80325 100644 --- a/components/script/dom/htmldlistelement.rs +++ b/components/script/dom/htmldlistelement.rs @@ -4,11 +4,11 @@ use dom::bindings::codegen::Bindings::HTMLDListElementBinding; use dom::bindings::js::Root; +use dom::bindings::str::DOMString; use dom::document::Document; use dom::htmlelement::HTMLElement; use dom::node::Node; use string_cache::Atom; -use util::str::DOMString; #[dom_struct] pub struct HTMLDListElement { diff --git a/components/script/dom/htmlelement.rs b/components/script/dom/htmlelement.rs index 7e310db8903..086eb6ff687 100644 --- a/components/script/dom/htmlelement.rs +++ b/components/script/dom/htmlelement.rs @@ -15,6 +15,7 @@ use dom::bindings::error::{Error, ErrorResult}; use dom::bindings::inheritance::Castable; use dom::bindings::inheritance::{ElementTypeId, HTMLElementTypeId, NodeTypeId}; use dom::bindings::js::{JS, MutNullableHeap, Root, RootedReference}; +use dom::bindings::str::DOMString; use dom::cssstyledeclaration::{CSSModificationAccess, CSSStyleDeclaration}; use dom::document::{Document, FocusType}; use dom::domstringmap::DOMStringMap; @@ -35,7 +36,6 @@ use std::default::Default; use std::rc::Rc; use string_cache::Atom; use style::element_state::*; -use util::str::DOMString; #[dom_struct] pub struct HTMLElement { diff --git a/components/script/dom/htmlembedelement.rs b/components/script/dom/htmlembedelement.rs index f5c96bfc583..fe0ed5424ac 100644 --- a/components/script/dom/htmlembedelement.rs +++ b/components/script/dom/htmlembedelement.rs @@ -4,11 +4,11 @@ use dom::bindings::codegen::Bindings::HTMLEmbedElementBinding; use dom::bindings::js::Root; +use dom::bindings::str::DOMString; use dom::document::Document; use dom::htmlelement::HTMLElement; use dom::node::Node; use string_cache::Atom; -use util::str::DOMString; #[dom_struct] pub struct HTMLEmbedElement { diff --git a/components/script/dom/htmlfieldsetelement.rs b/components/script/dom/htmlfieldsetelement.rs index 9b0c43ff874..085b8291ddf 100644 --- a/components/script/dom/htmlfieldsetelement.rs +++ b/components/script/dom/htmlfieldsetelement.rs @@ -7,6 +7,7 @@ use dom::bindings::codegen::Bindings::HTMLFieldSetElementBinding; use dom::bindings::codegen::Bindings::HTMLFieldSetElementBinding::HTMLFieldSetElementMethods; use dom::bindings::inheritance::{Castable, ElementTypeId, HTMLElementTypeId, NodeTypeId}; use dom::bindings::js::Root; +use dom::bindings::str::DOMString; use dom::document::Document; use dom::element::{AttributeMutation, Element}; use dom::htmlcollection::{CollectionFilter, HTMLCollection}; @@ -18,7 +19,6 @@ use dom::validitystate::ValidityState; use dom::virtualmethods::VirtualMethods; use string_cache::Atom; use style::element_state::*; -use util::str::DOMString; #[dom_struct] pub struct HTMLFieldSetElement { diff --git a/components/script/dom/htmlfontelement.rs b/components/script/dom/htmlfontelement.rs index fb5379e7954..74526b569bb 100644 --- a/components/script/dom/htmlfontelement.rs +++ b/components/script/dom/htmlfontelement.rs @@ -8,6 +8,7 @@ use dom::bindings::codegen::Bindings::HTMLFontElementBinding; use dom::bindings::codegen::Bindings::HTMLFontElementBinding::HTMLFontElementMethods; use dom::bindings::inheritance::Castable; use dom::bindings::js::{LayoutJS, Root}; +use dom::bindings::str::DOMString; use dom::document::Document; use dom::element::{Element, RawLayoutElementHelpers}; use dom::htmlelement::HTMLElement; @@ -15,7 +16,7 @@ use dom::node::Node; use dom::virtualmethods::VirtualMethods; use string_cache::Atom; use style::values::specified; -use util::str::{DOMString, HTML_SPACE_CHARACTERS, read_numbers}; +use util::str::{HTML_SPACE_CHARACTERS, read_numbers}; #[dom_struct] pub struct HTMLFontElement { @@ -59,7 +60,7 @@ impl HTMLFontElementMethods for HTMLFontElement { fn SetSize(&self, value: DOMString) { let element = self.upcast::<Element>(); let length = parse_length(&value); - element.set_attribute(&atom!("size"), AttrValue::Length(value, length)); + element.set_attribute(&atom!("size"), AttrValue::Length(value.into(), length)); } } @@ -70,11 +71,11 @@ impl VirtualMethods for HTMLFontElement { fn parse_plain_attribute(&self, name: &Atom, value: DOMString) -> AttrValue { match name { - &atom!("face") => AttrValue::from_atomic(value), - &atom!("color") => AttrValue::from_legacy_color(value), + &atom!("face") => AttrValue::from_atomic(value.into()), + &atom!("color") => AttrValue::from_legacy_color(value.into()), &atom!("size") => { let length = parse_length(&value); - AttrValue::Length(value, length) + AttrValue::Length(value.into(), length) }, _ => self.super_type().unwrap().parse_plain_attribute(name, value), } diff --git a/components/script/dom/htmlformcontrolscollection.rs b/components/script/dom/htmlformcontrolscollection.rs index 0d2896eddad..9229b854b26 100644 --- a/components/script/dom/htmlformcontrolscollection.rs +++ b/components/script/dom/htmlformcontrolscollection.rs @@ -9,13 +9,13 @@ use dom::bindings::codegen::UnionTypes::RadioNodeListOrElement; use dom::bindings::global::GlobalRef; use dom::bindings::js::Root; use dom::bindings::reflector::{Reflectable, reflect_dom_object}; +use dom::bindings::str::DOMString; use dom::element::Element; use dom::htmlcollection::{CollectionFilter, HTMLCollection}; use dom::node::Node; use dom::radionodelist::RadioNodeList; use dom::window::Window; use std::iter; -use util::str::DOMString; #[dom_struct] pub struct HTMLFormControlsCollection { diff --git a/components/script/dom/htmlformelement.rs b/components/script/dom/htmlformelement.rs index 25d4ed3cd5a..50490ec879f 100644 --- a/components/script/dom/htmlformelement.rs +++ b/components/script/dom/htmlformelement.rs @@ -16,6 +16,7 @@ use dom::bindings::inheritance::{Castable, ElementTypeId, HTMLElementTypeId, Nod use dom::bindings::js::{JS, MutNullableHeap, Root}; use dom::bindings::refcounted::Trusted; use dom::bindings::reflector::Reflectable; +use dom::bindings::str::DOMString; use dom::blob::Blob; use dom::document::Document; use dom::element::Element; @@ -51,7 +52,7 @@ use std::sync::mpsc::Sender; use string_cache::Atom; use task_source::dom_manipulation::DOMManipulationTask; use url::form_urlencoded; -use util::str::{DOMString, split_html_space_chars}; +use util::str::split_html_space_chars; #[derive(JSTraceable, PartialEq, Clone, Copy, HeapSizeOf)] pub struct GenerationId(u32); @@ -907,7 +908,7 @@ impl VirtualMethods for HTMLFormElement { fn parse_plain_attribute(&self, name: &Atom, value: DOMString) -> AttrValue { match name { - &atom!("name") => AttrValue::from_atomic(value), + &atom!("name") => AttrValue::from_atomic(value.into()), _ => self.super_type().unwrap().parse_plain_attribute(name, value), } } diff --git a/components/script/dom/htmlframeelement.rs b/components/script/dom/htmlframeelement.rs index 2907fea4168..04207c711af 100644 --- a/components/script/dom/htmlframeelement.rs +++ b/components/script/dom/htmlframeelement.rs @@ -4,11 +4,11 @@ use dom::bindings::codegen::Bindings::HTMLFrameElementBinding; use dom::bindings::js::Root; +use dom::bindings::str::DOMString; use dom::document::Document; use dom::htmlelement::HTMLElement; use dom::node::Node; use string_cache::Atom; -use util::str::DOMString; #[dom_struct] pub struct HTMLFrameElement { diff --git a/components/script/dom/htmlframesetelement.rs b/components/script/dom/htmlframesetelement.rs index df73bc893e9..30cfc1fa677 100644 --- a/components/script/dom/htmlframesetelement.rs +++ b/components/script/dom/htmlframesetelement.rs @@ -7,11 +7,11 @@ use dom::bindings::codegen::Bindings::HTMLFrameSetElementBinding; use dom::bindings::codegen::Bindings::HTMLFrameSetElementBinding::HTMLFrameSetElementMethods; use dom::bindings::codegen::Bindings::WindowBinding::WindowMethods; use dom::bindings::js::Root; +use dom::bindings::str::DOMString; use dom::document::Document; use dom::htmlelement::HTMLElement; use dom::node::{Node, window_from_node}; use string_cache::Atom; -use util::str::DOMString; #[dom_struct] pub struct HTMLFrameSetElement { diff --git a/components/script/dom/htmlheadelement.rs b/components/script/dom/htmlheadelement.rs index 4f87db1d824..d6e7fe22a26 100644 --- a/components/script/dom/htmlheadelement.rs +++ b/components/script/dom/htmlheadelement.rs @@ -5,13 +5,13 @@ use dom::bindings::codegen::Bindings::HTMLHeadElementBinding; use dom::bindings::inheritance::Castable; use dom::bindings::js::Root; +use dom::bindings::str::DOMString; use dom::document::Document; use dom::htmlelement::HTMLElement; use dom::node::Node; use dom::userscripts::load_script; use dom::virtualmethods::VirtualMethods; use string_cache::Atom; -use util::str::DOMString; #[dom_struct] pub struct HTMLHeadElement { diff --git a/components/script/dom/htmlheadingelement.rs b/components/script/dom/htmlheadingelement.rs index 5f219b54f34..9340cb09d3b 100644 --- a/components/script/dom/htmlheadingelement.rs +++ b/components/script/dom/htmlheadingelement.rs @@ -4,11 +4,11 @@ use dom::bindings::codegen::Bindings::HTMLHeadingElementBinding; use dom::bindings::js::Root; +use dom::bindings::str::DOMString; use dom::document::Document; use dom::htmlelement::HTMLElement; use dom::node::Node; use string_cache::Atom; -use util::str::DOMString; #[derive(JSTraceable, HeapSizeOf)] pub enum HeadingLevel { diff --git a/components/script/dom/htmlhrelement.rs b/components/script/dom/htmlhrelement.rs index bea12efbfea..7259814fdd9 100644 --- a/components/script/dom/htmlhrelement.rs +++ b/components/script/dom/htmlhrelement.rs @@ -7,13 +7,14 @@ use dom::attr::AttrValue; use dom::bindings::codegen::Bindings::HTMLHRElementBinding::{self, HTMLHRElementMethods}; use dom::bindings::inheritance::Castable; use dom::bindings::js::{LayoutJS, Root}; +use dom::bindings::str::DOMString; use dom::document::Document; use dom::element::{Element, RawLayoutElementHelpers}; use dom::htmlelement::HTMLElement; use dom::node::Node; use dom::virtualmethods::VirtualMethods; use string_cache::Atom; -use util::str::{DOMString, LengthOrPercentageOrAuto}; +use util::str::LengthOrPercentageOrAuto; #[dom_struct] pub struct HTMLHRElement { @@ -92,9 +93,9 @@ impl VirtualMethods for HTMLHRElement { fn parse_plain_attribute(&self, name: &Atom, value: DOMString) -> AttrValue { match name { - &atom!("align") => AttrValue::from_dimension(value), - &atom!("color") => AttrValue::from_legacy_color(value), - &atom!("width") => AttrValue::from_dimension(value), + &atom!("align") => AttrValue::from_dimension(value.into()), + &atom!("color") => AttrValue::from_legacy_color(value.into()), + &atom!("width") => AttrValue::from_dimension(value.into()), _ => self.super_type().unwrap().parse_plain_attribute(name, value), } } diff --git a/components/script/dom/htmlhtmlelement.rs b/components/script/dom/htmlhtmlelement.rs index 2ae0e3d5fb3..e513eaa1bcc 100644 --- a/components/script/dom/htmlhtmlelement.rs +++ b/components/script/dom/htmlhtmlelement.rs @@ -4,11 +4,11 @@ use dom::bindings::codegen::Bindings::HTMLHtmlElementBinding; use dom::bindings::js::Root; +use dom::bindings::str::DOMString; use dom::document::Document; use dom::htmlelement::HTMLElement; use dom::node::Node; use string_cache::Atom; -use util::str::DOMString; #[dom_struct] pub struct HTMLHtmlElement { diff --git a/components/script/dom/htmliframeelement.rs b/components/script/dom/htmliframeelement.rs index db7728ca710..8cec0aa6659 100644 --- a/components/script/dom/htmliframeelement.rs +++ b/components/script/dom/htmliframeelement.rs @@ -19,6 +19,7 @@ use dom::bindings::global::GlobalRef; use dom::bindings::inheritance::Castable; use dom::bindings::js::{Root, LayoutJS}; use dom::bindings::reflector::Reflectable; +use dom::bindings::str::DOMString; use dom::customevent::CustomEvent; use dom::document::Document; use dom::element::{AttributeMutation, Element, RawLayoutElementHelpers}; @@ -42,7 +43,7 @@ use string_cache::Atom; use style::context::ReflowGoal; use url::Url; use util::prefs; -use util::str::{DOMString, LengthOrPercentageOrAuto}; +use util::str::LengthOrPercentageOrAuto; pub fn mozbrowser_enabled() -> bool { prefs::get_pref("dom.mozbrowser.enabled").as_boolean().unwrap_or(false) @@ -539,9 +540,9 @@ impl VirtualMethods for HTMLIFrameElement { fn parse_plain_attribute(&self, name: &Atom, value: DOMString) -> AttrValue { match name { - &atom!("sandbox") => AttrValue::from_serialized_tokenlist(value), - &atom!("width") => AttrValue::from_dimension(value), - &atom!("height") => AttrValue::from_dimension(value), + &atom!("sandbox") => AttrValue::from_serialized_tokenlist(value.into()), + &atom!("width") => AttrValue::from_dimension(value.into()), + &atom!("height") => AttrValue::from_dimension(value.into()), _ => self.super_type().unwrap().parse_plain_attribute(name, value), } } diff --git a/components/script/dom/htmlimageelement.rs b/components/script/dom/htmlimageelement.rs index 14fffca5fda..8bd29e7678f 100644 --- a/components/script/dom/htmlimageelement.rs +++ b/components/script/dom/htmlimageelement.rs @@ -14,6 +14,7 @@ use dom::bindings::global::GlobalRef; use dom::bindings::inheritance::Castable; use dom::bindings::js::{LayoutJS, Root}; use dom::bindings::refcounted::Trusted; +use dom::bindings::str::DOMString; use dom::document::Document; use dom::element::{AttributeMutation, Element, RawLayoutElementHelpers}; use dom::eventtarget::EventTarget; @@ -31,7 +32,7 @@ use script_thread::Runnable; use std::sync::Arc; use string_cache::Atom; use url::Url; -use util::str::{DOMString, LengthOrPercentageOrAuto}; +use util::str::LengthOrPercentageOrAuto; #[derive(JSTraceable, HeapSizeOf)] #[allow(dead_code)] @@ -377,9 +378,9 @@ impl VirtualMethods for HTMLImageElement { fn parse_plain_attribute(&self, name: &Atom, value: DOMString) -> AttrValue { match name { - &atom!("name") => AttrValue::from_atomic(value), - &atom!("width") | &atom!("height") => AttrValue::from_dimension(value), - &atom!("hspace") | &atom!("vspace") => AttrValue::from_u32(value, 0), + &atom!("name") => AttrValue::from_atomic(value.into()), + &atom!("width") | &atom!("height") => AttrValue::from_dimension(value.into()), + &atom!("hspace") | &atom!("vspace") => AttrValue::from_u32(value.into(), 0), _ => self.super_type().unwrap().parse_plain_attribute(name, value), } } @@ -394,6 +395,6 @@ fn image_dimension_setter(element: &Element, attr: Atom, value: u32) { value }; let dim = LengthOrPercentageOrAuto::Length(Au::from_px(value as i32)); - let value = AttrValue::Dimension(DOMString::from(value.to_string()), dim); + let value = AttrValue::Dimension(value.to_string(), dim); element.set_attribute(&attr, value); } diff --git a/components/script/dom/htmlinputelement.rs b/components/script/dom/htmlinputelement.rs index e91a37d183a..dbc0d4f8f1f 100644 --- a/components/script/dom/htmlinputelement.rs +++ b/components/script/dom/htmlinputelement.rs @@ -14,6 +14,7 @@ use dom::bindings::codegen::Bindings::KeyboardEventBinding::KeyboardEventMethods use dom::bindings::error::{Error, ErrorResult}; use dom::bindings::inheritance::Castable; use dom::bindings::js::{JS, LayoutJS, Root, RootedReference, MutNullableHeap}; +use dom::bindings::str::DOMString; use dom::document::Document; use dom::element::{AttributeMutation, Element, RawLayoutElementHelpers, LayoutElementHelpers}; use dom::event::{Event, EventBubbles, EventCancelable}; @@ -42,7 +43,6 @@ use style::element_state::*; use textinput::KeyReaction::{DispatchInput, Nothing, RedrawSelection, TriggerDefaultAction}; use textinput::Lines::Single; use textinput::{TextInput, SelectionDirection}; -use util::str::{DOMString}; const DEFAULT_SUBMIT_VALUE: &'static str = "Submit"; const DEFAULT_RESET_VALUE: &'static str = "Reset"; @@ -881,10 +881,10 @@ impl VirtualMethods for HTMLInputElement { fn parse_plain_attribute(&self, name: &Atom, value: DOMString) -> AttrValue { match name { - &atom!("name") => AttrValue::from_atomic(value), - &atom!("size") => AttrValue::from_limited_u32(value, DEFAULT_INPUT_SIZE), - &atom!("type") => AttrValue::from_atomic(value), - &atom!("maxlength") => AttrValue::from_limited_i32(value, DEFAULT_MAX_LENGTH), + &atom!("name") => AttrValue::from_atomic(value.into()), + &atom!("size") => AttrValue::from_limited_u32(value.into(), DEFAULT_INPUT_SIZE), + &atom!("type") => AttrValue::from_atomic(value.into()), + &atom!("maxlength") => AttrValue::from_limited_i32(value.into(), DEFAULT_MAX_LENGTH), _ => self.super_type().unwrap().parse_plain_attribute(name, value), } } diff --git a/components/script/dom/htmllabelelement.rs b/components/script/dom/htmllabelelement.rs index 90d4a16b86e..e14dce36b88 100644 --- a/components/script/dom/htmllabelelement.rs +++ b/components/script/dom/htmllabelelement.rs @@ -8,6 +8,7 @@ use dom::bindings::codegen::Bindings::HTMLLabelElementBinding; use dom::bindings::codegen::Bindings::HTMLLabelElementBinding::HTMLLabelElementMethods; use dom::bindings::inheritance::Castable; use dom::bindings::js::Root; +use dom::bindings::str::DOMString; use dom::document::Document; use dom::element::Element; use dom::event::Event; @@ -17,7 +18,6 @@ use dom::htmlformelement::{FormControl, HTMLFormElement}; use dom::node::{document_from_node, Node}; use dom::virtualmethods::VirtualMethods; use string_cache::Atom; -use util::str::DOMString; #[dom_struct] pub struct HTMLLabelElement { @@ -122,7 +122,7 @@ impl VirtualMethods for HTMLLabelElement { fn parse_plain_attribute(&self, name: &Atom, value: DOMString) -> AttrValue { match name { - &atom!("for") => AttrValue::from_atomic(value), + &atom!("for") => AttrValue::from_atomic(value.into()), _ => self.super_type().unwrap().parse_plain_attribute(name, value), } } diff --git a/components/script/dom/htmllegendelement.rs b/components/script/dom/htmllegendelement.rs index d0b3487113a..7a5a3632eeb 100644 --- a/components/script/dom/htmllegendelement.rs +++ b/components/script/dom/htmllegendelement.rs @@ -7,6 +7,7 @@ use dom::bindings::codegen::Bindings::HTMLLegendElementBinding::HTMLLegendElemen use dom::bindings::codegen::Bindings::NodeBinding::NodeMethods; use dom::bindings::inheritance::Castable; use dom::bindings::js::Root; +use dom::bindings::str::DOMString; use dom::document::Document; use dom::element::Element; use dom::htmlelement::HTMLElement; @@ -15,7 +16,6 @@ use dom::htmlformelement::{HTMLFormElement, FormControl}; use dom::node::{Node, UnbindContext}; use dom::virtualmethods::VirtualMethods; use string_cache::Atom; -use util::str::DOMString; #[dom_struct] pub struct HTMLLegendElement { diff --git a/components/script/dom/htmllielement.rs b/components/script/dom/htmllielement.rs index e0deac587fc..64bedf2d8ce 100644 --- a/components/script/dom/htmllielement.rs +++ b/components/script/dom/htmllielement.rs @@ -4,11 +4,11 @@ use dom::bindings::codegen::Bindings::HTMLLIElementBinding; use dom::bindings::js::Root; +use dom::bindings::str::DOMString; use dom::document::Document; use dom::htmlelement::HTMLElement; use dom::node::Node; use string_cache::Atom; -use util::str::DOMString; #[dom_struct] pub struct HTMLLIElement { diff --git a/components/script/dom/htmllinkelement.rs b/components/script/dom/htmllinkelement.rs index 0a7ebb5de1b..18ff43c000b 100644 --- a/components/script/dom/htmllinkelement.rs +++ b/components/script/dom/htmllinkelement.rs @@ -12,6 +12,7 @@ use dom::bindings::inheritance::Castable; use dom::bindings::js::{JS, MutNullableHeap, Root}; use dom::bindings::js::{RootedReference}; use dom::bindings::refcounted::Trusted; +use dom::bindings::str::DOMString; use dom::document::Document; use dom::domtokenlist::DOMTokenList; use dom::element::{AttributeMutation, Element, ElementCreator}; @@ -40,7 +41,7 @@ use style::media_queries::{MediaQueryList, parse_media_query_list}; use style::servo::Stylesheet; use style::stylesheets::Origin; use url::Url; -use util::str::{DOMString, HTML_SPACE_CHARACTERS}; +use util::str::HTML_SPACE_CHARACTERS; no_jsmanaged_fields!(Stylesheet); @@ -158,7 +159,7 @@ impl VirtualMethods for HTMLLinkElement { fn parse_plain_attribute(&self, name: &Atom, value: DOMString) -> AttrValue { match name { - &atom!("rel") => AttrValue::from_serialized_tokenlist(value), + &atom!("rel") => AttrValue::from_serialized_tokenlist(value.into()), _ => self.super_type().unwrap().parse_plain_attribute(name, value), } } diff --git a/components/script/dom/htmlmapelement.rs b/components/script/dom/htmlmapelement.rs index 278b0eb66ab..b1a4ff1af4a 100644 --- a/components/script/dom/htmlmapelement.rs +++ b/components/script/dom/htmlmapelement.rs @@ -4,11 +4,11 @@ use dom::bindings::codegen::Bindings::HTMLMapElementBinding; use dom::bindings::js::Root; +use dom::bindings::str::DOMString; use dom::document::Document; use dom::htmlelement::HTMLElement; use dom::node::Node; use string_cache::Atom; -use util::str::DOMString; #[dom_struct] pub struct HTMLMapElement { diff --git a/components/script/dom/htmlmediaelement.rs b/components/script/dom/htmlmediaelement.rs index 8971e1db34c..9532de74677 100644 --- a/components/script/dom/htmlmediaelement.rs +++ b/components/script/dom/htmlmediaelement.rs @@ -15,6 +15,7 @@ use dom::bindings::global::GlobalRef; use dom::bindings::inheritance::Castable; use dom::bindings::js::{Root, MutNullableHeap, JS}; use dom::bindings::refcounted::Trusted; +use dom::bindings::str::DOMString; use dom::document::Document; use dom::element::{Element, AttributeMutation}; use dom::event::{Event, EventBubbles, EventCancelable}; @@ -34,7 +35,6 @@ use string_cache::Atom; use task_source::dom_manipulation::DOMManipulationTask; use time::{self, Timespec, Duration}; use url::Url; -use util::str::DOMString; struct HTMLMediaElementContext { /// The element that initiated the request. diff --git a/components/script/dom/htmlmetaelement.rs b/components/script/dom/htmlmetaelement.rs index 88e5af9bfc1..bc3dfdb5b57 100644 --- a/components/script/dom/htmlmetaelement.rs +++ b/components/script/dom/htmlmetaelement.rs @@ -8,6 +8,7 @@ use dom::bindings::codegen::Bindings::HTMLMetaElementBinding; use dom::bindings::codegen::Bindings::HTMLMetaElementBinding::HTMLMetaElementMethods; use dom::bindings::inheritance::Castable; use dom::bindings::js::{Root, RootedReference}; +use dom::bindings::str::DOMString; use dom::document::Document; use dom::element::Element; use dom::htmlelement::HTMLElement; @@ -19,7 +20,7 @@ use string_cache::Atom; use style::servo::Stylesheet; use style::stylesheets::{CSSRule, Origin}; use style::viewport::ViewportRule; -use util::str::{DOMString, HTML_SPACE_CHARACTERS}; +use util::str::HTML_SPACE_CHARACTERS; #[dom_struct] pub struct HTMLMetaElement { @@ -117,7 +118,7 @@ impl VirtualMethods for HTMLMetaElement { fn parse_plain_attribute(&self, name: &Atom, value: DOMString) -> AttrValue { match name { - &atom!("name") => AttrValue::from_atomic(value), + &atom!("name") => AttrValue::from_atomic(value.into()), _ => self.super_type().unwrap().parse_plain_attribute(name, value), } } diff --git a/components/script/dom/htmlmeterelement.rs b/components/script/dom/htmlmeterelement.rs index e41af546790..10af136ffa5 100644 --- a/components/script/dom/htmlmeterelement.rs +++ b/components/script/dom/htmlmeterelement.rs @@ -5,12 +5,12 @@ use dom::bindings::codegen::Bindings::HTMLMeterElementBinding::{self, HTMLMeterElementMethods}; use dom::bindings::inheritance::Castable; use dom::bindings::js::Root; +use dom::bindings::str::DOMString; use dom::document::Document; use dom::htmlelement::HTMLElement; use dom::node::Node; use dom::nodelist::NodeList; use string_cache::Atom; -use util::str::DOMString; #[dom_struct] pub struct HTMLMeterElement { diff --git a/components/script/dom/htmlmodelement.rs b/components/script/dom/htmlmodelement.rs index 3961f3ae35c..07d974d46da 100644 --- a/components/script/dom/htmlmodelement.rs +++ b/components/script/dom/htmlmodelement.rs @@ -4,11 +4,11 @@ use dom::bindings::codegen::Bindings::HTMLModElementBinding; use dom::bindings::js::Root; +use dom::bindings::str::DOMString; use dom::document::Document; use dom::htmlelement::HTMLElement; use dom::node::Node; use string_cache::Atom; -use util::str::DOMString; #[dom_struct] pub struct HTMLModElement { diff --git a/components/script/dom/htmlobjectelement.rs b/components/script/dom/htmlobjectelement.rs index 4d2b1cde778..268ff17e9cf 100644 --- a/components/script/dom/htmlobjectelement.rs +++ b/components/script/dom/htmlobjectelement.rs @@ -8,6 +8,7 @@ use dom::bindings::codegen::Bindings::HTMLObjectElementBinding; use dom::bindings::codegen::Bindings::HTMLObjectElementBinding::HTMLObjectElementMethods; use dom::bindings::inheritance::Castable; use dom::bindings::js::Root; +use dom::bindings::str::DOMString; use dom::document::Document; use dom::element::{AttributeMutation, Element}; use dom::htmlelement::HTMLElement; @@ -19,7 +20,6 @@ use dom::virtualmethods::VirtualMethods; use net_traits::image::base::Image; use std::sync::Arc; use string_cache::Atom; -use util::str::DOMString; #[dom_struct] pub struct HTMLObjectElement { diff --git a/components/script/dom/htmlolistelement.rs b/components/script/dom/htmlolistelement.rs index d8aa78e3bc6..85cc77959ea 100644 --- a/components/script/dom/htmlolistelement.rs +++ b/components/script/dom/htmlolistelement.rs @@ -4,11 +4,11 @@ use dom::bindings::codegen::Bindings::HTMLOListElementBinding; use dom::bindings::js::Root; +use dom::bindings::str::DOMString; use dom::document::Document; use dom::htmlelement::HTMLElement; use dom::node::Node; use string_cache::Atom; -use util::str::DOMString; #[dom_struct] pub struct HTMLOListElement { diff --git a/components/script/dom/htmloptgroupelement.rs b/components/script/dom/htmloptgroupelement.rs index a554377ea7a..9665a0cf22f 100644 --- a/components/script/dom/htmloptgroupelement.rs +++ b/components/script/dom/htmloptgroupelement.rs @@ -7,6 +7,7 @@ use dom::bindings::codegen::Bindings::HTMLOptGroupElementBinding; use dom::bindings::codegen::Bindings::HTMLOptGroupElementBinding::HTMLOptGroupElementMethods; use dom::bindings::inheritance::Castable; use dom::bindings::js::Root; +use dom::bindings::str::DOMString; use dom::document::Document; use dom::element::{AttributeMutation, Element}; use dom::htmlelement::HTMLElement; @@ -15,7 +16,6 @@ use dom::node::Node; use dom::virtualmethods::VirtualMethods; use string_cache::Atom; use style::element_state::*; -use util::str::DOMString; #[dom_struct] pub struct HTMLOptGroupElement { diff --git a/components/script/dom/htmloptionelement.rs b/components/script/dom/htmloptionelement.rs index cd521702a34..67cb4983258 100644 --- a/components/script/dom/htmloptionelement.rs +++ b/components/script/dom/htmloptionelement.rs @@ -9,6 +9,7 @@ use dom::bindings::codegen::Bindings::HTMLOptionElementBinding::HTMLOptionElemen use dom::bindings::codegen::Bindings::NodeBinding::NodeMethods; use dom::bindings::inheritance::Castable; use dom::bindings::js::Root; +use dom::bindings::str::DOMString; use dom::characterdata::CharacterData; use dom::document::Document; use dom::element::{AttributeMutation, Element}; @@ -21,7 +22,7 @@ use dom::virtualmethods::VirtualMethods; use std::cell::Cell; use string_cache::Atom; use style::element_state::*; -use util::str::{DOMString, split_html_space_chars, str_join}; +use util::str::{split_html_space_chars, str_join}; #[dom_struct] pub struct HTMLOptionElement { diff --git a/components/script/dom/htmloutputelement.rs b/components/script/dom/htmloutputelement.rs index b614684b863..b1b51c6d47e 100644 --- a/components/script/dom/htmloutputelement.rs +++ b/components/script/dom/htmloutputelement.rs @@ -6,6 +6,7 @@ use dom::bindings::codegen::Bindings::HTMLOutputElementBinding; use dom::bindings::codegen::Bindings::HTMLOutputElementBinding::HTMLOutputElementMethods; use dom::bindings::inheritance::Castable; use dom::bindings::js::Root; +use dom::bindings::str::DOMString; use dom::document::Document; use dom::htmlelement::HTMLElement; use dom::htmlformelement::{FormControl, HTMLFormElement}; @@ -13,7 +14,6 @@ use dom::node::{Node, window_from_node}; use dom::nodelist::NodeList; use dom::validitystate::ValidityState; use string_cache::Atom; -use util::str::DOMString; #[dom_struct] pub struct HTMLOutputElement { diff --git a/components/script/dom/htmlparagraphelement.rs b/components/script/dom/htmlparagraphelement.rs index 828e2f37742..fc4b342b633 100644 --- a/components/script/dom/htmlparagraphelement.rs +++ b/components/script/dom/htmlparagraphelement.rs @@ -4,11 +4,11 @@ use dom::bindings::codegen::Bindings::HTMLParagraphElementBinding; use dom::bindings::js::Root; +use dom::bindings::str::DOMString; use dom::document::Document; use dom::htmlelement::HTMLElement; use dom::node::Node; use string_cache::Atom; -use util::str::DOMString; #[dom_struct] pub struct HTMLParagraphElement { diff --git a/components/script/dom/htmlparamelement.rs b/components/script/dom/htmlparamelement.rs index 6e9da2e787b..9c3d745f612 100644 --- a/components/script/dom/htmlparamelement.rs +++ b/components/script/dom/htmlparamelement.rs @@ -4,11 +4,11 @@ use dom::bindings::codegen::Bindings::HTMLParamElementBinding; use dom::bindings::js::Root; +use dom::bindings::str::DOMString; use dom::document::Document; use dom::htmlelement::HTMLElement; use dom::node::Node; use string_cache::Atom; -use util::str::DOMString; #[dom_struct] pub struct HTMLParamElement { diff --git a/components/script/dom/htmlpreelement.rs b/components/script/dom/htmlpreelement.rs index d227c70cb83..f03af0f4c45 100644 --- a/components/script/dom/htmlpreelement.rs +++ b/components/script/dom/htmlpreelement.rs @@ -4,11 +4,11 @@ use dom::bindings::codegen::Bindings::HTMLPreElementBinding; use dom::bindings::js::Root; +use dom::bindings::str::DOMString; use dom::document::Document; use dom::htmlelement::HTMLElement; use dom::node::Node; use string_cache::Atom; -use util::str::DOMString; #[dom_struct] pub struct HTMLPreElement { diff --git a/components/script/dom/htmlprogresselement.rs b/components/script/dom/htmlprogresselement.rs index 8af60fdd1ba..9fb721b795b 100644 --- a/components/script/dom/htmlprogresselement.rs +++ b/components/script/dom/htmlprogresselement.rs @@ -5,12 +5,12 @@ use dom::bindings::codegen::Bindings::HTMLProgressElementBinding::{self, HTMLProgressElementMethods}; use dom::bindings::inheritance::Castable; use dom::bindings::js::Root; +use dom::bindings::str::DOMString; use dom::document::Document; use dom::htmlelement::HTMLElement; use dom::node::Node; use dom::nodelist::NodeList; use string_cache::Atom; -use util::str::DOMString; #[dom_struct] pub struct HTMLProgressElement { diff --git a/components/script/dom/htmlquoteelement.rs b/components/script/dom/htmlquoteelement.rs index dd5b9301f71..d4692f72b9e 100644 --- a/components/script/dom/htmlquoteelement.rs +++ b/components/script/dom/htmlquoteelement.rs @@ -4,11 +4,11 @@ use dom::bindings::codegen::Bindings::HTMLQuoteElementBinding; use dom::bindings::js::Root; +use dom::bindings::str::DOMString; use dom::document::Document; use dom::htmlelement::HTMLElement; use dom::node::Node; use string_cache::Atom; -use util::str::DOMString; #[dom_struct] pub struct HTMLQuoteElement { diff --git a/components/script/dom/htmlscriptelement.rs b/components/script/dom/htmlscriptelement.rs index 3ba0b240e31..edd2152844e 100644 --- a/components/script/dom/htmlscriptelement.rs +++ b/components/script/dom/htmlscriptelement.rs @@ -15,6 +15,7 @@ use dom::bindings::inheritance::Castable; use dom::bindings::js::RootedReference; use dom::bindings::js::{JS, Root}; use dom::bindings::refcounted::Trusted; +use dom::bindings::str::DOMString; use dom::document::Document; use dom::element::{AttributeMutation, Element, ElementCreator}; use dom::event::{Event, EventBubbles, EventCancelable}; @@ -41,7 +42,7 @@ use std::sync::{Arc, Mutex}; use string_cache::Atom; use task_source::dom_manipulation::DOMManipulationTask; use url::Url; -use util::str::{DOMString, HTML_SPACE_CHARACTERS, StaticStringVec}; +use util::str::{HTML_SPACE_CHARACTERS, StaticStringVec}; #[dom_struct] pub struct HTMLScriptElement { diff --git a/components/script/dom/htmlselectelement.rs b/components/script/dom/htmlselectelement.rs index cfce718bcbe..8b04c9b00eb 100644 --- a/components/script/dom/htmlselectelement.rs +++ b/components/script/dom/htmlselectelement.rs @@ -10,6 +10,7 @@ use dom::bindings::codegen::UnionTypes::HTMLElementOrLong; use dom::bindings::codegen::UnionTypes::HTMLOptionElementOrHTMLOptGroupElement; use dom::bindings::inheritance::Castable; use dom::bindings::js::Root; +use dom::bindings::str::DOMString; use dom::document::Document; use dom::element::{AttributeMutation, Element}; use dom::htmlelement::HTMLElement; @@ -23,7 +24,6 @@ use dom::validitystate::ValidityState; use dom::virtualmethods::VirtualMethods; use string_cache::Atom; use style::element_state::*; -use util::str::DOMString; #[dom_struct] pub struct HTMLSelectElement { @@ -228,7 +228,7 @@ impl VirtualMethods for HTMLSelectElement { fn parse_plain_attribute(&self, local_name: &Atom, value: DOMString) -> AttrValue { match *local_name { - atom!("size") => AttrValue::from_u32(value, DEFAULT_SELECT_SIZE), + atom!("size") => AttrValue::from_u32(value.into(), DEFAULT_SELECT_SIZE), _ => self.super_type().unwrap().parse_plain_attribute(local_name, value), } } diff --git a/components/script/dom/htmlsourceelement.rs b/components/script/dom/htmlsourceelement.rs index 37c1fbf8d11..585d7678281 100644 --- a/components/script/dom/htmlsourceelement.rs +++ b/components/script/dom/htmlsourceelement.rs @@ -4,11 +4,11 @@ use dom::bindings::codegen::Bindings::HTMLSourceElementBinding; use dom::bindings::js::Root; +use dom::bindings::str::DOMString; use dom::document::Document; use dom::htmlelement::HTMLElement; use dom::node::Node; use string_cache::Atom; -use util::str::DOMString; #[dom_struct] pub struct HTMLSourceElement { diff --git a/components/script/dom/htmlspanelement.rs b/components/script/dom/htmlspanelement.rs index 771defdb818..b66b1602284 100644 --- a/components/script/dom/htmlspanelement.rs +++ b/components/script/dom/htmlspanelement.rs @@ -4,11 +4,11 @@ use dom::bindings::codegen::Bindings::HTMLSpanElementBinding; use dom::bindings::js::Root; +use dom::bindings::str::DOMString; use dom::document::Document; use dom::htmlelement::HTMLElement; use dom::node::Node; use string_cache::Atom; -use util::str::DOMString; #[dom_struct] pub struct HTMLSpanElement { diff --git a/components/script/dom/htmlstyleelement.rs b/components/script/dom/htmlstyleelement.rs index e91b1a1e064..8d4a05eb9b7 100644 --- a/components/script/dom/htmlstyleelement.rs +++ b/components/script/dom/htmlstyleelement.rs @@ -8,6 +8,7 @@ use dom::bindings::codegen::Bindings::HTMLStyleElementBinding; use dom::bindings::codegen::Bindings::NodeBinding::NodeMethods; use dom::bindings::inheritance::Castable; use dom::bindings::js::Root; +use dom::bindings::str::DOMString; use dom::document::Document; use dom::element::Element; use dom::htmlelement::HTMLElement; @@ -19,7 +20,6 @@ use string_cache::Atom; use style::media_queries::parse_media_query_list; use style::servo::Stylesheet; use style::stylesheets::Origin; -use util::str::DOMString; #[dom_struct] pub struct HTMLStyleElement { diff --git a/components/script/dom/htmltablecaptionelement.rs b/components/script/dom/htmltablecaptionelement.rs index 46b841f3a43..108e0b8ea7d 100644 --- a/components/script/dom/htmltablecaptionelement.rs +++ b/components/script/dom/htmltablecaptionelement.rs @@ -4,11 +4,11 @@ use dom::bindings::codegen::Bindings::HTMLTableCaptionElementBinding; use dom::bindings::js::Root; +use dom::bindings::str::DOMString; use dom::document::Document; use dom::htmlelement::HTMLElement; use dom::node::Node; use string_cache::Atom; -use util::str::DOMString; #[dom_struct] pub struct HTMLTableCaptionElement { diff --git a/components/script/dom/htmltablecellelement.rs b/components/script/dom/htmltablecellelement.rs index 79cb31ced03..036771e178a 100644 --- a/components/script/dom/htmltablecellelement.rs +++ b/components/script/dom/htmltablecellelement.rs @@ -8,6 +8,7 @@ use dom::bindings::codegen::Bindings::HTMLTableCellElementBinding::HTMLTableCell use dom::bindings::codegen::Bindings::NodeBinding::NodeMethods; use dom::bindings::inheritance::Castable; use dom::bindings::js::LayoutJS; +use dom::bindings::str::DOMString; use dom::document::Document; use dom::element::{Element, RawLayoutElementHelpers}; use dom::htmlelement::HTMLElement; @@ -15,7 +16,7 @@ use dom::htmltablerowelement::HTMLTableRowElement; use dom::node::Node; use dom::virtualmethods::VirtualMethods; use string_cache::Atom; -use util::str::{DOMString, LengthOrPercentageOrAuto}; +use util::str::LengthOrPercentageOrAuto; const DEFAULT_COLSPAN: u32 = 1; @@ -120,9 +121,9 @@ impl VirtualMethods for HTMLTableCellElement { fn parse_plain_attribute(&self, local_name: &Atom, value: DOMString) -> AttrValue { match *local_name { - atom!("colspan") => AttrValue::from_u32(value, DEFAULT_COLSPAN), - atom!("bgcolor") => AttrValue::from_legacy_color(value), - atom!("width") => AttrValue::from_nonzero_dimension(value), + atom!("colspan") => AttrValue::from_u32(value.into(), DEFAULT_COLSPAN), + atom!("bgcolor") => AttrValue::from_legacy_color(value.into()), + atom!("width") => AttrValue::from_nonzero_dimension(value.into()), _ => self.super_type().unwrap().parse_plain_attribute(local_name, value), } } diff --git a/components/script/dom/htmltablecolelement.rs b/components/script/dom/htmltablecolelement.rs index 53825357066..c995a2f8048 100644 --- a/components/script/dom/htmltablecolelement.rs +++ b/components/script/dom/htmltablecolelement.rs @@ -4,11 +4,11 @@ use dom::bindings::codegen::Bindings::HTMLTableColElementBinding; use dom::bindings::js::Root; +use dom::bindings::str::DOMString; use dom::document::Document; use dom::htmlelement::HTMLElement; use dom::node::Node; use string_cache::Atom; -use util::str::DOMString; #[dom_struct] pub struct HTMLTableColElement { diff --git a/components/script/dom/htmltabledatacellelement.rs b/components/script/dom/htmltabledatacellelement.rs index c7081466932..4d35fe699e7 100644 --- a/components/script/dom/htmltabledatacellelement.rs +++ b/components/script/dom/htmltabledatacellelement.rs @@ -4,11 +4,11 @@ use dom::bindings::codegen::Bindings::HTMLTableDataCellElementBinding; use dom::bindings::js::Root; +use dom::bindings::str::DOMString; use dom::document::Document; use dom::htmltablecellelement::HTMLTableCellElement; use dom::node::Node; use string_cache::Atom; -use util::str::DOMString; #[dom_struct] pub struct HTMLTableDataCellElement { diff --git a/components/script/dom/htmltableelement.rs b/components/script/dom/htmltableelement.rs index 8ab213f6225..15961b3d514 100644 --- a/components/script/dom/htmltableelement.rs +++ b/components/script/dom/htmltableelement.rs @@ -11,6 +11,7 @@ use dom::bindings::codegen::Bindings::NodeBinding::NodeMethods; use dom::bindings::error::{Error, ErrorResult, Fallible}; use dom::bindings::inheritance::Castable; use dom::bindings::js::{JS, LayoutJS, MutNullableHeap, Root, RootedReference}; +use dom::bindings::str::DOMString; use dom::document::Document; use dom::element::{AttributeMutation, Element, RawLayoutElementHelpers}; use dom::htmlcollection::{CollectionFilter, HTMLCollection}; @@ -24,7 +25,7 @@ use dom::virtualmethods::VirtualMethods; use std::cell::Cell; use string_cache::Atom; use style::attr::parse_unsigned_integer; -use util::str::{DOMString, LengthOrPercentageOrAuto}; +use util::str::LengthOrPercentageOrAuto; #[dom_struct] pub struct HTMLTableElement { @@ -419,9 +420,9 @@ impl VirtualMethods for HTMLTableElement { fn parse_plain_attribute(&self, local_name: &Atom, value: DOMString) -> AttrValue { match *local_name { - atom!("border") => AttrValue::from_u32(value, 1), - atom!("width") => AttrValue::from_nonzero_dimension(value), - atom!("bgcolor") => AttrValue::from_legacy_color(value), + atom!("border") => AttrValue::from_u32(value.into(), 1), + atom!("width") => AttrValue::from_nonzero_dimension(value.into()), + atom!("bgcolor") => AttrValue::from_legacy_color(value.into()), _ => self.super_type().unwrap().parse_plain_attribute(local_name, value), } } diff --git a/components/script/dom/htmltableheadercellelement.rs b/components/script/dom/htmltableheadercellelement.rs index dd14d75530c..17ecc472d25 100644 --- a/components/script/dom/htmltableheadercellelement.rs +++ b/components/script/dom/htmltableheadercellelement.rs @@ -4,11 +4,11 @@ use dom::bindings::codegen::Bindings::HTMLTableHeaderCellElementBinding; use dom::bindings::js::Root; +use dom::bindings::str::DOMString; use dom::document::Document; use dom::htmltablecellelement::HTMLTableCellElement; use dom::node::Node; use string_cache::Atom; -use util::str::DOMString; #[dom_struct] pub struct HTMLTableHeaderCellElement { diff --git a/components/script/dom/htmltablerowelement.rs b/components/script/dom/htmltablerowelement.rs index 2969102984d..06669b74c18 100644 --- a/components/script/dom/htmltablerowelement.rs +++ b/components/script/dom/htmltablerowelement.rs @@ -11,6 +11,7 @@ use dom::bindings::codegen::Bindings::NodeBinding::NodeMethods; use dom::bindings::error::{ErrorResult, Fallible}; use dom::bindings::inheritance::Castable; use dom::bindings::js::{JS, LayoutJS, MutNullableHeap, Root, RootedReference}; +use dom::bindings::str::DOMString; use dom::document::Document; use dom::element::{Element, RawLayoutElementHelpers}; use dom::htmlcollection::{CollectionFilter, HTMLCollection}; @@ -22,7 +23,6 @@ use dom::htmltablesectionelement::HTMLTableSectionElement; use dom::node::{Node, window_from_node}; use dom::virtualmethods::VirtualMethods; use string_cache::Atom; -use util::str::DOMString; #[derive(JSTraceable)] @@ -160,7 +160,7 @@ impl VirtualMethods for HTMLTableRowElement { fn parse_plain_attribute(&self, local_name: &Atom, value: DOMString) -> AttrValue { match *local_name { - atom!("bgcolor") => AttrValue::from_legacy_color(value), + atom!("bgcolor") => AttrValue::from_legacy_color(value.into()), _ => self.super_type().unwrap().parse_plain_attribute(local_name, value), } } diff --git a/components/script/dom/htmltablesectionelement.rs b/components/script/dom/htmltablesectionelement.rs index fc737aed9ea..bc907c16324 100644 --- a/components/script/dom/htmltablesectionelement.rs +++ b/components/script/dom/htmltablesectionelement.rs @@ -9,6 +9,7 @@ use dom::bindings::codegen::Bindings::NodeBinding::NodeMethods; use dom::bindings::error::{ErrorResult, Fallible}; use dom::bindings::inheritance::Castable; use dom::bindings::js::{LayoutJS, Root, RootedReference}; +use dom::bindings::str::DOMString; use dom::document::Document; use dom::element::{Element, RawLayoutElementHelpers}; use dom::htmlcollection::{CollectionFilter, HTMLCollection}; @@ -17,7 +18,6 @@ use dom::htmltablerowelement::HTMLTableRowElement; use dom::node::{Node, window_from_node}; use dom::virtualmethods::VirtualMethods; use string_cache::Atom; -use util::str::DOMString; #[dom_struct] pub struct HTMLTableSectionElement { @@ -97,7 +97,7 @@ impl VirtualMethods for HTMLTableSectionElement { fn parse_plain_attribute(&self, local_name: &Atom, value: DOMString) -> AttrValue { match *local_name { - atom!("bgcolor") => AttrValue::from_legacy_color(value), + atom!("bgcolor") => AttrValue::from_legacy_color(value.into()), _ => self.super_type().unwrap().parse_plain_attribute(local_name, value), } } diff --git a/components/script/dom/htmltemplateelement.rs b/components/script/dom/htmltemplateelement.rs index 411a46b4b90..0459a772273 100644 --- a/components/script/dom/htmltemplateelement.rs +++ b/components/script/dom/htmltemplateelement.rs @@ -8,13 +8,13 @@ use dom::bindings::codegen::Bindings::HTMLTemplateElementBinding::HTMLTemplateEl use dom::bindings::codegen::Bindings::NodeBinding::NodeMethods; use dom::bindings::inheritance::Castable; use dom::bindings::js::{JS, MutNullableHeap, Root}; +use dom::bindings::str::DOMString; use dom::document::Document; use dom::documentfragment::DocumentFragment; use dom::htmlelement::HTMLElement; use dom::node::{CloneChildrenFlag, Node, document_from_node}; use dom::virtualmethods::VirtualMethods; use string_cache::Atom; -use util::str::DOMString; #[dom_struct] pub struct HTMLTemplateElement { diff --git a/components/script/dom/htmltextareaelement.rs b/components/script/dom/htmltextareaelement.rs index 516f421f436..19d108d95cc 100644 --- a/components/script/dom/htmltextareaelement.rs +++ b/components/script/dom/htmltextareaelement.rs @@ -10,6 +10,7 @@ use dom::bindings::codegen::Bindings::HTMLTextAreaElementBinding::HTMLTextAreaEl use dom::bindings::codegen::Bindings::NodeBinding::NodeMethods; use dom::bindings::inheritance::Castable; use dom::bindings::js::{LayoutJS, Root}; +use dom::bindings::str::DOMString; use dom::document::Document; use dom::element::RawLayoutElementHelpers; use dom::element::{AttributeMutation, Element}; @@ -30,7 +31,6 @@ use std::ops::Range; use string_cache::Atom; use style::element_state::*; use textinput::{KeyReaction, Lines, TextInput, SelectionDirection}; -use util::str::DOMString; #[dom_struct] pub struct HTMLTextAreaElement { @@ -332,8 +332,8 @@ impl VirtualMethods for HTMLTextAreaElement { fn parse_plain_attribute(&self, name: &Atom, value: DOMString) -> AttrValue { match *name { - atom!("cols") => AttrValue::from_limited_u32(value, DEFAULT_COLS), - atom!("rows") => AttrValue::from_limited_u32(value, DEFAULT_ROWS), + atom!("cols") => AttrValue::from_limited_u32(value.into(), DEFAULT_COLS), + atom!("rows") => AttrValue::from_limited_u32(value.into(), DEFAULT_ROWS), _ => self.super_type().unwrap().parse_plain_attribute(name, value), } } diff --git a/components/script/dom/htmltimeelement.rs b/components/script/dom/htmltimeelement.rs index cf261e691b7..7c55c2f7e61 100644 --- a/components/script/dom/htmltimeelement.rs +++ b/components/script/dom/htmltimeelement.rs @@ -4,11 +4,11 @@ use dom::bindings::codegen::Bindings::HTMLTimeElementBinding; use dom::bindings::js::Root; +use dom::bindings::str::DOMString; use dom::document::Document; use dom::htmlelement::HTMLElement; use dom::node::Node; use string_cache::Atom; -use util::str::DOMString; #[dom_struct] pub struct HTMLTimeElement { diff --git a/components/script/dom/htmltitleelement.rs b/components/script/dom/htmltitleelement.rs index 5a57a2f5cab..d475f37bc73 100644 --- a/components/script/dom/htmltitleelement.rs +++ b/components/script/dom/htmltitleelement.rs @@ -7,6 +7,7 @@ use dom::bindings::codegen::Bindings::HTMLTitleElementBinding::HTMLTitleElementM use dom::bindings::codegen::Bindings::NodeBinding::NodeMethods; use dom::bindings::inheritance::Castable; use dom::bindings::js::Root; +use dom::bindings::str::DOMString; use dom::characterdata::CharacterData; use dom::document::Document; use dom::htmlelement::HTMLElement; @@ -14,7 +15,6 @@ use dom::node::{ChildrenMutation, Node}; use dom::text::Text; use dom::virtualmethods::VirtualMethods; use string_cache::Atom; -use util::str::DOMString; #[dom_struct] pub struct HTMLTitleElement { diff --git a/components/script/dom/htmltrackelement.rs b/components/script/dom/htmltrackelement.rs index 62e210e9b4e..df071125b7b 100644 --- a/components/script/dom/htmltrackelement.rs +++ b/components/script/dom/htmltrackelement.rs @@ -4,11 +4,11 @@ use dom::bindings::codegen::Bindings::HTMLTrackElementBinding; use dom::bindings::js::Root; +use dom::bindings::str::DOMString; use dom::document::Document; use dom::htmlelement::HTMLElement; use dom::node::Node; use string_cache::Atom; -use util::str::DOMString; #[dom_struct] pub struct HTMLTrackElement { diff --git a/components/script/dom/htmlulistelement.rs b/components/script/dom/htmlulistelement.rs index baf4830def4..145d3e6770c 100644 --- a/components/script/dom/htmlulistelement.rs +++ b/components/script/dom/htmlulistelement.rs @@ -4,11 +4,11 @@ use dom::bindings::codegen::Bindings::HTMLUListElementBinding; use dom::bindings::js::Root; +use dom::bindings::str::DOMString; use dom::document::Document; use dom::htmlelement::HTMLElement; use dom::node::Node; use string_cache::Atom; -use util::str::DOMString; #[dom_struct] pub struct HTMLUListElement { diff --git a/components/script/dom/htmlunknownelement.rs b/components/script/dom/htmlunknownelement.rs index da2eab2fd88..5211b5c11e6 100644 --- a/components/script/dom/htmlunknownelement.rs +++ b/components/script/dom/htmlunknownelement.rs @@ -4,11 +4,11 @@ use dom::bindings::codegen::Bindings::HTMLUnknownElementBinding; use dom::bindings::js::Root; +use dom::bindings::str::DOMString; use dom::document::Document; use dom::htmlelement::HTMLElement; use dom::node::Node; use string_cache::Atom; -use util::str::DOMString; #[dom_struct] pub struct HTMLUnknownElement { diff --git a/components/script/dom/htmlvideoelement.rs b/components/script/dom/htmlvideoelement.rs index f2f2fb2b5db..6295227cf26 100644 --- a/components/script/dom/htmlvideoelement.rs +++ b/components/script/dom/htmlvideoelement.rs @@ -4,11 +4,11 @@ use dom::bindings::codegen::Bindings::HTMLVideoElementBinding; use dom::bindings::js::Root; +use dom::bindings::str::DOMString; use dom::document::Document; use dom::htmlmediaelement::HTMLMediaElement; use dom::node::Node; use string_cache::Atom; -use util::str::DOMString; #[dom_struct] pub struct HTMLVideoElement { diff --git a/components/script/dom/keyboardevent.rs b/components/script/dom/keyboardevent.rs index b70b0721a18..e5616257863 100644 --- a/components/script/dom/keyboardevent.rs +++ b/components/script/dom/keyboardevent.rs @@ -11,13 +11,13 @@ use dom::bindings::global::GlobalRef; use dom::bindings::inheritance::Castable; use dom::bindings::js::{Root, RootedReference}; use dom::bindings::reflector::reflect_dom_object; +use dom::bindings::str::DOMString; use dom::event::Event; use dom::uievent::UIEvent; use dom::window::Window; use msg::constellation_msg; use msg::constellation_msg::{Key, KeyModifiers}; use std::cell::Cell; -use util::str::DOMString; no_jsmanaged_fields!(Key); diff --git a/components/script/dom/location.rs b/components/script/dom/location.rs index 08e23b15920..9fff2a45837 100644 --- a/components/script/dom/location.rs +++ b/components/script/dom/location.rs @@ -7,11 +7,10 @@ use dom::bindings::codegen::Bindings::LocationBinding::LocationMethods; use dom::bindings::global::GlobalRef; use dom::bindings::js::{JS, Root}; use dom::bindings::reflector::{Reflector, reflect_dom_object}; -use dom::bindings::str::USVString; +use dom::bindings::str::{DOMString, USVString}; use dom::urlhelper::UrlHelper; use dom::window::Window; use url::Url; -use util::str::DOMString; #[dom_struct] pub struct Location { diff --git a/components/script/dom/macros.rs b/components/script/dom/macros.rs index 78238dc09fd..5983890e51a 100644 --- a/components/script/dom/macros.rs +++ b/components/script/dom/macros.rs @@ -159,7 +159,8 @@ macro_rules! make_url_setter( use dom::bindings::inheritance::Castable; use dom::element::Element; use dom::node::document_from_node; - let value = AttrValue::from_url(document_from_node(self).url(), value); + let value = AttrValue::from_url(document_from_node(self).url(), + value.into()); let element = self.upcast::<Element>(); element.set_attribute(&atom!($htmlname), value); } @@ -231,7 +232,7 @@ macro_rules! make_legacy_color_setter( use dom::bindings::inheritance::Castable; use dom::element::Element; let element = self.upcast::<Element>(); - let value = AttrValue::from_legacy_color(value); + let value = AttrValue::from_legacy_color(value.into()); element.set_attribute(&atom!($htmlname), value) } ); @@ -244,7 +245,7 @@ macro_rules! make_dimension_setter( use dom::bindings::inheritance::Castable; use dom::element::Element; let element = self.upcast::<Element>(); - let value = AttrValue::from_dimension(value); + let value = AttrValue::from_dimension(value.into()); element.set_attribute(&atom!($htmlname), value) } ); @@ -257,7 +258,7 @@ macro_rules! make_nonzero_dimension_setter( use dom::bindings::inheritance::Castable; use dom::element::Element; let element = self.upcast::<Element>(); - let value = AttrValue::from_nonzero_dimension(value); + let value = AttrValue::from_nonzero_dimension(value.into()); element.set_attribute(&atom!($htmlname), value) } ); diff --git a/components/script/dom/messageevent.rs b/components/script/dom/messageevent.rs index 3f4571ff528..8d638adae06 100644 --- a/components/script/dom/messageevent.rs +++ b/components/script/dom/messageevent.rs @@ -10,13 +10,13 @@ use dom::bindings::global::GlobalRef; use dom::bindings::inheritance::Castable; use dom::bindings::js::Root; use dom::bindings::reflector::reflect_dom_object; +use dom::bindings::str::DOMString; use dom::event::Event; use dom::eventtarget::EventTarget; use js::jsapi::{RootedValue, HandleValue, Heap, JSContext}; use js::jsval::JSVal; use std::default::Default; use string_cache::Atom; -use util::str::DOMString; #[dom_struct] pub struct MessageEvent { diff --git a/components/script/dom/mimetype.rs b/components/script/dom/mimetype.rs index f29b40faa5a..4757c4e7850 100644 --- a/components/script/dom/mimetype.rs +++ b/components/script/dom/mimetype.rs @@ -5,8 +5,8 @@ use dom::bindings::codegen::Bindings::MimeTypeBinding::MimeTypeMethods; use dom::bindings::js::Root; use dom::bindings::reflector::{Reflector}; +use dom::bindings::str::DOMString; use dom::plugin::Plugin; -use util::str::DOMString; #[dom_struct] pub struct MimeType { diff --git a/components/script/dom/mimetypearray.rs b/components/script/dom/mimetypearray.rs index ae11341e77b..96fc48c86d0 100644 --- a/components/script/dom/mimetypearray.rs +++ b/components/script/dom/mimetypearray.rs @@ -7,8 +7,8 @@ use dom::bindings::codegen::Bindings::MimeTypeArrayBinding::MimeTypeArrayMethods use dom::bindings::global::GlobalRef; use dom::bindings::js::Root; use dom::bindings::reflector::{Reflector, reflect_dom_object}; +use dom::bindings::str::DOMString; use dom::mimetype::MimeType; -use util::str::DOMString; #[dom_struct] pub struct MimeTypeArray { diff --git a/components/script/dom/mouseevent.rs b/components/script/dom/mouseevent.rs index 3acebff3f46..d6b5316f2d2 100644 --- a/components/script/dom/mouseevent.rs +++ b/components/script/dom/mouseevent.rs @@ -10,6 +10,7 @@ use dom::bindings::global::GlobalRef; use dom::bindings::inheritance::Castable; use dom::bindings::js::{JS, MutNullableHeap, Root, RootedReference}; use dom::bindings::reflector::reflect_dom_object; +use dom::bindings::str::DOMString; use dom::event::{Event, EventBubbles, EventCancelable}; use dom::eventtarget::EventTarget; use dom::uievent::UIEvent; @@ -17,7 +18,6 @@ use dom::window::Window; use std::cell::Cell; use std::default::Default; use util::prefs; -use util::str::DOMString; #[dom_struct] pub struct MouseEvent { diff --git a/components/script/dom/namednodemap.rs b/components/script/dom/namednodemap.rs index 50a2894b8ff..10b6b8982ae 100644 --- a/components/script/dom/namednodemap.rs +++ b/components/script/dom/namednodemap.rs @@ -10,12 +10,12 @@ use dom::bindings::error::{Error, Fallible}; use dom::bindings::global::GlobalRef; use dom::bindings::js::{JS, Root}; use dom::bindings::reflector::{Reflector, reflect_dom_object}; +use dom::bindings::str::DOMString; use dom::bindings::xmlname::namespace_from_domstring; use dom::element::Element; use dom::window::Window; use std::ascii::AsciiExt; use string_cache::Atom; -use util::str::DOMString; #[dom_struct] pub struct NamedNodeMap { diff --git a/components/script/dom/navigator.rs b/components/script/dom/navigator.rs index c1874905a54..8a17b2dbc17 100644 --- a/components/script/dom/navigator.rs +++ b/components/script/dom/navigator.rs @@ -7,12 +7,12 @@ use dom::bindings::codegen::Bindings::NavigatorBinding::NavigatorMethods; use dom::bindings::global::GlobalRef; use dom::bindings::js::{JS, MutNullableHeap, Root}; use dom::bindings::reflector::{Reflector, Reflectable, reflect_dom_object}; +use dom::bindings::str::DOMString; use dom::bluetooth::Bluetooth; use dom::mimetypearray::MimeTypeArray; use dom::navigatorinfo; use dom::pluginarray::PluginArray; use dom::window::Window; -use util::str::DOMString; #[dom_struct] pub struct Navigator { diff --git a/components/script/dom/navigatorinfo.rs b/components/script/dom/navigatorinfo.rs index f27e46ed91b..54200e7be20 100644 --- a/components/script/dom/navigatorinfo.rs +++ b/components/script/dom/navigatorinfo.rs @@ -2,8 +2,8 @@ * License, v. 2.0. If a copy of the MPL was not distributed with this * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ +use dom::bindings::str::DOMString; use util::opts; -use util::str::DOMString; pub fn Product() -> DOMString { DOMString::from("Gecko") diff --git a/components/script/dom/node.rs b/components/script/dom/node.rs index 20d387cee9a..711e0ba740c 100644 --- a/components/script/dom/node.rs +++ b/components/script/dom/node.rs @@ -28,6 +28,7 @@ use dom::bindings::js::Root; use dom::bindings::js::RootedReference; use dom::bindings::js::{JS, LayoutJS, MutNullableHeap}; use dom::bindings::reflector::{Reflectable, reflect_dom_object}; +use dom::bindings::str::DOMString; use dom::bindings::trace::RootedVec; use dom::bindings::xmlname::namespace_from_domstring; use dom::characterdata::{CharacterData, LayoutCharacterDataHelpers}; @@ -69,7 +70,6 @@ use std::iter::{self, FilterMap, Peekable}; use std::mem; use string_cache::{Atom, Namespace, QualName}; use style::selector_impl::ServoSelectorImpl; -use util::str::DOMString; use util::thread_state; use uuid::Uuid; diff --git a/components/script/dom/pagetransitionevent.rs b/components/script/dom/pagetransitionevent.rs index 2baa8d0693c..7c6b7b6f555 100644 --- a/components/script/dom/pagetransitionevent.rs +++ b/components/script/dom/pagetransitionevent.rs @@ -10,10 +10,10 @@ use dom::bindings::global::GlobalRef; use dom::bindings::inheritance::Castable; use dom::bindings::js::Root; use dom::bindings::reflector::reflect_dom_object; +use dom::bindings::str::DOMString; use dom::event::Event; use std::cell::Cell; use string_cache::Atom; -use util::str::DOMString; // https://html.spec.whatwg.org/multipage/#pagetransitionevent #[dom_struct] diff --git a/components/script/dom/plugin.rs b/components/script/dom/plugin.rs index 0836bc32f0f..8fcd3f3a2e6 100644 --- a/components/script/dom/plugin.rs +++ b/components/script/dom/plugin.rs @@ -5,8 +5,8 @@ use dom::bindings::codegen::Bindings::PluginBinding::PluginMethods; use dom::bindings::js::Root; use dom::bindings::reflector::{Reflector}; +use dom::bindings::str::DOMString; use dom::mimetype::MimeType; -use util::str::DOMString; #[dom_struct] pub struct Plugin { diff --git a/components/script/dom/pluginarray.rs b/components/script/dom/pluginarray.rs index d94131b1a9f..5cbf589b7e7 100644 --- a/components/script/dom/pluginarray.rs +++ b/components/script/dom/pluginarray.rs @@ -7,8 +7,8 @@ use dom::bindings::codegen::Bindings::PluginArrayBinding::PluginArrayMethods; use dom::bindings::global::GlobalRef; use dom::bindings::js::Root; use dom::bindings::reflector::{Reflector, reflect_dom_object}; +use dom::bindings::str::DOMString; use dom::plugin::Plugin; -use util::str::DOMString; #[dom_struct] pub struct PluginArray { diff --git a/components/script/dom/popstateevent.rs b/components/script/dom/popstateevent.rs index dd55e06b5a2..a9487f48299 100644 --- a/components/script/dom/popstateevent.rs +++ b/components/script/dom/popstateevent.rs @@ -10,11 +10,11 @@ use dom::bindings::global::GlobalRef; use dom::bindings::inheritance::Castable; use dom::bindings::js::{MutHeapJSVal, Root}; use dom::bindings::reflector::reflect_dom_object; +use dom::bindings::str::DOMString; use dom::event::Event; use js::jsapi::{HandleValue, JSContext}; use js::jsval::JSVal; use string_cache::Atom; -use util::str::DOMString; // https://html.spec.whatwg.org/multipage/#the-popstateevent-interface #[dom_struct] diff --git a/components/script/dom/processinginstruction.rs b/components/script/dom/processinginstruction.rs index 6f26a4ca0fa..68efbd67cd2 100644 --- a/components/script/dom/processinginstruction.rs +++ b/components/script/dom/processinginstruction.rs @@ -5,10 +5,10 @@ use dom::bindings::codegen::Bindings::ProcessingInstructionBinding; use dom::bindings::codegen::Bindings::ProcessingInstructionBinding::ProcessingInstructionMethods; use dom::bindings::js::Root; +use dom::bindings::str::DOMString; use dom::characterdata::CharacterData; use dom::document::Document; use dom::node::Node; -use util::str::DOMString; /// An HTML processing instruction node. #[dom_struct] diff --git a/components/script/dom/progressevent.rs b/components/script/dom/progressevent.rs index 4a3d3f3da7d..f0d2b5c400a 100644 --- a/components/script/dom/progressevent.rs +++ b/components/script/dom/progressevent.rs @@ -10,10 +10,10 @@ use dom::bindings::global::GlobalRef; use dom::bindings::inheritance::Castable; use dom::bindings::js::Root; use dom::bindings::reflector::reflect_dom_object; +use dom::bindings::str::DOMString; use dom::event::{Event, EventBubbles, EventCancelable}; use dom::window::Window; use string_cache::Atom; -use util::str::DOMString; #[dom_struct] pub struct ProgressEvent { diff --git a/components/script/dom/radionodelist.rs b/components/script/dom/radionodelist.rs index ae6ac13919d..e0c35179269 100644 --- a/components/script/dom/radionodelist.rs +++ b/components/script/dom/radionodelist.rs @@ -10,11 +10,11 @@ use dom::bindings::global::GlobalRef; use dom::bindings::inheritance::Castable; use dom::bindings::js::{JS, Root}; use dom::bindings::reflector::reflect_dom_object; +use dom::bindings::str::DOMString; use dom::htmlinputelement::HTMLInputElement; use dom::node::Node; use dom::nodelist::{NodeList, NodeListType}; use dom::window::Window; -use util::str::DOMString; #[dom_struct] pub struct RadioNodeList { diff --git a/components/script/dom/range.rs b/components/script/dom/range.rs index 7d94d95f0e4..93e2d4606bc 100644 --- a/components/script/dom/range.rs +++ b/components/script/dom/range.rs @@ -16,6 +16,7 @@ use dom::bindings::inheritance::Castable; use dom::bindings::inheritance::{CharacterDataTypeId, NodeTypeId}; use dom::bindings::js::{JS, MutHeap, Root, RootedReference}; use dom::bindings::reflector::{Reflector, reflect_dom_object}; +use dom::bindings::str::DOMString; use dom::bindings::trace::{JSTraceable, RootedVec}; use dom::bindings::weakref::{WeakRef, WeakRefVec}; use dom::characterdata::CharacterData; @@ -27,7 +28,6 @@ use heapsize::HeapSizeOf; use js::jsapi::JSTracer; use std::cell::{Cell, UnsafeCell}; use std::cmp::{Ord, Ordering, PartialEq, PartialOrd}; -use util::str::DOMString; #[dom_struct] pub struct Range { diff --git a/components/script/dom/storage.rs b/components/script/dom/storage.rs index a71881fccd6..fa6b3f91a42 100644 --- a/components/script/dom/storage.rs +++ b/components/script/dom/storage.rs @@ -10,6 +10,7 @@ use dom::bindings::inheritance::Castable; use dom::bindings::js::Root; use dom::bindings::refcounted::Trusted; use dom::bindings::reflector::{Reflectable, Reflector, reflect_dom_object}; +use dom::bindings::str::DOMString; use dom::browsingcontext::IterableContext; use dom::event::{Event, EventBubbles, EventCancelable}; use dom::storageevent::StorageEvent; @@ -20,7 +21,6 @@ use net_traits::storage_thread::{StorageThreadMsg, StorageType}; use script_thread::{MainThreadRunnable, ScriptThread}; use task_source::dom_manipulation::DOMManipulationTask; use url::Url; -use util::str::DOMString; #[dom_struct] pub struct Storage { diff --git a/components/script/dom/storageevent.rs b/components/script/dom/storageevent.rs index e3317a34b49..71e3dc26350 100644 --- a/components/script/dom/storageevent.rs +++ b/components/script/dom/storageevent.rs @@ -10,11 +10,11 @@ use dom::bindings::global::GlobalRef; use dom::bindings::inheritance::Castable; use dom::bindings::js::{JS, MutNullableHeap, Root, RootedReference}; use dom::bindings::reflector::reflect_dom_object; +use dom::bindings::str::DOMString; use dom::event::{Event, EventBubbles, EventCancelable}; use dom::storage::Storage; use dom::window::Window; use string_cache::Atom; -use util::str::DOMString; #[dom_struct] pub struct StorageEvent { diff --git a/components/script/dom/stylesheet.rs b/components/script/dom/stylesheet.rs index 490acd997ed..0801d82fcad 100644 --- a/components/script/dom/stylesheet.rs +++ b/components/script/dom/stylesheet.rs @@ -7,8 +7,8 @@ use dom::bindings::codegen::Bindings::StyleSheetBinding::StyleSheetMethods; use dom::bindings::global::GlobalRef; use dom::bindings::js::{Root}; use dom::bindings::reflector::{Reflector, reflect_dom_object}; +use dom::bindings::str::DOMString; use dom::window::Window; -use util::str::DOMString; #[dom_struct] diff --git a/components/script/dom/testbinding.rs b/components/script/dom/testbinding.rs index 6dfe66a9d75..faf53596ecc 100644 --- a/components/script/dom/testbinding.rs +++ b/components/script/dom/testbinding.rs @@ -20,7 +20,7 @@ use dom::bindings::global::GlobalRef; use dom::bindings::js::Root; use dom::bindings::num::Finite; use dom::bindings::reflector::{Reflectable, Reflector, reflect_dom_object}; -use dom::bindings::str::{ByteString, USVString}; +use dom::bindings::str::{ByteString, DOMString, USVString}; use dom::bindings::weakref::MutableWeakRef; use dom::blob::{Blob, DataSlice}; use dom::url::URL; @@ -30,7 +30,6 @@ use std::borrow::ToOwned; use std::ptr; use std::rc::Rc; use util::prefs::{get_pref}; -use util::str::DOMString; #[dom_struct] pub struct TestBinding { diff --git a/components/script/dom/testbindingproxy.rs b/components/script/dom/testbindingproxy.rs index 120d125de72..3308639305c 100644 --- a/components/script/dom/testbindingproxy.rs +++ b/components/script/dom/testbindingproxy.rs @@ -6,7 +6,7 @@ use dom::bindings::codegen::Bindings::TestBindingProxyBinding::TestBindingProxyMethods; use dom::bindings::reflector::Reflector; -use util::str::DOMString; +use dom::bindings::str::DOMString; #[dom_struct] diff --git a/components/script/dom/text.rs b/components/script/dom/text.rs index 1c834f563cf..3d3100bcf4d 100644 --- a/components/script/dom/text.rs +++ b/components/script/dom/text.rs @@ -12,10 +12,10 @@ use dom::bindings::global::GlobalRef; use dom::bindings::inheritance::Castable; use dom::bindings::js::Root; use dom::bindings::js::{RootedReference}; +use dom::bindings::str::DOMString; use dom::characterdata::CharacterData; use dom::document::Document; use dom::node::Node; -use util::str::DOMString; /// An HTML text node. #[dom_struct] diff --git a/components/script/dom/textdecoder.rs b/components/script/dom/textdecoder.rs index 50bf1c4c9ea..fae78342a73 100644 --- a/components/script/dom/textdecoder.rs +++ b/components/script/dom/textdecoder.rs @@ -9,12 +9,11 @@ use dom::bindings::error::{Error, Fallible}; use dom::bindings::global::GlobalRef; use dom::bindings::js::Root; use dom::bindings::reflector::{Reflector, reflect_dom_object}; -use dom::bindings::str::USVString; +use dom::bindings::str::{DOMString, USVString}; use encoding::label::encoding_from_whatwg_label; use encoding::types::{DecoderTrap, EncodingRef}; use js::jsapi::{JSContext, JSObject}; use std::borrow::ToOwned; -use util::str::DOMString; #[dom_struct] pub struct TextDecoder { diff --git a/components/script/dom/textencoder.rs b/components/script/dom/textencoder.rs index a932dfcfe4e..84100e723ba 100644 --- a/components/script/dom/textencoder.rs +++ b/components/script/dom/textencoder.rs @@ -8,7 +8,7 @@ use dom::bindings::error::{Error, Fallible}; use dom::bindings::global::GlobalRef; use dom::bindings::js::Root; use dom::bindings::reflector::{Reflector, reflect_dom_object}; -use dom::bindings::str::USVString; +use dom::bindings::str::{DOMString, USVString}; use encoding::EncoderTrap; use encoding::label::encoding_from_whatwg_label; use encoding::types::EncodingRef; @@ -17,7 +17,6 @@ use js::jsapi::{JS_GetUint8ArrayData, JS_NewUint8Array}; use libc::uint8_t; use std::borrow::ToOwned; use std::ptr; -use util::str::DOMString; #[dom_struct] pub struct TextEncoder { diff --git a/components/script/dom/touchevent.rs b/components/script/dom/touchevent.rs index 86f53968fe3..4f0822fddaf 100644 --- a/components/script/dom/touchevent.rs +++ b/components/script/dom/touchevent.rs @@ -9,12 +9,12 @@ use dom::bindings::global::GlobalRef; use dom::bindings::inheritance::Castable; use dom::bindings::js::{JS, MutHeap, Root}; use dom::bindings::reflector::reflect_dom_object; +use dom::bindings::str::DOMString; use dom::event::{EventBubbles, EventCancelable}; use dom::touchlist::TouchList; use dom::uievent::UIEvent; use dom::window::Window; use std::cell::Cell; -use util::str::DOMString; #[dom_struct] pub struct TouchEvent { diff --git a/components/script/dom/uievent.rs b/components/script/dom/uievent.rs index e962c10c8aa..5b0a6f3243e 100644 --- a/components/script/dom/uievent.rs +++ b/components/script/dom/uievent.rs @@ -11,12 +11,12 @@ use dom::bindings::inheritance::Castable; use dom::bindings::js::Root; use dom::bindings::js::{JS, MutNullableHeap, RootedReference}; use dom::bindings::reflector::reflect_dom_object; +use dom::bindings::str::DOMString; use dom::event::{Event, EventBubbles, EventCancelable}; use dom::window::Window; use std::cell::Cell; use std::default::Default; use string_cache::Atom; -use util::str::DOMString; // https://dvcs.w3.org/hg/dom3events/raw-file/tip/html/DOM3-Events.html#interface-UIEvent #[dom_struct] diff --git a/components/script/dom/url.rs b/components/script/dom/url.rs index f2ba7082e0f..1553e8b5b0a 100644 --- a/components/script/dom/url.rs +++ b/components/script/dom/url.rs @@ -8,13 +8,12 @@ use dom::bindings::error::{Error, ErrorResult, Fallible}; use dom::bindings::global::GlobalRef; use dom::bindings::js::{JS, MutNullableHeap, Root}; use dom::bindings::reflector::{Reflectable, Reflector, reflect_dom_object}; -use dom::bindings::str::USVString; +use dom::bindings::str::{DOMString, USVString}; use dom::urlhelper::UrlHelper; use dom::urlsearchparams::URLSearchParams; use std::borrow::ToOwned; use std::default::Default; use url::{Host, Url}; -use util::str::DOMString; // https://url.spec.whatwg.org/#url #[dom_struct] diff --git a/components/script/dom/urlsearchparams.rs b/components/script/dom/urlsearchparams.rs index 800cd10db88..44eadea0932 100644 --- a/components/script/dom/urlsearchparams.rs +++ b/components/script/dom/urlsearchparams.rs @@ -10,12 +10,11 @@ use dom::bindings::error::Fallible; use dom::bindings::global::GlobalRef; use dom::bindings::js::Root; use dom::bindings::reflector::{Reflector, reflect_dom_object}; -use dom::bindings::str::USVString; +use dom::bindings::str::{DOMString, USVString}; use dom::bindings::weakref::MutableWeakRef; use dom::url::URL; use encoding::types::EncodingRef; use url::form_urlencoded; -use util::str::DOMString; // https://url.spec.whatwg.org/#interface-urlsearchparams #[dom_struct] diff --git a/components/script/dom/userscripts.rs b/components/script/dom/userscripts.rs index 91f521c6922..dd9acb93a92 100644 --- a/components/script/dom/userscripts.rs +++ b/components/script/dom/userscripts.rs @@ -6,6 +6,7 @@ use dom::bindings::codegen::Bindings::DocumentBinding::DocumentMethods; use dom::bindings::codegen::Bindings::NodeBinding::NodeMethods; use dom::bindings::inheritance::Castable; use dom::bindings::js::{RootedReference}; +use dom::bindings::str::DOMString; use dom::htmlheadelement::HTMLHeadElement; use dom::node::Node; use std::borrow::ToOwned; @@ -13,7 +14,6 @@ use std::fs::read_dir; use std::path::PathBuf; use util::opts; use util::resource_files::resources_dir_path; -use util::str::DOMString; pub fn load_script(head: &HTMLHeadElement) { diff --git a/components/script/dom/virtualmethods.rs b/components/script/dom/virtualmethods.rs index cb62947c207..d8259307274 100644 --- a/components/script/dom/virtualmethods.rs +++ b/components/script/dom/virtualmethods.rs @@ -7,6 +7,7 @@ use dom::bindings::inheritance::Castable; use dom::bindings::inheritance::ElementTypeId; use dom::bindings::inheritance::HTMLElementTypeId; use dom::bindings::inheritance::NodeTypeId; +use dom::bindings::str::DOMString; use dom::document::Document; use dom::element::{AttributeMutation, Element}; use dom::event::Event; @@ -46,7 +47,6 @@ use dom::htmltextareaelement::HTMLTextAreaElement; use dom::htmltitleelement::HTMLTitleElement; use dom::node::{ChildrenMutation, CloneChildrenFlag, Node, UnbindContext}; use string_cache::Atom; -use util::str::DOMString; /// Trait to allow DOM nodes to opt-in to overriding (or adding to) common @@ -70,7 +70,7 @@ pub trait VirtualMethods { fn parse_plain_attribute(&self, name: &Atom, value: DOMString) -> AttrValue { match self.super_type() { Some(ref s) => s.parse_plain_attribute(name, value), - _ => AttrValue::String(value), + _ => AttrValue::String(value.into()), } } diff --git a/components/script/dom/webglactiveinfo.rs b/components/script/dom/webglactiveinfo.rs index 60597aee160..00f70b682b7 100644 --- a/components/script/dom/webglactiveinfo.rs +++ b/components/script/dom/webglactiveinfo.rs @@ -8,7 +8,7 @@ use dom::bindings::codegen::Bindings::WebGLActiveInfoBinding::WebGLActiveInfoMet use dom::bindings::global::GlobalRef; use dom::bindings::js::Root; use dom::bindings::reflector::{Reflector, reflect_dom_object}; -use util::str::DOMString; +use dom::bindings::str::DOMString; #[dom_struct] pub struct WebGLActiveInfo { diff --git a/components/script/dom/webglcontextevent.rs b/components/script/dom/webglcontextevent.rs index fa785146499..9c73a9f6b65 100644 --- a/components/script/dom/webglcontextevent.rs +++ b/components/script/dom/webglcontextevent.rs @@ -11,9 +11,9 @@ use dom::bindings::global::GlobalRef; use dom::bindings::inheritance::Castable; use dom::bindings::js::Root; use dom::bindings::reflector::reflect_dom_object; +use dom::bindings::str::DOMString; use dom::event::{Event, EventBubbles, EventCancelable}; use string_cache::Atom; -use util::str::DOMString; #[dom_struct] pub struct WebGLContextEvent { diff --git a/components/script/dom/webglprogram.rs b/components/script/dom/webglprogram.rs index 504a13ec339..0c6e9bda11c 100644 --- a/components/script/dom/webglprogram.rs +++ b/components/script/dom/webglprogram.rs @@ -9,13 +9,13 @@ use dom::bindings::codegen::Bindings::WebGLRenderingContextBinding::WebGLRenderi use dom::bindings::global::GlobalRef; use dom::bindings::js::{JS, MutNullableHeap, Root}; use dom::bindings::reflector::{Reflectable, reflect_dom_object}; +use dom::bindings::str::DOMString; use dom::webglactiveinfo::WebGLActiveInfo; use dom::webglobject::WebGLObject; use dom::webglrenderingcontext::MAX_UNIFORM_AND_ATTRIBUTE_LEN; use dom::webglshader::WebGLShader; use ipc_channel::ipc::{self, IpcSender}; use std::cell::Cell; -use util::str::DOMString; use webrender_traits::{WebGLCommand, WebGLError, WebGLParameter, WebGLResult}; #[dom_struct] diff --git a/components/script/dom/webglrenderingcontext.rs b/components/script/dom/webglrenderingcontext.rs index 29669c9ff15..3e57bae5a6e 100644 --- a/components/script/dom/webglrenderingcontext.rs +++ b/components/script/dom/webglrenderingcontext.rs @@ -13,6 +13,7 @@ use dom::bindings::global::GlobalRef; use dom::bindings::inheritance::Castable; use dom::bindings::js::{JS, LayoutJS, MutNullableHeap, Root}; use dom::bindings::reflector::{Reflectable, Reflector, reflect_dom_object}; +use dom::bindings::str::DOMString; use dom::event::{Event, EventBubbles, EventCancelable}; use dom::htmlcanvaselement::HTMLCanvasElement; use dom::htmlcanvaselement::utils as canvas_utils; @@ -35,7 +36,6 @@ use net_traits::image_cache_thread::ImageResponse; use offscreen_gl_context::{GLContextAttributes, GLLimits}; use script_traits::ScriptMsg as ConstellationMsg; use std::cell::Cell; -use util::str::DOMString; use util::vec::byte_swap; use webrender_traits::WebGLError::*; use webrender_traits::{WebGLCommand, WebGLError, WebGLFramebufferBindingRequest, WebGLParameter}; diff --git a/components/script/dom/webglshader.rs b/components/script/dom/webglshader.rs index c166fbcf46d..949cb4550ae 100644 --- a/components/script/dom/webglshader.rs +++ b/components/script/dom/webglshader.rs @@ -10,11 +10,11 @@ use dom::bindings::codegen::Bindings::WebGLShaderBinding; use dom::bindings::global::GlobalRef; use dom::bindings::js::Root; use dom::bindings::reflector::reflect_dom_object; +use dom::bindings::str::DOMString; use dom::webglobject::WebGLObject; use ipc_channel::ipc::{self, IpcSender}; use std::cell::Cell; use std::sync::{ONCE_INIT, Once}; -use util::str::DOMString; use webrender_traits::{WebGLCommand, WebGLParameter, WebGLResult}; #[derive(Clone, Copy, PartialEq, Debug, JSTraceable, HeapSizeOf)] diff --git a/components/script/dom/websocket.rs b/components/script/dom/websocket.rs index 796fb6a6d5f..39894cbd585 100644 --- a/components/script/dom/websocket.rs +++ b/components/script/dom/websocket.rs @@ -15,7 +15,7 @@ use dom::bindings::inheritance::Castable; use dom::bindings::js::Root; use dom::bindings::refcounted::Trusted; use dom::bindings::reflector::{Reflectable, reflect_dom_object}; -use dom::bindings::str::{USVString, is_token}; +use dom::bindings::str::{DOMString, USVString, is_token}; use dom::blob::{Blob, DataSlice}; use dom::closeevent::CloseEvent; use dom::event::{Event, EventBubbles, EventCancelable}; @@ -42,7 +42,6 @@ use std::cell::Cell; use std::ptr; use std::sync::Arc; use std::thread; -use util::str::DOMString; use websocket::client::request::Url; use websocket::header::{Headers, WebSocketProtocol}; use websocket::ws::util::url::parse_url; diff --git a/components/script/dom/window.rs b/components/script/dom/window.rs index 8fdb7049715..e5af0ebbf26 100644 --- a/components/script/dom/window.rs +++ b/components/script/dom/window.rs @@ -19,6 +19,7 @@ use dom::bindings::inheritance::Castable; use dom::bindings::js::{JS, MutNullableHeap, Root}; use dom::bindings::num::Finite; use dom::bindings::reflector::Reflectable; +use dom::bindings::str::DOMString; use dom::bindings::utils::{GlobalStaticData, WindowProxyHandler}; use dom::browsingcontext::BrowsingContext; use dom::console::Console; @@ -92,7 +93,7 @@ use timers::{IsInterval, OneshotTimerCallback, OneshotTimerHandle, OneshotTimers use tinyfiledialogs::{self, MessageBoxIcon}; use url::Url; use util::geometry::{self, MAX_RECT}; -use util::str::{DOMString, HTML_SPACE_CHARACTERS}; +use util::str::HTML_SPACE_CHARACTERS; use util::{breakpoint, opts}; use webdriver_handlers::jsval_to_webdriver; diff --git a/components/script/dom/worker.rs b/components/script/dom/worker.rs index f7900a0d0f0..e969328a210 100644 --- a/components/script/dom/worker.rs +++ b/components/script/dom/worker.rs @@ -12,6 +12,7 @@ use dom::bindings::inheritance::Castable; use dom::bindings::js::Root; use dom::bindings::refcounted::Trusted; use dom::bindings::reflector::{Reflectable, reflect_dom_object}; +use dom::bindings::str::DOMString; use dom::bindings::structuredclone::StructuredCloneData; use dom::dedicatedworkerglobalscope::{DedicatedWorkerGlobalScope, WorkerScriptMsg}; use dom::errorevent::ErrorEvent; @@ -31,7 +32,6 @@ use std::sync::atomic::{AtomicBool, Ordering}; use std::sync::mpsc::{Sender, channel}; use std::sync::{Arc, Mutex}; use url::Url; -use util::str::DOMString; pub type TrustedWorkerAddress = Trusted<Worker>; diff --git a/components/script/dom/workerglobalscope.rs b/components/script/dom/workerglobalscope.rs index a8b5d9a48c3..6161b11ccc8 100644 --- a/components/script/dom/workerglobalscope.rs +++ b/components/script/dom/workerglobalscope.rs @@ -10,6 +10,7 @@ use dom::bindings::global::GlobalRef; use dom::bindings::inheritance::Castable; use dom::bindings::js::{JS, MutNullableHeap, Root}; use dom::bindings::reflector::Reflectable; +use dom::bindings::str::DOMString; use dom::console::Console; use dom::crypto::Crypto; use dom::dedicatedworkerglobalscope::DedicatedWorkerGlobalScope; @@ -36,7 +37,6 @@ use std::sync::atomic::{AtomicBool, Ordering}; use std::sync::mpsc::Receiver; use timers::{IsInterval, OneshotTimerCallback, OneshotTimerHandle, OneshotTimers, TimerCallback}; use url::Url; -use util::str::DOMString; #[derive(Copy, Clone, PartialEq)] pub enum WorkerGlobalScopeTypeId { diff --git a/components/script/dom/workerlocation.rs b/components/script/dom/workerlocation.rs index e79b7ff0fc9..a037f7737a8 100644 --- a/components/script/dom/workerlocation.rs +++ b/components/script/dom/workerlocation.rs @@ -7,11 +7,10 @@ use dom::bindings::codegen::Bindings::WorkerLocationBinding::WorkerLocationMetho use dom::bindings::global::GlobalRef; use dom::bindings::js::Root; use dom::bindings::reflector::{Reflector, reflect_dom_object}; -use dom::bindings::str::USVString; +use dom::bindings::str::{DOMString, USVString}; use dom::urlhelper::UrlHelper; use dom::workerglobalscope::WorkerGlobalScope; use url::Url; -use util::str::DOMString; // https://html.spec.whatwg.org/multipage/#worker-locations #[dom_struct] diff --git a/components/script/dom/workernavigator.rs b/components/script/dom/workernavigator.rs index 07bf443d33c..1114a91a169 100644 --- a/components/script/dom/workernavigator.rs +++ b/components/script/dom/workernavigator.rs @@ -7,9 +7,9 @@ use dom::bindings::codegen::Bindings::WorkerNavigatorBinding::WorkerNavigatorMet use dom::bindings::global::GlobalRef; use dom::bindings::js::Root; use dom::bindings::reflector::{Reflector, reflect_dom_object}; +use dom::bindings::str::DOMString; use dom::navigatorinfo; use dom::workerglobalscope::WorkerGlobalScope; -use util::str::DOMString; // https://html.spec.whatwg.org/multipage/#workernavigator #[dom_struct] diff --git a/components/script/dom/xmldocument.rs b/components/script/dom/xmldocument.rs index 165ca6c6f5f..b291c912089 100644 --- a/components/script/dom/xmldocument.rs +++ b/components/script/dom/xmldocument.rs @@ -9,6 +9,7 @@ use dom::bindings::global::GlobalRef; use dom::bindings::inheritance::Castable; use dom::bindings::js::Root; use dom::bindings::reflector::reflect_dom_object; +use dom::bindings::str::DOMString; use dom::browsingcontext::BrowsingContext; use dom::document::{Document, DocumentSource, IsHTMLDocument}; use dom::location::Location; @@ -16,7 +17,6 @@ use dom::node::Node; use dom::window::Window; use js::jsapi::{JSContext, JSObject}; use url::Url; -use util::str::DOMString; // https://dom.spec.whatwg.org/#xmldocument #[dom_struct] diff --git a/components/script/dom/xmlhttprequest.rs b/components/script/dom/xmlhttprequest.rs index 567db277b8f..27fe4a783f0 100644 --- a/components/script/dom/xmlhttprequest.rs +++ b/components/script/dom/xmlhttprequest.rs @@ -21,7 +21,7 @@ use dom::bindings::js::{JS, MutHeapJSVal, MutNullableHeap}; use dom::bindings::js::{Root, RootedReference}; use dom::bindings::refcounted::Trusted; use dom::bindings::reflector::{Reflectable, reflect_dom_object}; -use dom::bindings::str::{ByteString, USVString, is_token}; +use dom::bindings::str::{ByteString, DOMString, USVString, is_token}; use dom::blob::{Blob, DataSlice}; use dom::document::DocumentSource; use dom::document::{Document, IsHTMLDocument}; @@ -63,7 +63,6 @@ use time; use timers::{OneshotTimerCallback, OneshotTimerHandle}; use url::{Url, Position}; use util::prefs; -use util::str::DOMString; #[derive(JSTraceable, PartialEq, Copy, Clone, HeapSizeOf)] enum XMLHttpRequestState { |