| blib/lib/Pipe/Tube/Uniq.pm | |||
|---|---|---|---|
| Criterion | Covered | Total | % |
| statement | 19 | 19 | 100.0 |
| branch | 2 | 2 | 100.0 |
| condition | 3 | 3 | 100.0 |
| subroutine | 5 | 5 | 100.0 |
| pod | 0 | 1 | 0.0 |
| total | 29 | 30 | 96.6 |
| line | stmt | bran | cond | sub | pod | time | code |
|---|---|---|---|---|---|---|---|
| 1 | package Pipe::Tube::Uniq; | ||||||
| 2 | 1 | 1 | 7 | use strict; | |||
| 1 | 2 | ||||||
| 1 | 46 | ||||||
| 3 | 1 | 1 | 5 | use warnings; | |||
| 1 | 2 | ||||||
| 1 | 31 | ||||||
| 4 | 1 | 1 | 23 | use 5.006; | |||
| 1 | 4 | ||||||
| 1 | 54 | ||||||
| 5 | |||||||
| 6 | 1 | 1 | 5 | use base 'Pipe::Tube'; | |||
| 1 | 2 | ||||||
| 1 | 230 | ||||||
| 7 | |||||||
| 8 | our $VERSION = '0.05'; | ||||||
| 9 | |||||||
| 10 | sub run { | ||||||
| 11 | 28 | 28 | 0 | 57 | my ($self, @input) = @_; | ||
| 12 | |||||||
| 13 | 28 | 34 | my @result; | ||||
| 14 | 28 | 44 | foreach my $v (@input) { | ||||
| 15 | 24 | 100 | 100 | 129 | next if defined $self->{last} and $self->{last} eq $v; | ||
| 16 | |||||||
| 17 | 10 | 33 | $self->{last} = $v; | ||||
| 18 | 10 | 24 | push @result, $v; | ||||
| 19 | } | ||||||
| 20 | 28 | 84 | return @result; | ||||
| 21 | } | ||||||
| 22 | |||||||
| 23 | |||||||
| 24 | 1; | ||||||
| 25 | |||||||
| 26 | |||||||
| 27 |