copy in and rename AttributeHelpers
[gitmo/Moose.git] / lib / Moose / AttributeHelpers / Collection / ImmutableHash.pm
CommitLineData
e3c07b19 1
2package Moose::AttributeHelpers::Collection::ImmutableHash;
3use Moose;
4
5our $VERSION = '0.19';
6$VERSION = eval $VERSION;
7our $AUTHORITY = 'cpan:STEVAN';
8
9extends 'Moose::Meta::Attribute';
10with 'Moose::AttributeHelpers::Trait::Collection::ImmutableHash';
11
12no Moose;
13
14# register the alias ...
15package # hide me from search.cpan.org
16 Moose::Meta::Attribute::Custom::Collection::ImmutableHash;
17sub register_implementation { 'Moose::AttributeHelpers::Collection::ImmutableHash' }
18
19
201;
21
22__END__
23
24=pod
25
26=head1 NAME
27
28Moose::AttributeHelpers::Collection::ImmutableHash
29
30=head1 SYNOPSIS
31
32 package Stuff;
33 use Moose;
34 use Moose::AttributeHelpers;
35
36 has 'options' => (
37 metaclass => 'Collection::ImmutableHash',
38 is => 'ro',
39 isa => 'HashRef[Str]',
40 default => sub { {} },
41 provides => {
42 'get' => 'get_option',
43 'empty' => 'has_options',
44 'keys' => 'get_option_list',
45 }
46 );
47
48=head1 DESCRIPTION
49
50This module provides a immutable HashRef attribute which provides a number of
51hash-line operations. See L<Moose::AttributeHelpers::MethodProvider::ImmutableHash>
52for more details.
53
54=head1 METHODS
55
56=over 4
57
58=item B<meta>
59
60=item B<method_provider>
61
62=item B<has_method_provider>
63
64=item B<helper_type>
65
66=back
67
68=head1 BUGS
69
70All complex software has bugs lurking in it, and this module is no
71exception. If you find a bug please either email me, or add the bug
72to cpan-RT.
73
74=head1 AUTHOR
75
76Stevan Little E<lt>stevan@iinteractive.comE<gt>
77
78=head1 COPYRIGHT AND LICENSE
79
80Copyright 2007-2009 by Infinity Interactive, Inc.
81
82L<http://www.iinteractive.com>
83
84This library is free software; you can redistribute it and/or modify
85it under the same terms as Perl itself.
86
87=cut