Mercurial > pub > Impl
diff Lib/IMPL/SQL/Schema/Type.pm @ 278:4ddb27ff4a0b
core refactoring
author | cin |
---|---|
date | Mon, 04 Feb 2013 02:10:37 +0400 |
parents | 5c82eec23bb6 |
children |
line wrap: on
line diff
--- a/Lib/IMPL/SQL/Schema/Type.pm Fri Feb 01 16:37:59 2013 +0400 +++ b/Lib/IMPL/SQL/Schema/Type.pm Mon Feb 04 02:10:37 2013 +0400 @@ -1,23 +1,23 @@ +package IMPL::SQL::Schema::Type; use strict; use warnings; -package IMPL::SQL::Schema::Type; -use parent qw(IMPL::Object IMPL::Object::Autofill); - -use IMPL::lang qw( :declare :compare ); - -use IMPL::Class::Property::Direct; - -BEGIN { - public _direct property name => PROP_GET; - public _direct property maxLength => PROP_GET; - public _direct property scale => PROP_GET; - public _direct property unsigned => PROP_GET; - public _direct property zerofill => PROP_GET; - public _direct property tag => PROP_GET; -} - -__PACKAGE__->PassThroughArgs; +use IMPL::lang qw( :compare ); +use IMPL::Const qw(:prop); +use IMPL::declare{ + base => [ + 'IMPL::Object' => undef, + 'IMPL::Object::Autofill' => '@_' + ], + props => [ + name => PROP_RO | PROP_DIRECT, + maxLength => PROP_RO | PROP_DIRECT, + scale => PROP_RO | PROP_DIRECT, + unsigned => PROP_RO | PROP_DIRECT, + zerofill => PROP_RO | PROP_DIRECT, + tag => PROP_RO | PROP_DIRECT + ] +}; sub CTOR { my $this = shift;