Commit | Line | Data |
---|---|---|
a23e18d7 | 1 | |
4d1850a6 | 2 | package MooseX::Storage::Format::JSON; |
a23e18d7 | 3 | use Moose::Role; |
4 | ||
5 | use JSON::Syck (); | |
a23e18d7 | 6 | |
4d1850a6 | 7 | requires 'pack'; |
8 | requires 'unpack'; | |
a23e18d7 | 9 | |
10 | sub thaw { | |
11 | my ( $class, $json ) = @_; | |
12 | $class->unpack( JSON::Syck::Load($json) ); | |
13 | } | |
14 | ||
15 | sub freeze { | |
16 | my $self = shift; | |
17 | JSON::Syck::Dump( $self->pack() ); | |
18 | } | |
19 | ||
20 | 1; | |
21 | ||
22 | __END__ | |
23 | ||
24 | =pod | |
25 | ||
26 | =cut | |
27 |