use strict;
use warnings;
package Test::Deep::RegexpMatches;
use Test::Deep::Array;
use base 'Test::Deep::Array';
use Scalar::Util qw( blessed );
sub init
{
my $self = shift;
my $val = shift;
$val = Test::Deep::array($val) unless
blessed($val) and UNIVERSAL::isa($val, "Test::Deep::Cmp");
$self->{val} = $val;
$self->{regex} = shift;
}
sub descend
{
my $self = shift;
my $got = shift;
return Test::Deep::descend($got, $self->{val});
}
sub render_stack
{
my $self = shift;
my $stack = shift;
$stack = "[$stack =~ $self->{regex}]";
return $stack;
}
sub reset_arrow
{
return 1;
}
1;