view Lib/IMPL/SQL/Schema/Traits.pm @ 163:6ce1f052b90a

temp commit
author wizard
date Tue, 15 Mar 2011 02:32:42 +0300
parents 16ada169ca75
children eb3e9861a761
line wrap: on
line source

package IMPL::SQL::Traits;
use strict;
use IMPL::_core::version;
use IMPL::Exception();

use base qw(IMPL::Object IMPL::Object::Autofill);

# this is a base class for all table traits 
package IMPL::SQL::Traits::Table;

our @ISA = qw(IMPL::SQL::Traits);

use IMPL::Class::Property;

BEGIN {
	public property tableName => prop_all;
}

sub verify {
	my ($this, $schema) = @_;
}

package IMPL::SQL::Traits::Table::Create;

our @ISA = qw(IMPL::SQL::Traits::Table);

package IMPL::SQL::Traits::Table::Drop;

our @ISA = qw(IMPL::SQL::Traits::Table);

package IMPL::SQL::Traits::Table::AlterAttributes;

our @ISA = qw(IMPL::SQL::Traits::Table);

package IMPL::SQL::Traits::Table::AlterName;

our @ISA = qw(IMPL::SQL::Traits::Table);



package IMPL::SQL::Traits::Column;

our @ISA = qw(SQL::IMPL::Traits);

package IMPL::SQL::Traits::Column::Create;

our @ISA = qw(IMPL::SQL::Traits::Column);

package IMPL::SQL::Traits::Column::Drop;

our @ISA = qw(IMPL::SQL::Traits::Column);

package IMPL::SQL::Traits::Column::Alter;

our @ISA = qw(IMPL::SQL::Traits::Column);


1;

__END__

=pod

=head1 NAME

C<IMPL::SQL::Traits> - Операции над объектками SQL схемы.

=head1 DESCRIPTION

Изменения схемы могу быть представлены в виде последовательности примитивных операций.


=cut