http://www.perlmonks.org?node_id=990020


in reply to Re^2: How can I re-program the exists function?
in thread How can I re-program the exists function?

my goal is to test an entry from a hashref, these entries contains objects

A reference to an object can't be undef() or even false (unless you do some strange overloading) so what you want is trivial:

mytest( $hash{object} || '' ); sub mytest { my( $obj ) = @_; return if ! $obj; }

The "|| ''" is there just to ensure that autovivification doesn't happen. I believe current versions of Perl actually avoid autovivification for this case if you don't assign to $_[0] in the mytest sub, but that's the kind of detail that is subject to change so I tend to "play it safe" on such issues.

- tye