From 796a8dc618e3bfd2a7523e84f95c9ef59693932a Mon Sep 17 00:00:00 2001 From: Simon Sapin Date: Wed, 11 Oct 2017 20:22:06 +0200 Subject: [PATCH] Remove usage of unstable feature try_from --- components/script/dom/element.rs | 14 +++++++------- components/script/lib.rs | 1 - 2 files changed, 7 insertions(+), 8 deletions(-) diff --git a/components/script/dom/element.rs b/components/script/dom/element.rs index c16eb7f0699..a87e561f912 100644 --- a/components/script/dom/element.rs +++ b/components/script/dom/element.rs @@ -98,11 +98,11 @@ use servo_atoms::Atom; use std::ascii::AsciiExt; use std::borrow::Cow; use std::cell::{Cell, Ref}; -use std::convert::TryFrom; use std::default::Default; use std::fmt; use std::mem; use std::rc::Rc; +use std::str::FromStr; use style::CaseSensitivityExt; use style::applicable_declarations::ApplicableDeclarationBlock; use style::attr::{AttrValue, LengthOrPercentageOrAuto}; @@ -213,10 +213,10 @@ pub enum AdjacentPosition { BeforeEnd, } -impl<'a> TryFrom<&'a str> for AdjacentPosition { - type Error = Error; +impl FromStr for AdjacentPosition { + type Err = Error; - fn try_from(position: &'a str) -> Result { + fn from_str(position: &str) -> Result { match_ignore_ascii_case! { &*position, "beforebegin" => Ok(AdjacentPosition::BeforeBegin), "afterbegin" => Ok(AdjacentPosition::AfterBegin), @@ -2243,7 +2243,7 @@ impl ElementMethods for Element { // https://dom.spec.whatwg.org/#dom-element-insertadjacentelement fn InsertAdjacentElement(&self, where_: DOMString, element: &Element) -> Fallible>> { - let where_ = AdjacentPosition::try_from(&*where_)?; + let where_ = where_.parse::()?; let inserted_node = self.insert_adjacent(where_, element.upcast())?; Ok(inserted_node.map(|node| DomRoot::downcast(node).unwrap())) } @@ -2255,7 +2255,7 @@ impl ElementMethods for Element { let text = Text::new(data, &document_from_node(self)); // Step 2. - let where_ = AdjacentPosition::try_from(&*where_)?; + let where_ = where_.parse::()?; self.insert_adjacent(where_, text.upcast()).map(|_| ()) } @@ -2263,7 +2263,7 @@ impl ElementMethods for Element { fn InsertAdjacentHTML(&self, position: DOMString, text: DOMString) -> ErrorResult { // Step 1. - let position = AdjacentPosition::try_from(&*position)?; + let position = position.parse::()?; let context = match position { AdjacentPosition::BeforeBegin | AdjacentPosition::AfterEnd => { diff --git a/components/script/lib.rs b/components/script/lib.rs index b8b507c9d79..cf7f26db094 100644 --- a/components/script/lib.rs +++ b/components/script/lib.rs @@ -13,7 +13,6 @@ #![feature(on_unimplemented)] #![feature(plugin)] #![feature(proc_macro)] -#![feature(try_from)] #![deny(unsafe_code)] #![allow(non_snake_case)]