Pod::WSDL::AUTOLOAD - Base class for autoloading (internal use only)
package Foo;
our @ISA = qw/Pod::WSDL::AUTOLOAD/;
sub new {
my $pgk = shift;
bless {
_bar => 'blah',
}, $pgk
}
package main;
use Foo;
my $foo = new Foo();
print $foo->bar; # prints 'blah'
$foo->bar('bloerch'); # sets _bar to 'bloerch'
This module is used internally by Pod::WSDL. It is unlikely that you have to
interact directly with it. The Pod::WSDL::AUTOLOADER is used as a base class
and handels autoloading of accessor methods. If there is a property called
_foo in a hash based blessed reference, it will allow the use of the method
'foo' as a getter and setter. As a getter is returns the value of _foo, as a
setter it sets _foo with the argument and returns the object. You can exclude
the accessor by using a hash %FORBIDDEN_METHODS in the
derived class like that:
our %FORBIDDEN_METHODS = (
foo => {get => 1, set => 0},
bar => {get => 0, set => 0}
);
In this example it will not be allowed to set _foo and to set or
get _bar. If the user of the object tries to do so, it croaks. From within
the objects package every accessor is allowed.
Tarek Ahmed, <bloerch -the character every email address contains-
oelbsk.org>
Copyright (C) 2006 by Tarek Ahmed
This library is free software; you can redistribute it and/or
modify it under the same terms as Perl itself, either Perl version 5.8.5 or,
at your option, any later version of Perl 5 you may have available.