Nano::Stash
Stashable Role
Stashable Entity Role
method: get method: set method: stash
package Example;
use Moo;
extends 'Nano::Node';
with 'Nano::Stash';
sub bestie {
my ($self, @args) = @_;
return $self->stash('bestie', @args);
}
package main;
my $example = Example->new;
# $example->bestie($example);
Nano::Types
stashed: ro, opt, HashRef
This package provides an entity-stashing role, useful for the ad-hoc persisting of Nano::Node entities. This role also makes it possible to save/load circularly dependent entities.
The get method finds and loads a previously stashed Nano::Node entity.
get(Str $name) : Maybe[Node]
=example-1 get
my $example = Example->new;
my $bestie = $example->get('bestie');
=example-2 get
my $example = Example->new;
$example->bestie($example);
$example->save;
my $bestie = $example->get('bestie');
The set method stashes the Nano::Node entity provided by name. This does not save the subject or invocant.
set(Str $name, Node $node) : Node
=example-1 set
my $example = Example->new;
my $bestie = $example->set('bestie', $example);
The stash method will "get" or "set" a stashed Nano::Node entity based on the arguments provided.
stash(Str $name, Maybe[Node] $node) : Maybe[Node]
=example-1 stash
my $example = Example->new;
my $bestie = $example->stash('bestie');
=example-2 stash
my $example = Example->new;
$example->bestie($example);
$example->save;
my $bestie = $example->stash('bestie');
=example-3 stash
my $example = Example->new;
my $bestie = $example->stash('bestie', $example);
14 POD Errors
The following errors were encountered while parsing the POD:
- Around line 10:
Unknown directive: =name
- Around line 16:
Unknown directive: =tagline
- Around line 22:
Unknown directive: =abstract
- Around line 28:
Unknown directive: =includes
- Around line 36:
Unknown directive: =synopsis
- Around line 59:
Unknown directive: =libraries
- Around line 65:
Unknown directive: =attributes
- Around line 71:
Unknown directive: =description
- Around line 79:
Unknown directive: =method
- Around line 83:
Unknown directive: =signature
- Around line 104:
Unknown directive: =method
- Around line 109:
Unknown directive: =signature
- Around line 121:
Unknown directive: =method
- Around line 126:
Unknown directive: =signature