diff options
author | Mike Guy <mjtg@cam.ac.uk> | 2001-05-01 21:12:11 +0100 |
---|---|---|
committer | Jarkko Hietaniemi <jhi@iki.fi> | 2001-05-01 18:33:51 +0000 |
commit | 3189d65a81e5869a7ba75fe52949ef916f5017e9 (patch) | |
tree | 9542cf81ba91db1b6d7d4c2b2be11e60a7b2e6b0 /pod/perlobj.pod | |
parent | 0ecd3ba2f9cc10124e1b1548816d989cfc59a802 (diff) | |
download | perl-3189d65a81e5869a7ba75fe52949ef916f5017e9.tar.gz |
Extra UNIVERSAL documentation
Message-Id: <E14ufZD-0007kD-00@libra.cus.cam.ac.uk>
p4raw-id: //depot/perl@9933
Diffstat (limited to 'pod/perlobj.pod')
-rw-r--r-- | pod/perlobj.pod | 17 |
1 files changed, 14 insertions, 3 deletions
diff --git a/pod/perlobj.pod b/pod/perlobj.pod index f31ce2c993..7d7eee55a8 100644 --- a/pod/perlobj.pod +++ b/pod/perlobj.pod @@ -361,21 +361,32 @@ are inherited by all other classes: C<isa> returns I<true> if its object is blessed into a subclass of C<CLASS> -You can also call C<UNIVERSAL::isa> as a sub with two arguments. The -first does not need to be an object or even a reference. This -allows the ability to check what a reference points to, or whether +You can also call C<UNIVERSAL::isa> as a subroutine with two arguments. +The first does not need to be an object or even a reference. This +allows you to check what a reference points to, or whether something is a reference of a given type. Example if(UNIVERSAL::isa($ref, 'ARRAY')) { #... } +To determine if a reference is a blessed object, you can write + + print "It's an object\n" if UNIVERSAL::isa($val, 'UNIVERSAL'); + =item can(METHOD) C<can> checks to see if its object has a method called C<METHOD>, if it does then a reference to the sub is returned, if it does not then I<undef> is returned. +C<UNIVERSAL::can> can also be called as a subroutine with two arguments. +It'll always return I<undef> if its first argument isn't an object or a +class name. So here's another way to check if a reference is a +blessed object + + print "It's still an object\n" if UNIVERSAL::can($val, 'can'); + =item VERSION( [NEED] ) C<VERSION> returns the version number of the class (package). If the |