summaryrefslogtreecommitdiff
path: root/Data-MultiValued/lib/Data/MultiValued/TagsAndRanges.pm
diff options
context:
space:
mode:
authorGianni Ceccarelli <dakkar@thenautilus.net>2011-11-10 12:53:24 +0000
committerGianni Ceccarelli <dakkar@thenautilus.net>2011-11-10 15:04:15 +0000
commit9b3887ba26cfa17344567d9a1b89921892d02dda (patch)
treeb9e8d8c63cfb158cb5a9e6c9f71946e35ffdbcee /Data-MultiValued/lib/Data/MultiValued/TagsAndRanges.pm
parentugly serialization helper role (diff)
downloaddata-multivalued-9b3887ba26cfa17344567d9a1b89921892d02dda.tar.gz
data-multivalued-9b3887ba26cfa17344567d9a1b89921892d02dda.tar.bz2
data-multivalued-9b3887ba26cfa17344567d9a1b89921892d02dda.zip
'clear' almost completely implemneted
Diffstat (limited to 'Data-MultiValued/lib/Data/MultiValued/TagsAndRanges.pm')
-rw-r--r--Data-MultiValued/lib/Data/MultiValued/TagsAndRanges.pm15
1 files changed, 13 insertions, 2 deletions
diff --git a/Data-MultiValued/lib/Data/MultiValued/TagsAndRanges.pm b/Data-MultiValued/lib/Data/MultiValued/TagsAndRanges.pm
index 82e3271..6208435 100644
--- a/Data-MultiValued/lib/Data/MultiValued/TagsAndRanges.pm
+++ b/Data-MultiValued/lib/Data/MultiValued/TagsAndRanges.pm
@@ -60,9 +60,20 @@ sub get {
}
sub clear {
- my ($self) = @_;
+ my ($self,%args) = validated_hash(
+ \@_,
+ from => { isa => Num|Undef, optional => 1, },
+ to => { isa => Num|Undef, optional => 1, },
+ tag => { isa => Str, optional => 1, },
+ );
- $self->_clear_storage;
+ if (exists $args{from} || exists $args{to}) {
+ $self->_storage->get(\%args)
+ ->clear(\%args);
+ }
+ else {
+ $self->_storage->clear(\%args);
+ }
}
1;