SEARCH
NEW RPMS
DIRECTORIES
ABOUT
FAQ
VARIOUS
BLOG

 
 

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

Name : perl-Devel-EnforceEncapsulation
Version : 0.51 Vendor : Fedora Project
Release : 28.fc39 Date : 2023-07-20 23:14:46
Group : Unspecified Source RPM : perl-Devel-EnforceEncapsulation-0.51-28.fc39.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: /vol/rzm3/linux-fedora-buffet/fedora-secondary/releases/39/Everything/s390x/os/Packages/p

Content of RPM  Changelog  Provides Requires

Download
ftp.icm.edu.pl  perl-Devel-EnforceEncapsulation-0.51-28.fc39.noarch.rpm
ftp.icm.edu.pl  perl-Devel-EnforceEncapsulation-0.51-28.fc39.noarch.rpm
ftp.icm.edu.pl  perl-Devel-EnforceEncapsulation-0.51-28.fc39.noarch.rpm
ftp.icm.edu.pl  perl-Devel-EnforceEncapsulation-0.51-28.fc39.noarch.rpm
     

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

Requires :
perl(Carp)
perl(English)
perl(overload)
perl(strict)
perl(warnings)
perl-libs
rpmlib(CompressedFileNames) <= 3.0.4-1
rpmlib(FileDigests) <= 4.6.0-1
rpmlib(PayloadFilesHavePrefix) <= 4.0-1
rpmlib(PayloadIsZstd) <= 5.4.18-1


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

 
ICM