add Dwarn_only and DwarnS_only
[p5sagit/Data-Dumper-Concise.git] / lib / Data / Dumper / Concise / Sugar.pm
index addd8e2..9a514b2 100644 (file)
@@ -9,10 +9,24 @@ BEGIN { @ISA = qw(Exporter) }
 
 @EXPORT = qw(Dwarn DwarnS);
 
+@EXPORT_OK = qw(Dwarn_only DwarnS_only);
+
 sub Dwarn { warn Data::Dumper::Concise::Dumper @_; @_ }
 
 sub DwarnS ($) { warn Data::Dumper::Concise::Dumper $_[0]; $_[0] }
 
+sub Dwarn_only (&@) {
+  my $only = shift;
+  warn Data::Dumper::Concise::Dumper $only->(@_);
+  @_
+}
+
+sub DwarnS_only (&$) {
+  my $only = shift;
+  warn Data::Dumper::Concise::Dumper do { local $_ = $_[0]; $only->($_[0]) };
+  $_[0]
+}
+
 =head1 NAME
 
 Data::Dumper::Concise::Sugar - return Dwarn @return_value