Added apply_if to only run an apply block if a predicate is true
[catagits/HTML-Zoom.git] / lib / HTML / Zoom.pm
index dba35d3..80ee8e9 100644 (file)
@@ -78,6 +78,17 @@ sub apply {
   $self->$code;
 }
 
+sub apply_if {
+  my ($self, $predicate, $code) = @_;
+  if($predicate) {
+    local $_ = $self;
+    $self->$code;
+  }
+  else {
+    $self;
+  }
+}
+
 sub to_html {
   my $self = shift;
   $self->zconfig->producer->html_from_stream($self->to_stream);