X-Git-Url: http://git.shadowcat.co.uk/gitweb/gitweb.cgi?a=blobdiff_plain;f=lib%2FDBIx%2FClass%2FSchema%2FLoader%2FDBI%2FComponent%2FQuotedDefault.pm;h=a4b98855e1651d3b888e6ad4a696b4cd746b0528;hb=3b71e53bd47bd29213e8fe12b3f9a2d1a229b587;hp=97a94cea8565ea8a8e14d39bc104c607dcac0e34;hpb=6b0e47fc86f045183810ccea343e9afcd438ee1a;p=dbsrgits%2FDBIx-Class-Schema-Loader.git diff --git a/lib/DBIx/Class/Schema/Loader/DBI/Component/QuotedDefault.pm b/lib/DBIx/Class/Schema/Loader/DBI/Component/QuotedDefault.pm index 97a94ce..a4b9885 100644 --- a/lib/DBIx/Class/Schema/Loader/DBI/Component/QuotedDefault.pm +++ b/lib/DBIx/Class/Schema/Loader/DBI/Component/QuotedDefault.pm @@ -2,14 +2,14 @@ package DBIx::Class::Schema::Loader::DBI::Component::QuotedDefault; use strict; use warnings; -use Class::C3; +use mro 'c3'; -our $VERSION = '0.05000'; +our $VERSION = '0.07007'; =head1 NAME -DBIx::Class::Schema::Loader::DBI::Component::QuotedDefault -- Loader Component -to parse quoted default constants and functions +DBIx::Class::Schema::Loader::DBI::Component::QuotedDefault -- Loader::DBI +Component to parse quoted default constants and functions =head1 DESCRIPTION @@ -30,11 +30,13 @@ sub _columns_info_for { $def =~ s/^\s+//; $def =~ s/\s+\z//; - if ($def =~ /^["'](.*?)['"]\z/) { +# remove Pg typecasts (e.g. 'foo'::character varying) too + if ($def =~ /^["'](.*?)['"](?:::[\w\s]+)?\z/) { $info->{default_value} = $1; } else { - $info->{default_value} = $def =~ /^\d/ ? $def : \$def; + # Some DBs (eg. Pg) put brackets around negative number defaults + $info->{default_value} = $def =~ /^\(?(-?\d.*?)\)?$/ ? $1 : \$def; } } }