SQLT::Parser::PostgreSQL parses table def with default values
[dbsrgits/SQL-Translator.git] / lib / SQL / Translator / Parser / Storable.pm
CommitLineData
f6595170 1package SQL::Translator::Parser::Storable;
2
f6595170 3=head1 NAME
4
df32118c 5SQL::Translator::Parser::Storable - parser for Schema objects serialized
6 with the Storable module
f6595170 7
8=head1 SYNOPSIS
9
10 use SQL::Translator;
f6595170 11
12 my $translator = SQL::Translator->new;
df32118c 13 $translator->parser('Storable');
f6595170 14
15=head1 DESCRIPTION
16
17Slurps in a Schema from a Storable file on disk. You can then turn
18the data into a database tables or graphs.
19
20=cut
21
22use strict;
f27f9229 23use warnings;
0c04c5a2 24our ($DEBUG, @EXPORT_OK);
f6595170 25$DEBUG = 0 unless defined $DEBUG;
0c04c5a2 26our $VERSION = '1.59';
f6595170 27
28use Storable;
29use Exporter;
30use SQL::Translator::Utils qw(debug normalize_name);
31
32use base qw(Exporter);
33
34@EXPORT_OK = qw(parse);
35
36sub parse {
37 my ($translator, $data) = @_;
38
ca0022de 39 if (defined($data)) {
40 $translator->{'schema'} = Storable::thaw($data);
41 return 1;
42 } elsif (defined($translator->filename)) {
43 $translator->{'schema'} = Storable::retrieve($translator->filename);
44 return 1;
45 }
f6595170 46
ca0022de 47 return 0;
f6595170 48}
49
501;
51
52=pod
53
54=head1 SEE ALSO
55
b57555af 56SQL::Translator.
f6595170 57
b57555af 58=head1 AUTHOR
f6595170 59
df32118c 60Paul Harrington E<lt>harringp@deshaw.comE<gt>.
f6595170 61
62=cut