"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 one of the following statements is true.
*
"VAL" is a reference blessed into either package "TYPE" or a package
which inherits from package "TYPE".
*
"VAL" is a reference to a "TYPE" of Perl variable (e.g. 'HASH').
*
"VAL" is the name of a package that inherits from (or is itself)
package "TYPE".
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