package Enigmatic::ReflectorBox;
use DAKKAR::p 'class';
use Enigmatic::Reflector;
use MooseX::Types::Structured qw(Map);
use MooseX::Types::Moose qw(Str);
use Moose::Util::TypeConstraints;
has reflectorset => (
is => 'ro',
isa => Map[Str,class_type('Enigmatic::Reflector')],
lazy_build => 1,
traits => ['Hash'],
handles => {
get => 'get',
},
);
sub _build_reflectorset {
my %reflectors = (
B => 'YRUHQSLDPXNGOKMIEBFZCWVJAT',
C => 'FVPJIAOYEDRZXWGCTKUQSBNMHL',
'B_thin' => 'ENKQAUYWJICOPBLMDXZVFTHRGS',
'C_thin' => 'RDOBJNTKVEHMLFCWZAXGYIPSUQ',
);
$_ = Enigmatic::Reflector->new($_) for values %reflectors;
return \%reflectors;
}