BSD Ports

devel/p5-Test-Refcount 0.10 MidnightBSD

Assert reference counts on objects

System
MidnightBSD
Repository
mports
Maintainer
[email protected]
License
artistic, gpl+
Categories
devel, perl5

Description

The Perl garbage collector uses simple reference counting during the normal execution of a program. This means that cycles or unweakened references in other parts of code can keep an object around for longer than intended. To help avoid this problem, the reference count of a new object from its class constructor ought to be 1. This way, the caller can know the object will be properly DESTROYed when it drops all of its references to it.

Test::Refcount provides two test functions to help ensure this property holds for an object class, so as to be polite to its callers.

If the assertion fails; that is, if the actual reference count is different to what was expected, a trace of references to the object can be printed, if Marc Lehmann's Devel::FindRef module is installed. This may assist the developer in finding where the references are.

In the other systems

SystemPortVersion
MidnightBSDdevel/p5-Test-Refcount0.10
FreeBSDdevel/p5-Test-Refcount0.10
NetBSDdevel/p5-Test-Refcount0.10nb8
DragonFlydevel/p5-Test-Refcount0.10
HardenedBSDdevel/p5-Test-Refcount0.10
GhostBSDdevel/p5-Test-Refcount0.10

Install

Binary package:

mport install p5-Test-Refcount

From mports:

cd /usr/mports/devel/p5-Test-Refcount && make install clean

To depend on this port in another port's Makefile:

RUN_DEPENDS=	p5-Test-Refcount>0:devel/p5-Test-Refcount

Dependencies

As this port's Makefile names them.

Build 1

Runtime 1

Test 1

Build dependencies 1
Run dependencies 1

No port depends on this one.

Configuration

No options to configure.

USES
perl5
Service scripts
none

Files

pkg-plist 2
  • %%SITE_PERL%%/Test/Refcount.pm
  • %%PERL5_MAN3%%/Test::Refcount.3.gz
distinfo 1
FileSizeSHA256
Test-Refcount-0.10.tar.gz172180457c20a4956473d157c4faaff8814154bc93f6e2b543c2812a19ff8e3370eb2
Master sites 1
  • CPAN