Silly Nick - change 32804 missed updating the list of global functions.
[p5sagit/p5-mst-13.2.git] / lib / Attribute / Handlers / README
CommitLineData
0e9b9e0c 1==============================================================================
d45dcc99 2 Release of version 0.79 of Attribute::Handlers
0e9b9e0c 3==============================================================================
4
5
6NAME
7 Attribute::Handlers - Simpler definition of attribute handlers
8
9DESCRIPTION
10 This module, when inherited by a package, allows that package's class to
11 define attribute handler subroutines for specific attributes. Variables
12 and subroutines subsequently defined in that package, or in packages
13 derived from that package may be given attributes with the same names as
14 the attribute handler subroutines, which will then be called at the end
15 of the compilation phase (i.e. in a `CHECK' block).
16
17EXAMPLE
18
19 package UNIVERSAL;
20 use Attribute::Handlers;
21
22 my %name;
23 sub name { return $name{$_[2]}||*{$_[1]}{NAME} }
24
25 sub Name :ATTR { $name{$_[2]} = $_[4] }
26
27 sub Purpose :ATTR { print STDERR "Purpose of ", &name, " is $_[4]\n" }
28
29 sub Unit :ATTR { print STDERR &name, " measured in $_[4]\n" }
30
31
32 package main;
33
34 my $capacity : Name(capacity)
35 : Purpose(to store max storage capacity for files)
36 : Unit(Gb);
37
38 package Other;
39
40 sub foo : Purpose(to foo all data before barring it) { }
41
42
43AUTHOR
44 Damian Conway (damian@conway.org)
45
46COPYRIGHT
d45dcc99 47 Copyright (c) 2001-2007, Damian Conway. All Rights Reserved.
0e9b9e0c 48 This module is free software. It may be used, redistributed
49 and/or modified under the same terms as Perl itself.
50
51
52==============================================================================
53
d45dcc99 540.79
0e9b9e0c 55
d45dcc99 56 - The version released with Perl 5.10.0
57 - All interpreted attributes are now passed as array references,
58 eventually nested.
59 - Don't AUTOLOAD DESTROY (Jerry D Hedden, cpan bug #1911)
60 - A::H is now able to report caller's file and line number
61 (David Feldman)
0e9b9e0c 62
63==============================================================================
64
65AVAILABILITY
66
67Attribute::Handlers has been uploaded to the CPAN
0e9b9e0c 68
69==============================================================================