diff options
Diffstat (limited to 'lib')
-rw-r--r-- | lib/fields.pm | 23 |
1 files changed, 23 insertions, 0 deletions
diff --git a/lib/fields.pm b/lib/fields.pm index 8e2d6398bb..c2cf1d6a5d 100644 --- a/lib/fields.pm +++ b/lib/fields.pm @@ -1,5 +1,28 @@ package fields; +=head1 NAME + +fields - compile-time class fields + +=head1 SYNOPSIS + + { + package Foo; + use fields qw(foo bar baz); + } + ... + my Foo $var = new Foo; + $var->{foo} = 42; + + # This will generate a compile-time error. + $var->{zap} = 42; + +=head1 DESCRIPTION + +The C<fields> pragma enables compile-time verified class fields. + +=cut + sub import { my $class = shift; my ($package) = caller; |