Help-Site Computer Manuals
Software
Hardware
Programming
Networking
  Algorithms & Data Structures   Programming Languages   Revision Control
  Protocols
  Cameras   Computers   Displays   Keyboards & Mice   Motherboards   Networking   Printers & Scanners   Storage
  Windows   Linux & Unix   Mac

UNIVERSAL
base class for ALL classes

UNIVERSAL - base class for ALL classes


NAME

UNIVERSAL - base class for ALL classes (blessed references)


SYNOPSIS


    $io = $fd->isa("IO::Handle");

    $sub = $obj->can('print');

    $yes = UNIVERSAL::isa($ref, "HASH");


DESCRIPTION

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


  *isa = \&UNIVERSAL::isa;

to import isa into your package.

Programminig
Wy
Wy
yW
Wy
Programming
Wy
Wy
Wy
Wy