Boxer

 view release on metacpan or  search on metacpan

lib/Boxer/World/Reclass.pm  view on Meta::CPAN

package Boxer::World::Reclass;

=encoding UTF-8

=head1 NAME

Boxer::World::Reclass - software as serialized by reclass

=cut

use v5.20;
use utf8;
use Role::Commons -all;
use feature 'signatures';
use namespace::autoclean 0.16;
use autodie;

use YAML::XS;
use List::MoreUtils qw(uniq);
use Hash::Merge qw(merge);
use Try::Tiny;

use Moo;
use MooX::StrictConstructor;
extends qw(Boxer::World);

use Types::Standard qw( ArrayRef InstanceOf Maybe );
use Boxer::Types qw( ClassDir NodeDir Suite );

use Boxer::Part::Reclass;
use Boxer::World::Flat;

use strictures 2;
no warnings "experimental::signatures";

=head1 VERSION

Version v1.4.3

=cut

our $VERSION = "v1.4.3";

=head1 DESCRIPTION

Outside the box is a world of software.

B<Boxer::World::Reclass> is a class describing a collection of software
available for installation into (or as) an operating system.

=head1 SEE ALSO

L<Boxer>.

=cut

has suite => (
	is       => 'ro',
	isa      => Suite,
	required => 1,
);

has classdir => (
	is       => 'lazy',
	isa      => ClassDir,
	coerce   => 1,
	required => 1,
);

sub _build_classdir ($self)
{
	if ( $self->data ) {
		return $self->data->child('classes');
	}
	return;
}

has nodedir => (
	is       => 'lazy',
	isa      => NodeDir,
	coerce   => 1,



( run in 1.013 second using v1.01-cache-2.11-cpan-39bf76dae61 )