Pod-Elemental-Transformer-Splint

 view release on metacpan or  search on metacpan

lib/Pod/Elemental/Transformer/Splint.pm  view on Meta::CPAN

use 5.10.1;
use strict;
use warnings;

package Pod::Elemental::Transformer::Splint;

# ABSTRACT: Documentation from class metadata
our $AUTHORITY = 'cpan:CSSON'; # AUTHORITY
our $VERSION = '0.1202';

use Moose;
use namespace::autoclean;
use Path::Tiny;
use Safe::Isa;
use Try::Tiny;
use List::UtilsBy 'extract_by';
use Types::Standard qw/Str ArrayRef HashRef/;
use Module::Load qw/load/;
use Ref::Util qw/is_arrayref/;
use lib 'lib';

with qw/Pod::Elemental::Transformer Pod::Elemental::Transformer::Splint::Util/;

has command_name => (
    is => 'rw',
    isa => Str,
    default => ':splint',
);
has default_type_library => (
    is => 'rw',
    isa => Str,
    default => 'Types::Standard',
    predicate => 'has_default_type_library',
);
has type_libraries => (
    is => 'rw',
    isa => HashRef,
    traits => ['Hash'],
    handles => {
        get_library_for_type => 'get',
    },
);
has classmeta => (
    is => 'rw',
    predicate => 'has_classmeta',
);
has attribute_renderer => (
    is => 'rw',
    isa => ArrayRef[HashRef[Str]],
    traits => [qw/Array/],
    default => sub {
        [
            { for => 'HTML', class => 'HtmlDefault' },
            { for => 'markdown', class => 'HtmlDefault' },
        ],
    },
    handles => {
        all_attribute_renderers => 'elements',
    }
);
has method_renderer => (
    is => 'rw',
    isa => ArrayRef[HashRef[Str]],
    traits => [qw/Array/],
    default => sub {
        [
            { for => 'HTML', class => 'HtmlDefault' },
            { for => 'markdown', class => 'HtmlDefault' },
        ],
    },
    handles => {
        all_method_renderers => 'elements',
    }
);

around BUILDARGS => sub {
    my $orig = shift;
    my $class = shift;
    my $args = shift;



( run in 2.025 seconds using v1.01-cache-2.11-cpan-39bf76dae61 )