Linux and UNIX Man Pages

Linux & Unix Commands - Search Man Pages

moosex::blessed::reconstruct(3pm) [debian man page]

MooseX::Blessed::Reconstruct(3pm)			User Contributed Perl Documentation			 MooseX::Blessed::Reconstruct(3pm)

NAME
MooseX::Blessed::Reconstruct - A Data::Visitor for creating Moose objects from blessed placeholders SYNOPSIS
use MooseX::Blessed::Reconstruct; my $obj = bless( { init_arg_foo => "Blah", arf => "yay", }, "Foo" ); my $proper = MooseX::Blessed::Reconstruct->new->visit($obj); # equivalent to: my $proper = Foo->meta->new_object(%$obj); # but recursive (and works with shared references) DESCRIPTION
The purpose of this module is to "fix up" blessed data into a real Moose object. This is used internally by MooseX::YAML but has no implementation details having to do with YAML itself. METHODS
See Data::Visitor visit_object $object Calls "load_class" in Class::MOP on the "ref" of $object. If there's a metaclass, calls "visit_object_with_meta", otherwise "visit_ref" is used to walk the object brutishly. Returns a deep clone of the input structure with all the Moose objects reconstructed "properly". visit_object_with_meta $obj, $meta Uses the metaclass $meta to create a new instance, registers the instance with Data::Visitor's cycle tracking, and then inflates it using "new_object" in Moose::Meta::Class. prepare_args $obj Collapses $obj into key value pairs to be used as init args to "new_object" in Moose::Meta::Class. VERSION CONTROL
This module is maintained using Darcs. You can get the latest version from <http://nothingmuch.woobling.org/code>, and use "darcs send" to commit changes. AUTHOR
Jonathan Rockway Yuval Kogman <nothingmuch@woobling.org> COPYRIGHT
Copyright (c) 2008 Infinity Interactive, Yuval Kogman. All rights reserved This program is free software; you can redistribute it and/or modify it under the same terms as Perl itself. perl v5.10.1 2010-07-13 MooseX::Blessed::Reconstruct(3pm)

Check Out this Related Man Page

MooseX::App::Cmd(3pm)					User Contributed Perl Documentation				     MooseX::App::Cmd(3pm)

NAME
MooseX::App::Cmd - Mashes up MooseX::Getopt and App::Cmd. SYNOPSIS
See "SYNOPSIS" in App::Cmd. package YourApp::Cmd; use Moose; extends qw(MooseX::App::Cmd); package YourApp::Cmd::Command::blort; use Moose; extends qw(MooseX::App::Cmd::Command); has blortex => ( traits => [qw(Getopt)], isa => "Bool", is => "rw", cmd_aliases => "X", documentation => "use the blortext algorithm", ); has recheck => ( traits => [qw(Getopt)], isa => "Bool", is => "rw", cmd_aliases => "r", documentation => "recheck all results", ); sub execute { my ( $self, $opt, $args ) = @_; # you may ignore $opt, it's in the attributes anyway my $result = $self->blortex ? blortex() : blort(); recheck($result) if $self->recheck; print $result; } DESCRIPTION
This module marries App::Cmd with MooseX::Getopt. Use it like App::Cmd advises (especially see App::Cmd::Tutorial), swapping App::Cmd::Command for MooseX::App::Cmd::Command. Then you can write your moose commands as moose classes, with MooseX::Getopt defining the options for you instead of "opt_spec" returning a Getopt::Long::Descriptive spec. AUTHOR
Yuval Kogman <nothingmuch@woobling.org> With contributions from: Guillermo Roditi <groditi@cpan.org> COPYRIGHT
Copyright (c) 2007-2008 Infinity Interactive, Yuval Kogman. All rights reserved This program is free software; you can redistribute it and/or modify it under the same terms as Perl itself. perl v5.14.2 2012-02-29 MooseX::App::Cmd(3pm)
Man Page