Please do not reply directly to this email. All additional comments should be made in the comments box of this bug. Summary: Review Request: perl-Devel-EnforceEncapsulation - Find access violations to blessed objects https://bugzilla.redhat.com/show_bug.cgi?id=695281 Summary: Review Request: perl-Devel-EnforceEncapsulation - Find access violations to blessed objects Product: Fedora Version: rawhide Platform: All OS/Version: Linux Status: NEW Severity: medium Priority: medium Component: Package Review AssignedTo: nobody@xxxxxxxxxxxxxxxxx ReportedBy: paul@xxxxxxxxxxxx QAContact: extras-qa@xxxxxxxxxxxxxxxxx CC: notting@xxxxxxxxxx, fedora-package-review@xxxxxxxxxx Estimated Hours: 0.0 Classification: Fedora Story Points: --- Spec URL: http://subversion.city-fan.org/repos/cfo-repo/perl-Devel-EnforceEncapsulation/branches/fedora/perl-Devel-EnforceEncapsulation.spec SRPM URL: http://www.city-fan.org/~paul/extras/perl-Devel-EnforceEncapsulation/perl-Devel-EnforceEncapsulation-0.50-3.fc16.src.rpm 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). This package is used in the author tests of Perl::Critic. -- Configure bugmail: https://bugzilla.redhat.com/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are on the CC list for the bug. _______________________________________________ package-review mailing list package-review@xxxxxxxxxxxxxxxxxxxxxxx https://admin.fedoraproject.org/mailman/listinfo/package-review