Commit | Line | Data |
c5051351 |
1 | package SQL::Translator::Object::Column; |
2 | use Moose; |
c0e05758 |
3 | use MooseX::Types::Moose qw(Bool Int Str); |
4 | use SQL::Translator::Types qw(Trigger); |
cc73c25e |
5 | extends 'SQL::Translator::Object'; |
c5051351 |
6 | |
109263d0 |
7 | has 'name' => ( |
f991a2c5 |
8 | is => 'rw', |
109263d0 |
9 | isa => Str, |
10 | required => 1 |
11 | ); |
12 | |
13 | has 'type' => ( |
f991a2c5 |
14 | is => 'rw', |
109263d0 |
15 | isa => Str, |
16 | required => 1 |
17 | ); |
18 | |
19 | has 'size' => ( |
f991a2c5 |
20 | is => 'rw', |
109263d0 |
21 | isa => Int, |
22 | required => 1 |
23 | ); |
24 | |
25 | has 'is_nullable' => ( |
f991a2c5 |
26 | is => 'rw', |
109263d0 |
27 | isa => Bool, |
28 | required => 1, |
29 | default => 1 |
30 | ); |
31 | |
32 | has 'is_auto_increment' => ( |
f991a2c5 |
33 | is => 'rw', |
34 | isa => Bool, |
35 | required => 1, |
36 | default => 0 |
37 | ); |
38 | |
39 | has 'is_primary_key' => ( |
40 | is => 'rw', |
41 | isa => Bool, |
42 | required => 1, |
43 | default => 0 |
44 | ); |
45 | |
46 | has 'is_foriegn_key' => ( |
47 | is => 'rw', |
48 | isa => Bool, |
49 | required => 1, |
50 | default => 0 |
51 | ); |
52 | |
53 | has 'is_unique' => ( |
54 | is => 'rw', |
109263d0 |
55 | isa => Bool, |
56 | required => 1, |
57 | default => 0 |
58 | ); |
59 | |
60 | has 'default_value' => ( |
f991a2c5 |
61 | is => 'rw', |
109263d0 |
62 | isa => Str, |
63 | required => 0 |
64 | ); |
65 | |
66 | has 'trigger' => ( |
f991a2c5 |
67 | is => 'rw', |
109263d0 |
68 | isa => Trigger, |
69 | required => 0 |
70 | ); |
c5051351 |
71 | |
f991a2c5 |
72 | has 'index' => ( |
73 | is => 'rw', |
74 | isa => Int, |
75 | required => 1 |
76 | ); |
77 | |
c5051351 |
78 | 1; |