perl-Devel-TraceUse - Hack around calling UNIVERSAL::can() as a function

Property Value
Distribution ALT Linux Sisyphus
Repository Autoimports noarch
Package filename perl-Devel-TraceUse-2.096-alt1_1.noarch.rpm
Package name perl-Devel-TraceUse
Package version 2.096
Package release alt1_1
Package architecture noarch
Package type rpm
Category Development/Perl
Homepage -
License -
Maintainer -
Download size 44.13 KB
Installed size 44.13 KB
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 you should not
do it. Unfortunately, not everyone heeds this warning and their bad code can
break your good code.
Fortunately, this upstream_name 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 upstream_name 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.


Package Version Architecture Repository
perl-Devel-TraceUse - - -


Name Value
/usr/share/perl5 -
rpmlib(PayloadIsLzma) -


Name Value
perl(Devel/ = 2.096
perl-Devel-TraceUse = 2.096-alt1_1


Type URL
Binary Package perl-Devel-TraceUse-2.096-alt1_1.noarch.rpm
Source Package perl-Devel-TraceUse-2.096-alt1_1.src.rpm

Install Howto

  1. Add the following line to /etc/apt/sources.list:
    rpm [Sisyphus] noarch autoimports
    rpm [Sisyphus] noarch autoimports
  2. Update the package index:
    # sudo apt-get update
  3. Install perl-Devel-TraceUse rpm package:
    # sudo apt-get install perl-Devel-TraceUse



See Also

Package Description
perl-Devel-TraceVars-0.03-alt2_8.noarch.rpm Print each line of code with variables evaluated
perl-Devel-TrackObjects-0.600-alt1.noarch.rpm perl module Devel-TrackObjects
perl-Devel-TrackSIG-0.04-alt1.noarch.rpm Track those pesky signal handlers
perl-Devel-Trepan-Deparse-3.1.0-alt1.noarch.rpm Adds deparse support via B::DeparseTree to Devel::Trepan
perl-Devel-Trepan-Disassemble-2.0.2-alt1.noarch.rpm Adds disassemble support via B::Concise to Devel::Trepan
perl-Devel-Trepan-Shell-1.5-alt1.noarch.rpm Adds shell support to Devel::Trepan via Devel::REPL
perl-Devel-Trepan-Shell-scripts-1.5-alt1.noarch.rpm Devel-Trepan-Shell scripts
perl-Devel-Trepan-v1.0.0-alt1_2.noarch.rpm A gdb-like debugger port of Ruby Trepan
perl-Devel-TypeCheck-1.2-alt1.noarch.rpm Identify type-unsafe usage in Perl programs
perl-Devel-Unplug-0.03-alt1.noarch.rpm Simulate the non-availability of modules
perl-Devel-UseAnyFunc-1-alt1.noarch.rpm perl module Devel-UseAnyFunc
perl-Devel-UseFromCommandLineOnly-1.00-alt1.noarch.rpm use a module from the command line only
perl-Devel-Valgrind-Massif-OutputParser-0.005-alt1.noarch.rpm Parse the output from massif just like
perl-Devel-VersionDump-0.02-alt1.noarch.rpm perl module Devel-VersionDump
perl-Devel-WarnGlobal-0.09-alt1.noarch.rpm Helps track down and eliminate globals