[librsvg: 33/43] Convert ColorChannel to CssParseError



commit 46e6efb61ef578dae3699dc737e419777e59b310
Author: Federico Mena Quintero <federico gnome org>
Date:   Fri Dec 20 18:33:07 2019 -0600

    Convert ColorChannel to CssParseError

 rsvg_internals/src/filters/displacement_map.rs | 17 ++++++++---------
 1 file changed, 8 insertions(+), 9 deletions(-)
---
diff --git a/rsvg_internals/src/filters/displacement_map.rs b/rsvg_internals/src/filters/displacement_map.rs
index 977fdeea..a2ee071a 100644
--- a/rsvg_internals/src/filters/displacement_map.rs
+++ b/rsvg_internals/src/filters/displacement_map.rs
@@ -5,7 +5,7 @@ use markup5ever::{expanded_name, local_name, namespace_url, ns};
 use crate::drawing_ctx::DrawingCtx;
 use crate::error::*;
 use crate::node::{NodeResult, NodeTrait, RsvgNode};
-use crate::parsers::{Parse, ParseValue, ParseValueToParseError};
+use crate::parsers::{ParseToParseError, ParseValueToParseError};
 use crate::property_bag::PropertyBag;
 use crate::surface_utils::{iterators::Pixels, shared_surface::SharedImageSurface};
 
@@ -53,14 +53,14 @@ impl NodeTrait for FeDisplacementMap {
         for (attr, value) in pbag.iter() {
             match attr.expanded() {
                 expanded_name!(svg "in2") => self.in2 = Some(attr.parse_to_parse_error(value)?),
-                expanded_name!(svg "scale") => self.scale = attr.parse(value)?,
+                expanded_name!(svg "scale") => self.scale = attr.parse_to_parse_error(value)?,
 
                 expanded_name!(svg "xChannelSelector") => {
-                    self.x_channel_selector = attr.parse(value)?
+                    self.x_channel_selector = attr.parse_to_parse_error(value)?
                 }
 
                 expanded_name!(svg "yChannelSelector") => {
-                    self.y_channel_selector = attr.parse(value)?
+                    self.y_channel_selector = attr.parse_to_parse_error(value)?
                 }
                 _ => (),
             }
@@ -146,15 +146,14 @@ impl FilterEffect for FeDisplacementMap {
     }
 }
 
-impl Parse for ColorChannel {
-    fn parse<'i>(parser: &mut Parser<'i, '_>) -> Result<ColorChannel, ValueErrorKind> {
-        parse_identifiers!(
+impl ParseToParseError for ColorChannel {
+    fn parse_to_parse_error<'i>(parser: &mut Parser<'i, '_>) -> Result<Self, CssParseError<'i>> {
+        Ok(parse_identifiers!(
             parser,
             "R" => ColorChannel::R,
             "G" => ColorChannel::G,
             "B" => ColorChannel::B,
             "A" => ColorChannel::A,
-        )
-        .map_err(|_| ValueErrorKind::parse_error("parse error"))
+        )?)
     }
 }


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]