FreeBSD.software
Home/devel/p5-Safe-Isa

p5-Safe-Isa

1.000010devel

Call isa, can, does and DOES safely on things that may not be objects

Since Perl allows us to provide a subroutine reference or a method name to the -> operator when used as a method call, and a subroutine doesn't require the invocant to actually be an object, we can create safe versions of isa, can and friends by using a subroutine reference that only tries to call the method if it's used on an object. e.g. my $isa_Foo = $maybe_an_object->$_call_if_object(isa => 'Foo'); Note that we don't handle trying class names, because many things are valid class names that you might not want to treat as one (like say "Matt") - the is_module_name function from Module::Runtime is a good way to check for something you might be able to call methods on if you want to do that.

$pkg install p5-Safe-Isa
metacpan.org/release/Safe-Isa
Origin
devel/p5-Safe-Isa
Size
14.6KiB
License
ART10, GPLv1+
Maintainer
sunpoet@FreeBSD.org
Dependencies
1 packages
Required by
17 packages

Dependencies (1)

Required By (17)