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 32.402.744 Times

Devel::SelfStubber 5.8.8

  Date Added: October 04, 2010  |  Visits: 573

Devel::SelfStubber

Report Broken Link
Printer Friendly Version


Product Homepage
Download (73 downloads)



Devel::SelfStubber is a Perl module that can generate stubs for a SelfLoading module. SYNOPSIS To generate just the stubs: use Devel::SelfStubber; Devel::SelfStubber->stub(MODULENAME,MY_LIB_DIR); or to generate the whole module with stubs inserted correctly use Devel::SelfStubber; $Devel::SelfStubber::JUST_STUBS=0; Devel::SelfStubber->stub(MODULENAME,MY_LIB_DIR); MODULENAME is the Perl module name, e.g. Devel::SelfStubber, NOT Devel/SelfStubber or Devel/SelfStubber.pm. MY_LIB_DIR defaults to . if not present. Devel::SelfStubber prints the stubs you need to put in the module before the __DATA__ token (or you can get it to print the entire module with stubs correctly placed). The stubs ensure that if a method is called, it will get loaded. They are needed specifically for inherited autoloaded methods. This is best explained using the following example: Assume four classes, A,B,C & D. A is the root class, B is a subclass of A, C is a subclass of B, and D is another subclass of A. A / B D / C If D calls an autoloaded method foo which is defined in class A, then the method is loaded into class A, then executed. If C then calls method foo, and that method was reimplemented in class B, but set to be autoloaded, then the lookup mechanism never gets to the AUTOLOAD mechanism in B because it first finds the method already loaded in A, and so erroneously uses that. If the method foo had been stubbed in B, then the lookup mechanism would have found the stub, and correctly loaded and used the sub from B. So, for classes and subclasses to have inheritance correctly work with autoloading, you need to ensure stubs are loaded. The SelfLoader can load stubs automatically at module initialization with the statement SelfLoader->load_stubs();, but you may wish to avoid having the stub loading overhead associated with your initialization (though note that the SelfLoader::load_stubs method will be called sooner or later - at latest when the first sub is being autoloaded). In this case, you can put the sub stubs before the __DATA__ token. This can be done manually, but this module allows automatic generation of the stubs. By default it just prints the stubs, but you can set the global $Devel::SelfStubber::JUST_STUBS to 0 and it will print out the entire module with the stubs positioned correctly. At the very least, this is useful to see what the SelfLoader thinks are stubs - in order to ensure future versions of the SelfStubber remain in step with the SelfLoader, the SelfStubber actually uses the SelfLoader to determine which stubs are needed..

Requirements: No special requirements
Platforms: Linux
Keyword: Develselfstubber Dir Generate Lib Libraries Method Module Perl Perl Module Selfloader Selfloading Selfstubber Stubs
Users rating: 0/10

License: Freeware Size: 12.2 MB
USER REVIEWS
More Reviews or Write Review


DEVEL::SELFSTUBBER 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  -  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  
Modules  -  Flickr API 5.x-1.x-dev 1.0
You don't need this module unless another module requires it or you want to develop a new Flickr-based module.To use this module a Flickr API key is required.InstallationUnpack in your modules folder (usually /sites/all/modules/) and enable under...
 
Libraries  -  Class::Declare::Attributes 0.04
Class::Declare::Attributes is a Perl module with Class::Declare method types using Perl attributes. SYNOPSIS package My::Class; use 5.006; use strict; use warnings; use base qw( Class::Declare::Attributes ); # declare the...
21.5 KB  
Libraries  -  perlrpcgen 0.71
perlrpcgen is a Perl module that can generate Perl interfaces from ONC RPC interface definitions. SYNOPSIS perlrpcgen [--makefile] [--all] [--client] [--server] [--data] [--constants] [--module module] [--typemap typemap] [--fork] [--perl...
37.89 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  -  Myco::Devel 1.22
Myco::Devel is a Perl module for myco Developers Guide. This guide is intended for developers wanting to build applications with myco. You should have a decent grasp of the Perl programming language, or else a solid grasp of another programming...
102.4 KB  
Libraries  -  Bio::Root::Object 1.4
Bio::Root::Object is a core Perl 5 object. SYNOPSIS # Use this module as the root of your inheritance tree. Object Creation require Bio::Root::Object; $dad = new Bio::Root::Object(); $son = new Bio::Root::Object(-name => Junior, -parent...
4.7 MB  
Libraries  -  Module::Reload::Selective 1.02
Module::Reload::Selective can reload Perl modules during development. SYNOPSIS Instead of: use Foobar::MyModule; Do this: use Module::Reload::Selective; &Module::Reload::Selective->reload(qw(Foobar::MyModule)); Or, if you need the...
10.24 KB  
NEW DOWNLOADS IN PROGRAMMING, LIBRARIES
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  -  Math::GMPf 0.29
Math::GMPf - perl interface to the GMP library's floating point (mpf) functions.
30.72 KB  
Programming  -  Net::Wire10 1.08
Net::Wire10 is a Pure Perl connector that talks to Sphinx, MySQL and Drizzle servers. Net::Wire10 implements the low-level network protocol, alias the MySQL wire protocol version 10, necessary for talking to one of the aforementioned...
30.72 KB  
Programming  -  logilab-common 0.56.2
a bunch of modules providing low level functionnalities shared among some python projects devel Please note that some of the modules have some extra dependencies. For instance, logilab.common.db will require a db-api 2.0 compliant...
174.08 KB  
Programming  -  OpenSSL for linux 1.0.0a
The OpenSSL Project is a collaborative effort to develop a robust, commercial-grade, full-featured, and Open Source toolkit implementing the Secure Sockets Layer (SSL v2/v3) and Transport Layer Security (TLS v1) protocols as well as a...
3.83 MB  
Libraries  -  wolfSSL 3.15.3
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...
3.88 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