Download Shareware and Freeware Software for Windows, Linux, Macintosh, PDA

line Home  |  About Us  |  Link To Us  |  FAQ  |  Contact

Serving Software Downloads in 976 Categories, Downloaded 29.982.521 Times

Class::DispatchToAll 0.11

  Date Added: February 17, 2010  |  Visits: 704

Class::DispatchToAll

Report Broken Link
Printer Friendly Version


Product Homepage
Download (71 downloads)

Class::DispatchToAll Perl module can dispatch a method call to all inherited methods. SYNOPSIS package My::Class; our @ISA=qw(SomeClass SomeOtherClass More::Classes); use Class::DispatchToAll qw(dispatch_to_all); my $self=bless {},My::Class # not a proper constructor, I know.. # this calls some_method in all Classes My::Class inherits from # and all classes those classes inherit from, and all ... you get # the point. $self->dispatch_to_all(some_method); # saves all return values from all calls in an array my @returns=$self->dispatch_to_all(some_method); See the Docs of Damian Conways Module Class::Delegation for a good introduction about Dispatching vs. Inheritance. Class::DispatchToAll enables you to call all instantances of a method in your inheritance tree (or labyrinth..). The standard Perl behaviour is to call only the lefternmost instance it can fing doing a depth first traversial. Imagine the following class structure: C / A B C::C / / A::A D / My::Class Perl will try to find a method in this mess in this order: My::Class -> A::A -> A -> B -> D -> B -> C::C -> C (Note that it will look twice in B because B is a parent of both A::A and D)) As soon as Perl finds the method somewhere, it will short-circuit out of its search and invoke the method. And that is exactly the behaviour Class::DispatchToAll changes. If you use dispatch_to_all (provided by Class::DispatchToAll) to call your method, Perl will look in all of the aforementioned packages and run all the methods it can find. It will even collect all the return values and return them to you as an array, if you want it too..

Requirements: No special requirements
Platforms: Linux
Keyword: Classdispatchtoall Dispatch Dispatchtoall Dispatchtoall Perl Inherited Libraries Method Method Call Module Perl Perl Module Programming
Users rating: 0/10

License: Freeware Size: 5.12 KB
CLASS::DISPATCHTOALL RELATED
Libraries  -  OpenGeoDB Perl module 0.4
OpenGeDB Perl module is a module to access the OpenGeoDB database and calculate all ZIP codes in a certain radius..
3.07 KB  
Libraries  -  XML::Grove 0.46 Alpha
XML::Grove is a Perl module with Perl-style XML objects. SYNOPSIS use XML::Grove; # Basic parsing and grove building use XML::Grove::Builder; use XML::Parser::PerlSAX; $grove_builder = XML::Grove::Builder->new; $parser =...
27.65 KB  
Libraries  -  FFI::Library 1.02
FFI::Library is a module with Perl Access to Dynamically Loaded Libraries. SYNOPSIS use FFI::Library; $lib = FFI::Library->new("mylib"); $fn = $lib->function("fn", "signature"); $ret = $fn->(...); This module provides access from Perl to...
16.38 KB  
Libraries  -  Module::Crypt 0.04
Module::Crypt is a Perl module to encrypt your Perl code and compile it into XS. SYNOPSIS use Module::Crypt; # for a single file: CryptModule( file => Bar.pm, install_base => /path/to/my/lib ); # for multiple files: CryptModule(...
7.17 KB  
Libraries  -  Inline::C 0.44
Inline::C is a Perl module that can Write Perl Subroutines in C. Inline::C is a module that allows you to write Perl subroutines in C. Since version 0.30 the Inline module supports multiple programming languages and each language has its own...
92.16 KB  
Libraries  -  Digest::MD5::Perl 1.8
Digest::MD5::Perl is a Perl implementation of Ron Rivests MD5 Algorithm. This is not an interface (like Digest::MD5) but a Perl implementation of MD5. It is written in perl only and because of this it is slow but it works without C-Code. You...
73.73 KB  
Libraries  -  Devel::TraceMethods 1.00
Devel::TraceMethods is a Perl module for tracing module calls. SYNOPSIS use Devel::TraceMethods qw( PackageOne PackageTwo ); Devel::TraceMethods allows you to attach a logging subroutine of your choosing to all of the methods and functions...
5.12 KB  
Libraries  -  Path::Graph 0.02
Path::Graph is a Perl module created to generate paths from hash graph. SYNOPSIS Code 1 #!usr/bin/perl my %graph = ( A => {B=>1,C=>4}, B => {A=>1,C=>2}, C => {A=>4,B=>2} ); use Paths::Graph; my $g =...
6.14 KB  
Libraries  -  Code::Perl 0.03
Code::Perl is a Perl module to produce Perl code from a tree. SYNOPSIS use Code::Perl::Expr qw( :easy ); my $c = derefh(scal(hash), calls(getkey)); print $c->perl; # ($hash)->{getkey()} Code::Perl allows you to build chunks of Perl code...
17.41 KB  
Libraries  -  B::Lint 1.09
B::Lint module contains Perl lint. SYNOPSIS perl -MO=Lint[,OPTIONS] foo.pl The B::Lint module is equivalent to an extended version of the -w option of perl. It is named after the program lint which carries out a similar process for C...
17.41 KB  
NEW DOWNLOADS IN PROGRAMMING, LIBRARIES
Programming  -  FLEX-db Digital Asset Manager 3.0.9
FLEX-db - an enterprise Digital Asset Manager (DAM). It ingests and links metadata with files, creates thumbnails, and processes files using business rules. FLEX-db has a JSP client, Java app server for file input and output and an EJB metadata...
21.57 MB  
Programming  -  Libicom 0.9.0
The libicom library is a character based dynamicly linked library for Linux. It is used to remotely control the Icom IC-R8500 wide band receiver via an RS232 link. All call and return parameters to the control functions are character string based....
20.48 KB  
Programming  -  dotdesktop 0.3
Dotdesktop library provides ability to parse desktop entry file and access the information in a convenient way. Desktop entry file format is defined by freedesktop.org, it is used to describe information about an application such as the name and...
327.68 KB  
Programming  -  Cedalion for Linux 0.2.6
Cedalion is a programming language that allows its users to add new abstractions and define (and use) internal DSLs. Its innovation is in the fact that it uses projectional editing to allow the new abstractions to have no syntactic limitations.
471.04 KB  
Programming  -  libyasl 0.2
Libyasl is a C++ class library to easily realize TCP/UDP/Multicast clientsand servers in IPv4 and IPv6 environments under GNU/Linux systems.
143.36 KB  
Libraries  -  wolfSSL 3.12.0
The wolfSSL embedded SSL/TLS library is a lightweight SSL library written in ANSI standard C and targeted for embedded and RTOS environments - primarily because of its small size, speed, and feature set. It is commonly used in standard operating...
2.73 MB  
Libraries  -  EuGTK 4.8.9
Makes it easy to develop good- looking, fast, cross-platform programs that run on Linux, OS X, and Windows. Euphoria is a very fast interpreted/compiled language with straight-forward syntax. EuGTK allows programming in a clean, object-oriented...
10.68 MB  
Libraries  -  Linux User Group Library Manager 1.0
The LUG Library Manager is a project to help Linux User Groups start their own library. A LUG library is helpful to the community at large because it increases access to information, and gives everyone the opportunity to become more knowledgeable.
5.35 KB  
Libraries  -  Module::MakefilePL::Parse 0.12
Module::MakefilePL::Parse is a Perl module to parse required modules from Makefile.PL. SYNOPSIS use Module::MakefilePL::Parse; open $fh, Makefile.PL; $parser = Module::MakefilePL::Parse->new( join("", ) ); $info = $parser->required;...
8.19 KB  
Libraries  -  sqlpp 0.06
sqlpp Perl package is a SQL preprocessor. sqlpp is a conventional cpp-alike preprocessor taught to understand SQL ( PgSQL, in particular) syntax specificities. In addition to the standard #define/#ifdef/#else/#endif cohort, provides also...
10.24 KB