aboutsummaryrefslogtreecommitdiffstats
path: root/components/script/dom
diff options
context:
space:
mode:
Diffstat (limited to 'components/script/dom')
-rw-r--r--components/script/dom/bindings/codegen/CodegenRust.py8
-rw-r--r--components/script/dom/domtokenlist.rs5
-rw-r--r--components/script/dom/htmlanchorelement.rs5
-rw-r--r--components/script/dom/location.rs7
-rw-r--r--components/script/dom/url.rs5
-rw-r--r--components/script/dom/webidls/DOMTokenList.webidl3
-rw-r--r--components/script/dom/webidls/HTMLHyperlinkElementUtils.webidl9
-rw-r--r--components/script/dom/webidls/Location.webidl7
-rw-r--r--components/script/dom/webidls/MediaList.webidl3
-rw-r--r--components/script/dom/webidls/URL.webidl7
-rw-r--r--components/script/dom/webidls/WorkerLocation.webidl7
-rw-r--r--components/script/dom/workerlocation.rs7
12 files changed, 11 insertions, 62 deletions
diff --git a/components/script/dom/bindings/codegen/CodegenRust.py b/components/script/dom/bindings/codegen/CodegenRust.py
index bb02119c406..86ee03d7ddd 100644
--- a/components/script/dom/bindings/codegen/CodegenRust.py
+++ b/components/script/dom/bindings/codegen/CodegenRust.py
@@ -3667,6 +3667,8 @@ class CGSpecializedMethod(CGAbstractExternMethod):
@staticmethod
def makeNativeName(descriptor, method):
+ if method.underlyingAttr:
+ return CGSpecializedGetter.makeNativeName(descriptor, method.underlyingAttr)
name = method.identifier.name
nativeName = descriptor.binaryNameFor(name)
if nativeName == name:
@@ -5762,7 +5764,7 @@ class CGInterfaceTrait(CGThing):
for m in descriptor.interface.members:
if (m.isMethod() and not m.isStatic() and
not m.isMaplikeOrSetlikeOrIterableMethod() and
- (not m.isIdentifierLess() or m.isStringifier()) and
+ (not m.isIdentifierLess() or (m.isStringifier() and not m.underlyingAttr)) and
not m.isDefaultToJSON()):
name = CGSpecializedMethod.makeNativeName(descriptor, m)
infallible = 'infallible' in descriptor.getExtendedAttributes(m)
@@ -6172,10 +6174,6 @@ class CGDescriptor(CGThing):
cgThings.append(CGSpecializedMethod(descriptor, m))
cgThings.append(CGMemberJITInfo(descriptor, m))
elif m.isAttr():
- if m.stringifier:
- raise TypeError("Stringifier attributes not supported yet. "
- "See https://github.com/servo/servo/issues/7590\n"
- "%s" % m.location)
if m.getExtendedAttribute("Unscopable"):
assert not m.isStatic()
unscopableNames.append(m.identifier.name)
diff --git a/components/script/dom/domtokenlist.rs b/components/script/dom/domtokenlist.rs
index cb45edf186b..d6c5ac1537f 100644
--- a/components/script/dom/domtokenlist.rs
+++ b/components/script/dom/domtokenlist.rs
@@ -177,11 +177,6 @@ impl DOMTokenListMethods for DOMTokenList {
Ok(())
}
- // https://dom.spec.whatwg.org/#concept-dtl-serialize
- fn Stringifier(&self) -> DOMString {
- self.element.get_string_attribute(&self.local_name)
- }
-
// check-tidy: no specs after this line
fn IndexedGetter(&self, index: u32) -> Option<DOMString> {
self.Item(index)
diff --git a/components/script/dom/htmlanchorelement.rs b/components/script/dom/htmlanchorelement.rs
index de082a9807e..f90764d8a0a 100644
--- a/components/script/dom/htmlanchorelement.rs
+++ b/components/script/dom/htmlanchorelement.rs
@@ -526,11 +526,6 @@ impl HTMLAnchorElementMethods for HTMLAnchorElement {
// Step 5.
self.update_href(url);
}
-
- // https://html.spec.whatwg.org/multipage/#dom-hyperlink-href
- fn Stringifier(&self) -> DOMString {
- DOMString::from(self.Href().0)
- }
}
impl Activatable for HTMLAnchorElement {
diff --git a/components/script/dom/location.rs b/components/script/dom/location.rs
index 65d39a15755..df7f475b2d8 100644
--- a/components/script/dom/location.rs
+++ b/components/script/dom/location.rs
@@ -9,7 +9,7 @@ use crate::dom::bindings::error::{Error, ErrorResult, Fallible};
use crate::dom::bindings::inheritance::Castable;
use crate::dom::bindings::reflector::{reflect_dom_object, Reflector};
use crate::dom::bindings::root::{Dom, DomRoot};
-use crate::dom::bindings::str::{DOMString, USVString};
+use crate::dom::bindings::str::USVString;
use crate::dom::globalscope::GlobalScope;
use crate::dom::urlhelper::UrlHelper;
use crate::dom::window::Window;
@@ -246,11 +246,6 @@ impl LocationMethods for Location {
Ok(())
}
- // https://html.spec.whatwg.org/multipage/#dom-location-href
- fn Stringifier(&self) -> Fallible<DOMString> {
- Ok(DOMString::from(self.GetHref()?.0))
- }
-
// https://html.spec.whatwg.org/multipage/#dom-location-search
fn GetSearch(&self) -> Fallible<USVString> {
self.check_same_origin_domain()?;
diff --git a/components/script/dom/url.rs b/components/script/dom/url.rs
index b31333b7ac2..9952739243b 100644
--- a/components/script/dom/url.rs
+++ b/components/script/dom/url.rs
@@ -270,11 +270,6 @@ impl URLMethods for URL {
.or_init(|| URLSearchParams::new(&self.global(), Some(self)))
}
- // https://url.spec.whatwg.org/#dom-url-href
- fn Stringifier(&self) -> DOMString {
- DOMString::from(self.Href().0)
- }
-
// https://url.spec.whatwg.org/#dom-url-username
fn Username(&self) -> USVString {
UrlHelper::Username(&self.url.borrow())
diff --git a/components/script/dom/webidls/DOMTokenList.webidl b/components/script/dom/webidls/DOMTokenList.webidl
index c4b1ff776bc..ed4a541f730 100644
--- a/components/script/dom/webidls/DOMTokenList.webidl
+++ b/components/script/dom/webidls/DOMTokenList.webidl
@@ -22,8 +22,7 @@ interface DOMTokenList {
void replace(DOMString token, DOMString newToken);
[CEReactions, Pure]
- attribute DOMString value;
+ stringifier attribute DOMString value;
- stringifier;
iterable<DOMString?>;
};
diff --git a/components/script/dom/webidls/HTMLHyperlinkElementUtils.webidl b/components/script/dom/webidls/HTMLHyperlinkElementUtils.webidl
index 7c4750a58f6..2f0f0ae68c0 100644
--- a/components/script/dom/webidls/HTMLHyperlinkElementUtils.webidl
+++ b/components/script/dom/webidls/HTMLHyperlinkElementUtils.webidl
@@ -4,10 +4,8 @@
// https://html.spec.whatwg.org/multipage/#htmlhyperlinkelementutils
interface mixin HTMLHyperlinkElementUtils {
- // [CEReactions]
- // stringifier attribute USVString href;
[CEReactions]
- attribute USVString href;
+ stringifier attribute USVString href;
readonly attribute USVString origin;
[CEReactions]
attribute USVString protocol;
@@ -27,9 +25,4 @@ interface mixin HTMLHyperlinkElementUtils {
attribute USVString search;
[CEReactions]
attribute USVString hash;
-
- // Adding a separate stringifier method until
- // https://github.com/servo/servo/issues/7590 adds attribute stringifier
- // support.
- stringifier;
};
diff --git a/components/script/dom/webidls/Location.webidl b/components/script/dom/webidls/Location.webidl
index 8dd69f2c36a..4120fc2731d 100644
--- a/components/script/dom/webidls/Location.webidl
+++ b/components/script/dom/webidls/Location.webidl
@@ -4,7 +4,7 @@
// https://html.spec.whatwg.org/multipage/#location
[Exposed=Window, Unforgeable] interface Location {
- /*stringifier*/ [Throws] attribute USVString href;
+ [Throws] stringifier attribute USVString href;
[Throws] readonly attribute USVString origin;
[Throws] attribute USVString protocol;
[Throws] attribute USVString host;
@@ -19,9 +19,4 @@
[Throws] void reload();
//[SameObject] readonly attribute USVString[] ancestorOrigins;
-
- // This is only doing as well as gecko right now.
- // https://github.com/servo/servo/issues/7590 is on file for
- // adding attribute stringifier support.
- [Throws] stringifier;
};
diff --git a/components/script/dom/webidls/MediaList.webidl b/components/script/dom/webidls/MediaList.webidl
index 0851fb5c220..b2ba10f0d7a 100644
--- a/components/script/dom/webidls/MediaList.webidl
+++ b/components/script/dom/webidls/MediaList.webidl
@@ -3,10 +3,9 @@
* file, You can obtain one at https://mozilla.org/MPL/2.0/. */
// https://drafts.csswg.org/cssom/#the-medialist-interface
-// [LegacyArrayClass]
[Exposed=Window]
interface MediaList {
- /* stringifier */ attribute [TreatNullAs=EmptyString] DOMString mediaText;
+ stringifier attribute [TreatNullAs=EmptyString] DOMString mediaText;
readonly attribute unsigned long length;
getter DOMString? item(unsigned long index);
void appendMedium(DOMString medium);
diff --git a/components/script/dom/webidls/URL.webidl b/components/script/dom/webidls/URL.webidl
index d51f675ec0a..47a1ef53129 100644
--- a/components/script/dom/webidls/URL.webidl
+++ b/components/script/dom/webidls/URL.webidl
@@ -8,7 +8,7 @@
interface URL {
[Throws] constructor(USVString url, optional USVString base);
[SetterThrows]
- /*stringifier*/ attribute USVString href;
+ stringifier attribute USVString href;
readonly attribute USVString origin;
attribute USVString protocol;
attribute USVString username;
@@ -27,9 +27,4 @@ interface URL {
static void revokeObjectURL(DOMString url);
USVString toJSON();
-
- // This is only doing as well as gecko right now.
- // https://github.com/servo/servo/issues/7590 is on file for
- // adding attribute stringifier support.
- stringifier;
};
diff --git a/components/script/dom/webidls/WorkerLocation.webidl b/components/script/dom/webidls/WorkerLocation.webidl
index faaf10932bc..8985da7e6e9 100644
--- a/components/script/dom/webidls/WorkerLocation.webidl
+++ b/components/script/dom/webidls/WorkerLocation.webidl
@@ -5,7 +5,7 @@
// https://html.spec.whatwg.org/multipage/#worker-locations
[Exposed=Worker]
interface WorkerLocation {
- /*stringifier*/ readonly attribute USVString href;
+ stringifier readonly attribute USVString href;
readonly attribute USVString origin;
readonly attribute USVString protocol;
readonly attribute USVString host;
@@ -14,9 +14,4 @@ interface WorkerLocation {
readonly attribute USVString pathname;
readonly attribute USVString search;
readonly attribute USVString hash;
-
- // This is only doing as well as gecko right now.
- // https://github.com/servo/servo/issues/7590 is on file for
- // adding attribute stringifier support.
- stringifier;
};
diff --git a/components/script/dom/workerlocation.rs b/components/script/dom/workerlocation.rs
index 483cb69c084..d96aea8011c 100644
--- a/components/script/dom/workerlocation.rs
+++ b/components/script/dom/workerlocation.rs
@@ -6,7 +6,7 @@ use crate::dom::bindings::codegen::Bindings::WorkerLocationBinding;
use crate::dom::bindings::codegen::Bindings::WorkerLocationBinding::WorkerLocationMethods;
use crate::dom::bindings::reflector::{reflect_dom_object, Reflector};
use crate::dom::bindings::root::DomRoot;
-use crate::dom::bindings::str::{DOMString, USVString};
+use crate::dom::bindings::str::USVString;
use crate::dom::urlhelper::UrlHelper;
use crate::dom::workerglobalscope::WorkerGlobalScope;
use dom_struct::dom_struct;
@@ -87,9 +87,4 @@ impl WorkerLocationMethods for WorkerLocation {
fn Search(&self) -> USVString {
UrlHelper::Search(&self.url)
}
-
- // https://html.spec.whatwg.org/multipage/#dom-workerlocation-href
- fn Stringifier(&self) -> DOMString {
- DOMString::from(self.Href().0)
- }
}