Rechercher une page de manuel
Moose::Meta::Attribute::Native::Trait::Hash.3pm
Langue: en
Version: 2010-06-15 (ubuntu - 24/10/10)
Section: 3 (Bibliothèques de fonctions)
NAME
Moose::Meta::Attribute::Native::Trait::Hash - Helper trait for HashRef attributesSYNOPSIS
package Stuff; use Moose; has 'options' => ( traits => ['Hash'], is => 'ro', isa => 'HashRef[Str]', default => sub { {} }, handles => { set_option => 'set', get_option => 'get', has_no_options => 'is_empty', num_options => 'count', delete_option => 'delete', pairs => 'kv', }, );
DESCRIPTION
This module provides a Hash attribute which provides a number of hash-like operations.PROVIDED METHODS
These methods are implemented in Moose::Meta::Attribute::Native::MethodProvider::Hash.- get($key, $key2, $key3...)
- Returns values from the hash.
In list context return a list of values in the hash for the given keys. In scalar context returns the value for the last key specified.
- set($key => $value, $key2 => $value2...)
- Sets the elements in the hash to the given values.
- delete($key, $key2, $key3...)
- Removes the elements with the given keys.
- keys
- Returns the list of keys in the hash.
- exists($key)
- Returns true if the given key is present in the hash.
- defined($key)
- Returns true if the value of a given key is defined.
- values
- Returns the list of values in the hash.
- kv
- Returns the key/value pairs in the hash as an array of array references.
for my $pair ( $object->options->pairs ) { print "$pair->[0] = $pair->[1]\n"; }
- elements
- Returns the key/value pairs in the hash as a flattened list..
- clear
- Resets the hash to an empty value, like "%hash = ()".
- count
- Returns the number of elements in the hash. Also useful for not empty: "has_options => 'count'".
- is_empty
- If the hash is populated, returns false. Otherwise, returns true.
- accessor
- If passed one argument, returns the value of the specified key. If passed two arguments, sets the value of the specified key.
METHODS
- meta
- method_provider
- has_method_provider
BUGS
See ``BUGS'' in Moose for details on reporting bugs.AUTHOR
Stevan Little <stevan@iinteractive.com>COPYRIGHT AND LICENSE
Copyright 2007-2009 by Infinity Interactive, Inc.<http://www.iinteractive.com>
This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself.
Contenus ©2006-2024 Benjamin Poulain
Design ©2006-2024 Maxime Vantorre