Softpedia
 


LINUX CATEGORIES:



GLOBAL PAGES >>
NEWS ARCHIVE >>
SOFTPEDIA REVIEWS >>
MEET THE EDITORS >>
WEEK'S BEST
  • Linux Kernel 3.9.3 / 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

    parent 0.225

    Download button

    No screenshots available
    Downloads: 247  Tell us about an update
    User Rating:
    Rated by:
    NOT RATED
    0 user(s)
    Developer:

    License / Price:

    Last Updated:

    Category:
    Max Maischein | More programs
    Perl Artistic License / FREE
    February 9th, 2012, 12:58 GMT
    ROOT / Programming / Perl Modules

     Read user reviews (0)  Refer to a friend  Subscribe

    parent description

    Establish an ISA relationship with base classes at compile time

    parent is a Perl module that allows you to both load one or more modules, while setting up inheritance from those modules at the same time. Mostly similar in effect to

     package Baz;
     BEGIN {
     require Foo;
     require Bar;
     push @ISA, qw(Foo Bar);
     }


    By default, every base class needs to live in a file of its own. If you want to have a subclass and its parent class in the same file, you can tell parent not to load any modules by using the -norequire switch:

     package Foo;
     sub exclaim { "I CAN HAS PERL" }

     package DoesNotLoadFooBar;
     use parent -norequire, 'Foo', 'Bar';
     # will not go looking for Foo.pm or Bar.pm


    This is equivalent to the following code:

     package Foo;
     sub exclaim { "I CAN HAS PERL" }

     package DoesNotLoadFooBar;
     push @DoesNotLoadFooBar::ISA, 'Foo', 'Bar';


    This is also helpful for the case where a package lives within a differently named file:

     package MyHash;
     use Tie::Hash;
     use parent -norequire, 'Tie::StdHash';


    This is equivalent to the following code:

     package MyHash;
     require Tie::Hash;
     push @ISA, 'Tie::StdHash';


    If you want to load a subclass from a file that require would not consider an eligible filename (that is, it does not end in either .pm or .pmc), use the following code:

     package MySecondPlugin;
     require './plugins/custom.plugin'; # contains Plugin::Custom
     use parent -norequire, 'Plugin::Custom';


    SYNOPSIS

     package Baz;
     use parent qw(Foo Bar);



    Product's homepage

    Requirements:

    · Perl

      


    TAGS:

    ISA relationship | Perl module | Perl | ISA | relationship

    Go to top

    WindowsGamesDriversMacLinuxScriptsMobileHandheldNews

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