CXC-DB-DDL
view release on metacpan or search on metacpan
"Hash::Ordered" : "0",
"Hash::Util" : "0",
"Import::Into" : "0",
"List::Util" : "1.33",
"Module::Runtime" : "0",
"Moo" : "0",
"Moo::Role" : "0",
"MooX::StrictConstructor" : "0",
"MooX::TaggedAttributes" : "0.18",
"Package::Stash" : "0",
"Ref::Util" : "0",
"SQL::Translator" : "1.61",
"SQL::Translator::Schema" : "0",
"SQL::Translator::Schema::Constants" : "0",
"SQL::Translator::Schema::Constraint" : "0",
"SQL::Translator::Schema::Field" : "0",
"SQL::Translator::Schema::Table" : "0",
"Scalar::Util" : "0",
"Sub::Override" : "0.12",
"Sub::Util" : "1.40",
"Type::Library" : "0",
Hash::Ordered: '0'
Hash::Util: '0'
Import::Into: '0'
List::Util: '1.33'
Module::Runtime: '0'
Moo: '0'
Moo::Role: '0'
MooX::StrictConstructor: '0'
MooX::TaggedAttributes: '0.18'
Package::Stash: '0'
Ref::Util: '0'
SQL::Translator: '1.61'
SQL::Translator::Schema: '0'
SQL::Translator::Schema::Constants: '0'
SQL::Translator::Schema::Constraint: '0'
SQL::Translator::Schema::Field: '0'
SQL::Translator::Schema::Table: '0'
Scalar::Util: '0'
Sub::Override: '0.12'
Sub::Util: '1.40'
Type::Library: '0'
Feature::Compat::Try = 0.05
Hash::Ordered = 0
Hash::Util = 0
Import::Into = 0
List::Util = 1.33
Module::Runtime = 0
Moo = 0
MooX::StrictConstructor = 0
MooX::TaggedAttributes = 0.18
Package::Stash = 0
Ref::Util = 0
SQL::Translator = 1.61
Sub::Override = 0.12
Sub::Util = 1.40
Types::Common::String = 0
Types::Standard = 1.016010
experimental = 0.028
failures = 0
namespace::clean = 0
perl = 5.026
lib/CXC/DB/DDL.pm view on Meta::CPAN
# ABSTRACT: DDL for table creation, based on SQL::Translator::Schema
use DBI::Const::GetInfoType;
use List::Util qw( first notall all );
use Scalar::Util qw( blessed );
use Hash::Ordered;
use SQL::Translator::Schema;
use SQL::Translator::Schema::Table;
use Ref::Util qw( is_hashref is_arrayref );
use CXC::DB::DDL::Util 'sqlt_entity_map', 'db_version';
use CXC::DB::DDL::Failure;
use CXC::DB::DDL::Table;
use CXC::DB::DDL::Constants '-all';
use Type::Params qw( signature_for );
use Types::Standard qw( ArrayRef Bool Dict Enum HashRef InstanceOf Object Optional Str Slurpy );
use Moo;
use Feature::Compat::Try;
use experimental 'signatures', 'postderef', 'declared_refs', 'refaliasing';
lib/CXC/DB/DDL/Field.pm view on Meta::CPAN
package CXC::DB::DDL::Field;
# ABSTRACT: DDL Representation of a field
use v5.26;
use List::Util qw( first );
use Ref::Util qw( is_coderef is_ref );
use CXC::DB::DDL::Failure;
use CXC::DB::DDL::Constants -all;
use Types::Standard qw( ArrayRef Bool CodeRef Dict Enum HashRef Int Optional ScalarRef );
use Types::Common::String qw( NonEmptyStr );
use Moo;
use experimental 'signatures', 'postderef', 'declared_refs', 'refaliasing';
our $VERSION = '0.19';
lib/CXC/DB/DDL/Table.pm view on Meta::CPAN
# ABSTRACT: CXC::DB::DDL Table class
use v5.26;
use strict;
use warnings;
our $VERSION = '0.19';
use List::Util qw( any );
use Ref::Util qw( is_ref is_arrayref is_coderef);
use CXC::DB::DDL::Failure;
use CXC::DB::DDL::Constants -all;
use CXC::DB::DDL::Types -all;
use Type::Params qw( signature_for );
use Types::Standard qw( ArrayRef Bool Dict Enum HashRef InstanceOf Object Optional Undef );
use Types::Common::String qw( NonEmptyStr );
use Moo;
use experimental 'signatures', 'postderef', 'declared_refs';
lib/CXC/DB/DDL/Util.pm view on Meta::CPAN
our $VERSION = '0.19';
use List::Util qw( pairs first );
use Sub::Util qw( set_subname );
use Module::Runtime ();
use Import::Into;
use Digest::MD5;
use Package::Stash;
use Ref::Util ();
use Hash::Util ();
use DBI ();
use DBI::Const::GetInfoType;
use CXC::DB::DDL::Constants -all;
use namespace::clean;
use base 'Exporter::Tiny';
use constant BASE_TYPE_PACKAGE => __PACKAGE__ . '::Type';
use constant DEFAULT_FIELD_CLASS => 'CXC::DB::DDL::Field';
our %EXPORT_TAGS = (
schema_funcs => [qw( xFIELDS xCHECK xTYPE )],
misc => [ 'SQL_TYPE_NAMES', 'SQL_TYPE_VALUES', 'sqlt_entity_map', 'db_version' ],
);
our @EXPORT_OK = ( map { Ref::Util::is_arrayref( $_ ) ? $_->@* : () } values %EXPORT_TAGS );
my sub gen_package_name;
my sub types;
my sub croak {
require Carp;
goto \&Carp::croak;
}
lib/CXC/DB/DDL/Util.pm view on Meta::CPAN
return join q{::}, BASE_TYPE_PACKAGE, Digest::MD5::md5_hex( $dbd // (), @xtra );
}
my sub init ( $globals ) {
# we can reach this sub through multiple paths; only init once.
return if exists $globals->{ __PACKAGE__() };
# request to add support for specified DBD?
if ( my $request = $globals->{add_dbd} ) {
Ref::Util::is_hashref( $request )
or croak( "add_dbd: expected the DBD entry to be a hashref, got @{[ ref $request ]} " );
my ( $dbd, $tag, $field_class, $type_class )
= $request->@{ 'dbd', 'tag', 'field_class', 'type_class' };
defined( $dbd ) && defined( $tag ) && defined( $field_class )
or croak(
sprintf( 'add_dbd: missing dbd (%s), tag(%s), or field_class(%s)',
map { $_ // 'undef' } ( $dbd, $tag, $field_class ), ) );
# silently ignores attempts to redefine. should it warn?
lib/CXC/DB/DDL/Util.pm view on Meta::CPAN
}
# load the dbd types by default.
$globals->{dbd} //= $dbd;
}
my %stash;
# request particular dbd or fallback to generic DBI support
my $dbd = $globals->{dbd} // 'DBI';
Ref::Util::is_ref( $dbd )
and croak( 'dbd: value must be a scalar' );
defined( my $cache = $CACHE{$dbd} )
or croak( "dbd: unsupported DBD: $dbd" );
$stash{dbd} = $dbd;
$stash{cache} = $cache;
# Field wrappers generated by mk_field
# override field_class?
t/00-report-prereqs.dd view on Meta::CPAN
'Hash::Ordered' => '0',
'Hash::Util' => '0',
'Import::Into' => '0',
'List::Util' => '1.33',
'Module::Runtime' => '0',
'Moo' => '0',
'Moo::Role' => '0',
'MooX::StrictConstructor' => '0',
'MooX::TaggedAttributes' => '0.18',
'Package::Stash' => '0',
'Ref::Util' => '0',
'SQL::Translator' => '1.61',
'SQL::Translator::Schema' => '0',
'SQL::Translator::Schema::Constants' => '0',
'SQL::Translator::Schema::Constraint' => '0',
'SQL::Translator::Schema::Field' => '0',
'SQL::Translator::Schema::Table' => '0',
'Scalar::Util' => '0',
'Sub::Override' => '0.12',
'Sub::Util' => '1.40',
'Type::Library' => '0',
( run in 1.043 second using v1.01-cache-2.11-cpan-a5abf4f5562 )