[librsvg: 35/45] DrawingCtx::get_node_of_type(): Take a &Fragment, not Option<&Fragment>
- From: Federico Mena Quintero <federico src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [librsvg: 35/45] DrawingCtx::get_node_of_type(): Take a &Fragment, not Option<&Fragment>
- Date: Tue, 1 Oct 2019 15:09:53 +0000 (UTC)
commit 0419915f91f1847cf0c39af5d99adec3c862f2ef
Author: Federico Mena Quintero <federico gnome org>
Date: Mon Sep 30 13:57:38 2019 -0500
DrawingCtx::get_node_of_type(): Take a &Fragment, not Option<&Fragment>
There's no need for that "convenience" anymore.
rsvg_internals/src/drawing_ctx.rs | 18 +++++++-----------
rsvg_internals/src/marker.rs | 2 +-
rsvg_internals/src/pattern.rs | 2 +-
3 files changed, 9 insertions(+), 13 deletions(-)
---
diff --git a/rsvg_internals/src/drawing_ctx.rs b/rsvg_internals/src/drawing_ctx.rs
index 04692a3e..da4c1645 100644
--- a/rsvg_internals/src/drawing_ctx.rs
+++ b/rsvg_internals/src/drawing_ctx.rs
@@ -341,8 +341,7 @@ impl DrawingCtx {
) -> (Option<RsvgNode>, Option<RsvgNode>) {
clip_uri
.and_then(|fragment| {
- self.acquired_nodes
- .get_node_of_type(Some(fragment), NodeType::ClipPath)
+ self.acquired_nodes.get_node_of_type(fragment, NodeType::ClipPath)
})
.and_then(|acquired| {
let clip_node = acquired.get().clone();
@@ -470,10 +469,10 @@ impl DrawingCtx {
// Mask
- if let Some(mask) = mask {
+ if let Some(fragment) = mask {
if let Some(acquired) = dc
.acquired_nodes
- .get_node_of_type(Some(mask), NodeType::Mask)
+ .get_node_of_type(fragment, NodeType::Mask)
{
let mask_node = acquired.get();
@@ -485,7 +484,7 @@ impl DrawingCtx {
.map(|_: ()| bbox)
});
} else {
- rsvg_log!("element {} references nonexistent mask \"{}\"", node, mask);
+ rsvg_log!("element {} references nonexistent mask \"{}\"", node, fragment);
}
} else {
// No mask, so composite the temporary surface
@@ -552,7 +551,7 @@ impl DrawingCtx {
) -> Result<cairo::ImageSurface, RenderingError> {
match self
.acquired_nodes
- .get_node_of_type(Some(filter_uri), NodeType::Filter)
+ .get_node_of_type(filter_uri, NodeType::Filter)
{
Some(acquired) => {
let filter_node = acquired.get();
@@ -1114,17 +1113,14 @@ impl AcquiredNodes {
// Note that if you acquire a node, you have to release it before trying to
// acquire it again. If you acquire a node "#foo" and don't release it before
// trying to acquire "foo" again, you will obtain a None the second time.
- //
- // For convenience, this function will return None if url is None.
// FIXME: return a Result<AcquiredNode, RenderingError::InvalidReference>
pub fn get_node_of_type(
&self,
- fragment: Option<&Fragment>,
+ fragment: &Fragment,
node_type: NodeType,
) -> Option<AcquiredNode> {
- fragment
- .and_then(move |fragment| self.get_node(fragment))
+ self.get_node(fragment)
.and_then(|acquired| {
if acquired.get().borrow().get_type() == node_type {
Some(acquired)
diff --git a/rsvg_internals/src/marker.rs b/rsvg_internals/src/marker.rs
index 127829d4..3418234b 100644
--- a/rsvg_internals/src/marker.rs
+++ b/rsvg_internals/src/marker.rs
@@ -590,7 +590,7 @@ fn emit_marker_by_name(
) -> Result<BoundingBox, RenderingError> {
if let Some(acquired) = draw_ctx
.acquired_nodes()
- .get_node_of_type(Some(name), NodeType::Marker)
+ .get_node_of_type(name, NodeType::Marker)
{
let node = acquired.get();
diff --git a/rsvg_internals/src/pattern.rs b/rsvg_internals/src/pattern.rs
index eeb43ebc..98f622be 100644
--- a/rsvg_internals/src/pattern.rs
+++ b/rsvg_internals/src/pattern.rs
@@ -154,7 +154,7 @@ impl PaintSource for NodePattern {
if let Some(ref fallback) = result.fallback {
if let Some(acquired) = draw_ctx
.acquired_nodes()
- .get_node_of_type(Some(fallback), NodeType::Pattern)
+ .get_node_of_type(fallback, NodeType::Pattern)
{
let a_node = acquired.get();
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]