If your aim is to create a class visible only to the enclosing class, then something along the following lines might suffice:
# File: Frobnicate.pm
our @ISA = qw/Frobnicate/;
Note that, within Frobnicate.pm
- All classes (packages) are visible to each other.
- Only Frobnicate is accessible (& thus available as a superclass) externally.
- Frobnicate::Foo subclasses (and thus has a 'relationship' with) Frobnicate.
- Frobnicate::Bar has no 'relationship' with Frobnicate
Also, note that there is no need to use
the subclass & utility classes where sub-classing behaviour is required.
The most apposite & absolutely correct) observations of both GrandFather & dsheroh have, between them, served to most ably demonstrate the...
- Voracity of my sig here on the monastry
- Correctness/validity of the (sometimes self-imposed) coding standards (&/or conventions) to which I have worked - my posting was purely experience based
A user level that continues to overstate my experience :-))