Acme-CPANModules-NonMooseStyleClassBuilder

 view release on metacpan or  search on metacpan

lib/Acme/CPANModules/NonMooseStyleClassBuilder.pm  view on Meta::CPAN

package Acme::CPANModules::NonMooseStyleClassBuilder;

use strict;

our $AUTHORITY = 'cpan:PERLANCAR'; # AUTHORITY
our $DATE = '2023-10-29'; # DATE
our $DIST = 'Acme-CPANModules-NonMooseStyleClassBuilder'; # DIST
our $VERSION = '0.002'; # VERSION

our $LIST = {
    summary => 'List of non-Moose-style class builders',
    description => <<'_',

This list catalogs class builders with interface that is different than the
Moose family.

See also a whole host of Class::Accessor::* modules.

_
    entries => [
        {module => 'Class::Meta::AccessorBuilder',
         summary=>'Part of the Class::Meta framework'},
        {module => 'Class::Struct'},
        {module => 'Class::Builder'},
        {module => 'Class::GenSource',
         summary=>'This is more like code generator, it generates Perl code source for the entire class definition, not just accessors'},
        {module => 'Object::Declare'},
        {module => 'Object::Tiny'},
        {module => 'Class::Tiny'},
        {module => 'Object::New',
         summary=>'Only provides a new() constructor method'},
        {module => 'Class::Accessor',
         summary => 'Also supports Moose-style "has"'},
        {module => 'Class::XSAccessor',
         summary=>'Fast version of Class::Accessor, used by Moo'},
        ],
};

1;
# ABSTRACT: List of non-Moose-style class builders

__END__

=pod

=encoding UTF-8

=head1 NAME

Acme::CPANModules::NonMooseStyleClassBuilder - List of non-Moose-style class builders

=head1 VERSION

This document describes version 0.002 of Acme::CPANModules::NonMooseStyleClassBuilder (from Perl distribution Acme-CPANModules-NonMooseStyleClassBuilder), released on 2023-10-29.

=head1 DESCRIPTION

This list catalogs class builders with interface that is different than the
Moose family.

See also a whole host of Class::Accessor::* modules.

=head1 ACME::CPANMODULES ENTRIES

=over

=item L<Class::Meta::AccessorBuilder>

Part of the Class::Meta framework.

Author: L<DWHEELER|https://metacpan.org/author/DWHEELER>

=item L<Class::Struct>

Author: L<RJBS|https://metacpan.org/author/RJBS>

=item L<Class::Builder>

Author: L<HUANGWEI|https://metacpan.org/author/HUANGWEI>

=item L<Class::GenSource>

This is more like code generator, it generates Perl code source for the entire class definition, not just accessors.

Author: L<PERLANCAR|https://metacpan.org/author/PERLANCAR>

=item L<Object::Declare>

Author: L<SHLOMIF|https://metacpan.org/author/SHLOMIF>

=item L<Object::Tiny>

Author: L<ETHER|https://metacpan.org/author/ETHER>

=item L<Class::Tiny>

Author: L<DAGOLDEN|https://metacpan.org/author/DAGOLDEN>

=item L<Object::New>

Only provides a new() constructor method.

Author: L<AJKALD|https://metacpan.org/author/AJKALD>

=item L<Class::Accessor>

Also supports Moose-style "has".

Author: L<KASEI|https://metacpan.org/author/KASEI>

=item L<Class::XSAccessor>

Fast version of Class::Accessor, used by Moo.

Author: L<SMUELLER|https://metacpan.org/author/SMUELLER>

=back

=head1 FAQ

=head2 What is an Acme::CPANModules::* module?

An Acme::CPANModules::* module, like this module, contains just a list of module
names that share a common characteristics. It is a way to categorize modules and
document CPAN. See L<Acme::CPANModules> for more details.

=head2 What are ways to use this Acme::CPANModules module?

Aside from reading this Acme::CPANModules module's POD documentation, you can
install all the listed modules (entries) using L<cpanm-cpanmodules> script (from
L<App::cpanm::cpanmodules> distribution):

 % cpanm-cpanmodules -n NonMooseStyleClassBuilder

Alternatively you can use the L<cpanmodules> CLI (from L<App::cpanmodules>
distribution):

    % cpanmodules ls-entries NonMooseStyleClassBuilder | cpanm -n

or L<Acme::CM::Get>:

    % perl -MAcme::CM::Get=NonMooseStyleClassBuilder -E'say $_->{module} for @{ $LIST->{entries} }' | cpanm -n

or directly:

    % perl -MAcme::CPANModules::NonMooseStyleClassBuilder -E'say $_->{module} for @{ $Acme::CPANModules::NonMooseStyleClassBuilder::LIST->{entries} }' | cpanm -n

This Acme::CPANModules module also helps L<lcpan> produce a more meaningful
result for C<lcpan related-mods> command when it comes to finding related
modules for the modules listed in this Acme::CPANModules module.
See L<App::lcpan::Cmd::related_mods> for more details on how "related modules"
are found.

=head1 HOMEPAGE

Please visit the project's homepage at L<https://metacpan.org/release/Acme-CPANModules-NonMooseStyleClassBuilder>.

=head1 SOURCE

Source repository is at L<https://github.com/perlancar/perl-Acme-CPANModules-NonMooseStyleClassBuilder>.

=head1 SEE ALSO

L<Acme::CPANModules> - about the Acme::CPANModules namespace

L<cpanmodules> - CLI tool to let you browse/view the lists



( run in 1.388 second using v1.01-cache-2.11-cpan-97f6503c9c8 )