SEARCH
NEW RPMS
DIRECTORIES
ABOUT
FAQ
VARIOUS
BLOG

 
 

perl-Devel-EnforceEncapsulation rpm build for : Fedora 21. For other distributions click perl-Devel-EnforceEncapsulation.

Name : perl-Devel-EnforceEncapsulation
Version : 0.51 Vendor : Fedora Project
Release : 2.fc21 Date : 2014-06-07 06:00:42
Group : Development/Libraries Source RPM : perl-Devel-EnforceEncapsulation-0.51-2.fc21.src.rpm
Size : 0.01 MB
Packager : Fedora Project
Summary : Find access violations to blessed objects
Description :
Encapsulation is the practice of creating subroutines to access the properties
of a class instead of accessing those properties directly. The advantage of
good encapsulation is that the author is permitted to change the internal
implementation of a class without breaking its usage.

Object-oriented programming in Perl is most commonly implemented via blessed
hashes. This practice makes it easy for users of a class to violate
encapsulation by simply accessing the hash values directly. Although less
common, the same applies to classes implemented via blessed arrays, scalars,
filehandles, etc.

This module is a hack to block those direct accesses. If you try to access a
hash value of an object from its own class, or a superclass or subclass, all
goes well. If you try to access a hash value from any other package, an
exception is thrown. The same applies to the scalar value of a blessed scalar,
entry in a blessed array, etc.

To be clear: this class is NOT intended for strict enforcement of
encapsulation. If you want bullet-proof encapsulation, use inside-out objects
or the like. Instead, this module is intended to be a development or debugging
aid in catching places where direct access is used against classes implemented
as blessed hashes.

To repeat: the encapsulation enforced here is a hack and is easily
circumvented. Please use this module for good (finding bugs), not evil (making
life harder for downstream developers).

RPM found in directory: /packages/linux-pbone/archive.fedoraproject.org/fedora/linux/releases/21/Everything/i386/os/Packages/p

Content of RPM  Changelog  Provides Requires

Download
ftp.icm.edu.pl  perl-Devel-EnforceEncapsulation-0.51-2.fc21.noarch.rpm
ftp.icm.edu.pl  perl-Devel-EnforceEncapsulation-0.51-2.fc21.noarch.rpm
ftp.icm.edu.pl  perl-Devel-EnforceEncapsulation-0.51-2.fc21.noarch.rpm
     

Provides :
perl(Devel::EnforceEncapsulation)
perl-Devel-EnforceEncapsulation

Requires :
rpmlib(FileDigests) <= 4.6.0-1
rpmlib(CompressedFileNames) <= 3.0.4-1
perl(warnings)
perl(Carp)
perl(overload)
perl(:MODULE_COMPAT_5.18.2)
rpmlib(PayloadIsXz) <= 5.2-1
rpmlib(PayloadFilesHavePrefix) <= 4.0-1
perl(English)
perl(strict)


Content of RPM :
/usr/share/doc/perl-Devel-EnforceEncapsulation
/usr/share/doc/perl-Devel-EnforceEncapsulation/CHANGES
/usr/share/doc/perl-Devel-EnforceEncapsulation/LICENSE
/usr/share/doc/perl-Devel-EnforceEncapsulation/README
/usr/share/man/man3/Devel::EnforceEncapsulation.3pm.gz
/usr/share/perl5/vendor_perl/Devel
/usr/share/perl5/vendor_perl/Devel/EnforceEncapsulation.pm

 
ICM