Mercurial > pub > Impl
diff Lib/IMPL/SQL/Schema/Table.pm @ 278:4ddb27ff4a0b
core refactoring
author | cin |
---|---|
date | Mon, 04 Feb 2013 02:10:37 +0400 |
parents | 56364d0c4b4f |
children | 77df11605d3a |
line wrap: on
line diff
--- a/Lib/IMPL/SQL/Schema/Table.pm Fri Feb 01 16:37:59 2013 +0400 +++ b/Lib/IMPL/SQL/Schema/Table.pm Mon Feb 04 02:10:37 2013 +0400 @@ -1,30 +1,29 @@ +package IMPL::SQL::Schema::Table; use strict; -package IMPL::SQL::Schema::Table; - -use IMPL::lang qw(:declare is); -use parent qw( - IMPL::Object - IMPL::Object::Disposable -); +use IMPL::lang qw(is); +use IMPL::Const qw(:prop); +use IMPL::declare { + base => [ + 'IMPL::Object' => undef, + 'IMPL::Object::Disposable' => undef + ], + props => [ + name => PROP_RO | PROP_DIRECT, + schema => PROP_RO | PROP_DIRECT, + columns => PROP_RO | PROP_DIRECT, + constraints => PROP_RO | PROP_DIRECT, + columnsByName => PROP_RO | PROP_DIRECT, + primaryKey => PROP_RO | PROP_DIRECT, + tag => PROP_RW | PROP_DIRECT, + ] +}; require IMPL::SQL::Schema::Column; require IMPL::SQL::Schema::Constraint; require IMPL::SQL::Schema::Constraint::PrimaryKey; require IMPL::SQL::Schema::Constraint::ForeignKey; -use IMPL::Class::Property::Direct; - -BEGIN { - public _direct property name => PROP_GET; - public _direct property schema => PROP_GET; - public _direct property columns => PROP_GET; - public _direct property constraints => PROP_GET; - public _direct property columnsByName => 0; - public _direct property primaryKey => PROP_GET; - public _direct property tag => PROP_ALL; -} - sub CTOR { my ($this,%args) = @_;