lib:UNIVERSAL
See the current Perl documentation for lib:UNIVERSAL.
Here is our local, out-dated (pre-5.6) version:

UNIVERSAL - base class for
ALL classes (blessed references)

$io = $fd->isa("IO::Handle");
$sub = $obj->can('print');
$yes = UNIVERSAL::isa($ref, "HASH");

UNIVERSAL is the base class which all bless references will inherit from, see perlobj
UNIVERSAL provides the following methods
- isa ( TYPE )
-
isa returns true if REF is blessed into package TYPE
or inherits from package TYPE .
isa can be called as either a static or object method call.
- can ( METHOD )
-
can checks if the object has a method called METHOD . If it does then a reference to the sub is returned. If it does not then undef
is returned.
can can be called as either a static or object method call.
- VERSION ( [ REQUIRE ] )
-
VERSION will return the value of the variable $VERSION in the package the object is blessed into. If REQUIRE is given then it will do a comparison and die if the package version is not
greater than or equal to REQUIRE .
VERSION can be called as either a static or object method call.
The isa and can methods can also be called as subroutines
- UNIVERSAL::isa ( VAL, TYPE )
-
isa returns true if the first argument is a reference and either of the following statements
is true.
VAL is a blessed reference and is blessed into package TYPE
or inherits from package TYPE
VAL is a reference to a TYPE of perl variable (er
'HASH')
- UNIVERSAL::can ( VAL, METHOD )
-
If
VAL is a blessed reference which has a method called METHOD ,
can returns a reference to the subroutine. If VAL is not a blessed reference, or if it does not have a method METHOD ,
undef is returned.
These subroutines should not be imported via use UNIVERSAL qw(...) . If you want simple local access to them you can do
*isa = \&UNIVERSAL::isa;
to import isa into your package.
|