in reply to calling new inside the same module?
You could call new in the package itself. To specify the class, it's better to use ref $self than __PACKAGE__, so if you later inherit from the class, objects of the new class respect the class of the storing object.
push @{ $self->{stored} }, ref($self)->new($it);
It might be cleaner to let the user specify what class to use, so they can use various classes according to their needs (see Dependency Injection). It's not clear how validation should work in such a case, though: maybe the classes themselves should define a validate method? Or once the object's been constructed, it's guaranteed to be valid? Give us more details so we can answer (or ask) more questions.
($q=q:Sq=~/;[c](.)(.)/;chr(-||-|5+lengthSq)`"S|oS2"`map{chr |+ord }map{substrSq`S_+|`|}3E|-|`7**2-3:)=~y+S|`+$1,++print+eval$q,q,a,
|
|---|
| Replies are listed 'Best First'. | |
|---|---|
|
Re^2: calling new inside the same module?
by Discipulus (Canon) on Nov 26, 2018 at 18:10 UTC |