implement 'use aliased'
[dbsrgits/SQL-Translator-2.0-ish.git] / lib / SQL / Translator / Object / Column.pm
1 package SQL::Translator::Object::Column;
2 use namespace::autoclean;
3 use Moose;
4 use MooseX::Types::Moose qw(Bool Int Maybe Str);
5 use SQL::Translator::Types qw(Trigger);
6 extends 'SQL::Translator::Object';
7
8 has 'name' => (
9     is => 'rw',
10     isa => Str,
11     required => 1
12 );
13
14 has 'data_type' => (
15     is => 'rw',
16     isa => Str,
17     required => 1
18 );
19
20 has 'size' => (
21     is => 'rw',
22     isa => Maybe[Int],
23     required => 1
24 );
25
26 has 'is_nullable' => (
27     is => 'rw',
28     isa => Bool,
29     required => 1,
30     default => 1
31 );
32
33 has 'is_auto_increment' => (
34     is => 'rw',
35     isa => Bool,
36     required => 1,
37     default => 0
38 );
39
40 has 'default_value' => (
41     is => 'rw',
42     isa => Maybe[Str],
43     required => 0
44 );
45
46 has 'remarks' => (
47     is => 'rw',
48     isa => Maybe[Str],
49     required => 0
50 );
51
52 has 'trigger' => (
53     is => 'rw',
54     isa => Trigger,
55     required => 0
56 );
57
58 __PACKAGE__->meta->make_immutable;
59
60 1;