DBIx-Class-PseudoEnum
view release on metacpan or search on metacpan
"CPAN::Meta" : "2.120900"
},
"requires" : {
"DBIx::Class::Core" : "0",
"DBIx::Class::Schema" : "0",
"ExtUtils::MakeMaker" : "0",
"File::Spec" : "0",
"FindBin" : "0",
"IO::Handle" : "0",
"IPC::Open3" : "0",
"Modern::Perl" : "0",
"Test2::Plugin::ExitSummary" : "0",
"Test2::Plugin::NoWarnings" : "0",
"Test2::Plugin::Times" : "0",
"Test2::V0" : "0",
"Test::DBIx::Class" : "0",
"Test::More" : "0",
"base" : "0",
"lib" : "0",
"perl" : "5.010"
}
"Dist::Zilla::Plugin::RunExtraTests" : "0.029",
"Dist::Zilla::Plugin::SchwartzRatio" : "0.3.4",
"Dist::Zilla::Plugin::Test::Compile" : "2.058",
"Dist::Zilla::Plugin::Test::ReportPrereqs" : "0.029",
"Dist::Zilla::Plugin::TestRelease" : "6.030",
"ExtUtils::MakeMaker" : "7.62",
"File::Spec" : "3.80",
"FindBin" : "1.52",
"IO::Handle" : "1.46",
"IPC::Open3" : "1.21",
"Modern::Perl" : "1.20230106",
"Sub::Quote" : "2.006008",
"Test2::Plugin::ExitSummary" : "0.000155",
"Test2::Plugin::NoWarnings" : "0.09",
"Test2::Plugin::Times" : "0.000155",
"Test2::V0" : "0.000155",
"Test::DBIx::Class" : "0.52",
"Test::More" : "1.302183",
"base" : "2.27",
"lib" : "0.65",
"parent" : "0.238",
author:
- 'D Ruth Holloway <ruth@hiruthie.me>'
build_requires:
DBIx::Class::Core: '0'
DBIx::Class::Schema: '0'
ExtUtils::MakeMaker: '0'
File::Spec: '0'
FindBin: '0'
IO::Handle: '0'
IPC::Open3: '0'
Modern::Perl: '0'
Test2::Plugin::ExitSummary: '0'
Test2::Plugin::NoWarnings: '0'
Test2::Plugin::Times: '0'
Test2::V0: '0'
Test::DBIx::Class: '0'
Test::More: '0'
base: '0'
lib: '0'
perl: '5.010'
configure_requires:
Dist::Zilla::Plugin::RunExtraTests: '0.029'
Dist::Zilla::Plugin::SchwartzRatio: 0.3.4
Dist::Zilla::Plugin::Test::Compile: '2.058'
Dist::Zilla::Plugin::Test::ReportPrereqs: '0.029'
Dist::Zilla::Plugin::TestRelease: '6.030'
ExtUtils::MakeMaker: '7.62'
File::Spec: '3.80'
FindBin: '1.52'
IO::Handle: '1.46'
IPC::Open3: '1.21'
Modern::Perl: '1.20230106'
Sub::Quote: '2.006008'
Test2::Plugin::ExitSummary: '0.000155'
Test2::Plugin::NoWarnings: '0.09'
Test2::Plugin::Times: '0.000155'
Test2::V0: '0.000155'
Test::DBIx::Class: '0.52'
Test::More: '1.302183'
base: '2.27'
lib: '0.65'
parent: '0.238'
Makefile.PL view on Meta::CPAN
"warnings" => 0
},
"TEST_REQUIRES" => {
"DBIx::Class::Core" => 0,
"DBIx::Class::Schema" => 0,
"ExtUtils::MakeMaker" => 0,
"File::Spec" => 0,
"FindBin" => 0,
"IO::Handle" => 0,
"IPC::Open3" => 0,
"Modern::Perl" => 0,
"Test2::Plugin::ExitSummary" => 0,
"Test2::Plugin::NoWarnings" => 0,
"Test2::Plugin::Times" => 0,
"Test2::V0" => 0,
"Test::DBIx::Class" => 0,
"Test::More" => 0,
"base" => 0,
"lib" => 0
},
"VERSION" => "1.0003",
Makefile.PL view on Meta::CPAN
"Carp" => 0,
"DBIx::Class::Candy::Exports" => 0,
"DBIx::Class::Core" => 0,
"DBIx::Class::Row" => 0,
"DBIx::Class::Schema" => 0,
"ExtUtils::MakeMaker" => 0,
"File::Spec" => 0,
"FindBin" => 0,
"IO::Handle" => 0,
"IPC::Open3" => 0,
"Modern::Perl" => 0,
"Sub::Quote" => 0,
"Test2::Plugin::ExitSummary" => 0,
"Test2::Plugin::NoWarnings" => 0,
"Test2::Plugin::Times" => 0,
"Test2::V0" => 0,
"Test::DBIx::Class" => 0,
"Test::More" => 0,
"base" => 0,
"lib" => 0,
"parent" => 0,
README.mkdn view on Meta::CPAN
## enumerations\_use\_column\_names()
Calling this function will require the schema to create methods with the column name included. E.g. instead of
`is_value`, you get `fieldname_is_value` methods. It only operates on the Result class where you call it.
# DEPENDENCIES
- [Carp](https://metacpan.org/pod/Carp)
- [DBIx::Class](https://metacpan.org/pod/DBIx%3A%3AClass)
- [Modern::Perl](https://metacpan.org/pod/Modern%3A%3APerl)
- [Sub::Quote](https://metacpan.org/pod/Sub%3A%3AQuote)
# BUGS AND LIMITATIONS
Bugs? What bugs? (No, really. If you find one, open an issue, please.)
The following limitations are (currently) present:
- **Text columns only!**:
requires "warnings" => "0";
on 'test' => sub {
requires "DBIx::Class::Core" => "0";
requires "DBIx::Class::Schema" => "0";
requires "ExtUtils::MakeMaker" => "0";
requires "File::Spec" => "0";
requires "FindBin" => "0";
requires "IO::Handle" => "0";
requires "IPC::Open3" => "0";
requires "Modern::Perl" => "0";
requires "Test2::Plugin::ExitSummary" => "0";
requires "Test2::Plugin::NoWarnings" => "0";
requires "Test2::Plugin::Times" => "0";
requires "Test2::V0" => "0";
requires "Test::DBIx::Class" => "0";
requires "Test::More" => "0";
requires "base" => "0";
requires "lib" => "0";
requires "perl" => "5.010";
};
lib/DBIx/Class/PseudoEnum.pm view on Meta::CPAN
C<is_value>, you get C<fieldname_is_value> methods. It only operates on the Result class where you call it.
=head1 DEPENDENCIES
=over 4
=item L<Carp>
=item L<DBIx::Class>
=item L<Modern::Perl>
=item L<Sub::Quote>
=back
=head1 BUGS AND LIMITATIONS
Bugs? What bugs? (No, really. If you find one, open an issue, please.)
The following limitations are (currently) present:
perlcriticrc view on Meta::CPAN
[Subroutines::ProhibitExcessComplexity]
max_mccabe = 25
[TestingAndDebugging::ProhibitNoStrict]
allow = refs
[TestingAndDebugging::ProhibitNoWarnings]
allow = redefine
[TestingAndDebugging::RequireUseStrict]
equivalent_modules = Modern::Perl
[TestingAndDebugging::RequireUseWarnings]
equivalent_modules = Modern::Perl
[ValuesAndExpressions::ProhibitInterpolationOfLiterals]
allow_if_string_contains_single_quote = 1
[Variables::ProhibitPackageVars]
add_packages = Carp Test::Builder
#
# Turn these off!
#
t/00-report-prereqs.dd view on Meta::CPAN
'CPAN::Meta' => '2.120900'
},
'requires' => {
'DBIx::Class::Core' => '0',
'DBIx::Class::Schema' => '0',
'ExtUtils::MakeMaker' => '0',
'File::Spec' => '0',
'FindBin' => '0',
'IO::Handle' => '0',
'IPC::Open3' => '0',
'Modern::Perl' => '0',
'Test2::Plugin::ExitSummary' => '0',
'Test2::Plugin::NoWarnings' => '0',
'Test2::Plugin::Times' => '0',
'Test2::V0' => '0',
'Test::DBIx::Class' => '0',
'Test::More' => '0',
'base' => '0',
'lib' => '0',
'perl' => '5.010'
}
t/lib/TestSchema.pm view on Meta::CPAN
package TestSchema;
use Modern::Perl;
use base qw(DBIx::Class::Schema);
__PACKAGE__->load_namespaces();
1;
t/lib/TestSchema/Result/Contraption.pm view on Meta::CPAN
package TestSchema::Result::Contraption;
use Modern::Perl;
use base qw(DBIx::Class::Core);
__PACKAGE__->table('contraption');
__PACKAGE__->add_columns(qw(id color));
__PACKAGE__->add_columns( status => { is_nullable => 1, }, );
__PACKAGE__->add_columns( note => { is_nullable => 1, }, );
__PACKAGE__->set_primary_key('id');
__PACKAGE__->load_components('PseudoEnum');
__PACKAGE__->source_info(
{
t/lib/TestSchema/Result/Doodad.pm view on Meta::CPAN
package TestSchema::Result::Doodad;
use Modern::Perl;
use parent qw(DBIx::Class::Core);
__PACKAGE__->table('doodad');
__PACKAGE__->add_columns(qw/id status color/);
__PACKAGE__->add_columns( note => { is_nullable => 1, }, );
__PACKAGE__->set_primary_key('id');
__PACKAGE__->load_components('PseudoEnum');
__PACKAGE__->enumerate( 'status', [qw/Ordered In-Stock Out-Of-Stock/] );
__PACKAGE__->enumerate( 'color', [qw/Black Blue Green Red/] );
t/lib/TestSchema/Result/Doohickey.pm view on Meta::CPAN
package TestSchema::Result::Doohickey;
use Modern::Perl;
use base qw(DBIx::Class::Core);
__PACKAGE__->table('doohickey');
__PACKAGE__->add_columns(qw/id field1 field2/);
__PACKAGE__->set_primary_key('id');
__PACKAGE__->load_components('PseudoEnum');
__PACKAGE__->enumerations_use_column_names();
__PACKAGE__->enumerate( 'field1', [qw/One Two Three Four Blue/] );
__PACKAGE__->enumerate( 'field2', [qw/BLUE RED GREEN/] );
( run in 0.580 second using v1.01-cache-2.11-cpan-4d50c553e7e )