Commit | Line | Data |
f6595170 |
1 | package SQL::Translator::Producer::Storable; |
2 | |
3 | # $Source: /home/faga/work/sqlfairy_svn/sqlfairy-cvsbackup/sqlfairy/lib/SQL/Translator/Producer/Storable.pm,v $ |
349af114 |
4 | # $Id: Storable.pm,v 1.2 2003-10-08 20:33:31 phrrngtn Exp $ |
f6595170 |
5 | |
6 | =head1 NAME |
7 | |
8 | SQL::Translator::Producer::Storable - null producer for Schema objects that have already been created. |
9 | |
10 | =head1 SYNOPSIS |
11 | |
12 | use SQL::Translator; |
13 | use SQL::Translator::Producer::Storable; |
14 | |
15 | my $translator = SQL::Translator->new; |
16 | $translator->producer("SQL::Translator::Producer::Storable"); |
17 | |
18 | =head1 DESCRIPTION |
19 | |
20 | Uses Storable to serialize a schema to a string so that it can be |
21 | saved on disk or whatever. |
22 | |
23 | =cut |
24 | |
25 | use strict; |
26 | use vars qw($DEBUG $VERSION @EXPORT_OK); |
27 | $DEBUG = 0 unless defined $DEBUG; |
349af114 |
28 | $VERSION = sprintf "%d.%02d", q$Revision: 1.2 $ =~ /(\d+)\.(\d+)/; |
f6595170 |
29 | |
30 | use Storable; |
31 | use Exporter; |
32 | use SQL::Translator::Utils qw(debug normalize_name); |
33 | |
34 | use base qw(Exporter); |
35 | |
36 | @EXPORT_OK = qw(produce); |
37 | |
38 | sub produce { |
39 | my $t = shift; |
40 | |
41 | my $args = $t->producer_args; |
42 | my $schema = $t->schema; |
349af114 |
43 | my $serialized = Storable::nfreeze($schema); |
f6595170 |
44 | |
45 | return $serialized; |
46 | } |
47 | |
48 | 1; |
49 | |
50 | =pod |
51 | |
52 | =head1 AUTHORS |
53 | |
54 | Paul Harrington <harringp@deshaw.com> |
55 | |
56 | =head1 SEE ALSO |
57 | |
58 | SQL::Translator::Parser::Excel; |
59 | |
60 | =cut |