Binary package “libuniversal-can-perl” in ubuntu trusty

safer version of UNIVERSAL::can

 The UNIVERSAL class provides a few default methods so that all objects can
 use them. Object orientation allows programmers to override these methods in
 subclasses to provide more specific and appropriate behavior.
 .
 Some authors call methods in the UNIVERSAL class on potential invocants as
 functions, bypassing any possible overriding. This is wrong and one should
 not do it. Unfortunately, not everyone heeds this warning and their bad code
 can break good code.
 .
 This module replaces UNIVERSAL::can() with a method that checks to see if
 the first argument is a valid invocant (whether an object -- a blessed
 referent -- or the name of a class). If so, and if the invocant's class has
 its own can() method, it calls that as a method. Otherwise, everything works
 as you might expect.
 .
 If someone attempts to call UNIVERSAL::can() as a function, this module will
 emit a lexical warning (see perllexwarn) to that effect. You can disable it
 with no warnings; or no warnings 'UNIVERSAL::isa';, but don't do that; fix
 the code instead.