Softpedia
 


LINUX CATEGORIES:



GLOBAL PAGES >>
NEWS ARCHIVE >>
SOFTPEDIA REVIEWS >>
MEET THE EDITORS >>
WEEK'S BEST
  • Linux Kernel 3.9.2 / 3....
  • LibreOffice 3.6.6 / 4.0.3
  • MPlayer 1.1.1
  • systemd 204
  • Arch Linux 2013.05.01
  • Blender 2.67
  • KDE Software Compilatio...
  • CrunchBang Linux Stable...
  • Elementary OS 0.1 / 0.2...
  • SystemRescueCd 3.6.0
  • Home > Linux > Programming > Perl Modules

    Sub::Install 0.924

    Download button

    No screenshots available
    Downloads: 551  View global page NEW!  Tell us about an update
    User Rating:
    Rated by:
    NOT RATED
    0 user(s)
    Developer:

    License / Price:

    Last Updated:

    Category:
    Ricardo Signes | More programs
    Perl Artistic License / FREE
    November 6th, 2007, 11:05 GMT
    ROOT / Programming / Perl Modules

     Read user reviews (0)  Refer to a friend  Subscribe

    Sub::Install description

    Sub::Install module allows you to install subroutines into packages easily.

    Sub::Install module allows you to install subroutines into packages easily.

    SYNOPSIS

    use Sub::Install;

    Sub::Install::install_sub({
    code => sub { ... },
    into => $package,
    as => $subname
    });

    This module makes it easy to install subroutines into packages without the unslightly mess of no strict or typeglobs lying about where just anyone can see them.

    FUNCTIONS

    install_sub
    Sub::Install::install_sub({
    code => &subroutine,
    into => "Finance::Shady",
    as => 'launder',
    });

    This routine installs a given code reference into a package as a normal subroutine. The above is equivalent to:

    no strict 'refs';
    *{"Finance::Shady" . '::' . "launder"} = &subroutine;

    If into is not given, the sub is installed into the calling package.
    If code is not a code reference, it is looked for as an existing sub in the package named in the from parameter. If from is not given, it will look in the calling package.

    If as is not given, and if code is a name, as will default to code. If as is not given, but if code is a code ref, Sub::Install will try to find the name of the given code ref and use that as as.

    That means that this code:

    Sub::Install::install_sub({
    code => 'twitch',
    from => 'Person::InPain',
    into => 'Person::Teenager',
    as => 'dance',
    });

    is the same as:

    package Person::Teenager;

    Sub::Install::install_sub({
    code => Person::InPain->can('twitch'),
    as => 'dance',
    });

    reinstall_sub

    This routine behaves exactly like "install_sub", but does not emit a warning if warnings are on and the destination is already defined.

    install_installers

    This routine is provided to allow Sub::Install compatibility with Sub::Installer. It installs install_sub and reinstall_sub methods into the package named by its argument.

    Sub::Install::install_installers('Code::Builder'); # just for us, please
    Code::Builder->install_sub({ name => $code_ref });

    Sub::Install::install_installers('UNIVERSAL'); # feeling lucky, punk?
    Anything::At::All->install_sub({ name => $code_ref });

    The installed installers are similar, but not identical, to those provided by Sub::Installer. They accept a single hash as an argument. The key/value pairs are used as the as and code parameters to the install_sub routine detailed above. The package name on which the method is called is used as the into parameter.

    Unlike Sub::Installer's install_sub will not eval strings into code, but will look for named code in the calling package.

    Product's homepage

    Requirements:

    · Perl

      


    TAGS:

    install subroutines | package subroutines | Perl module | install | subroutines | Perl

    Go to top

    WindowsGamesDriversMacLinuxScriptsMobileHandheldNews

    SUBMIT PROGRAM   |   ADVERTISE   |   GET HELP   |   SEND US FEEDBACK   |   RSS FEEDS   |   UPDATE YOUR SOFTWARE   |   ROMANIAN FORUM