develooper Front page | perl.moose | Postings from April 2018

Re: BUILD and how to create a subclass object when creating a parent

Thread Previous | Thread Next
Arjan Widlak - United Knowledge
April 25, 2018 20:56
Re: BUILD and how to create a subclass object when creating a parent
Message ID:
And to also give a diagram, as you ask:

Asset::Container::KDU1        Response1 Response::Summary1
Del-> Asset::Container::KDU2 (6)    Response2 (5) Response::Summary2 (4)
Asset::Container::KDU3 (3)    Response3 (2) Response::Summary3 (1)

Above KDU2 is a child of KDU1, not in terms of classes, but in terms of 
lineage. Like a page and a subpage. A Response is the response of a user 
on a KDU. A Summary is a subclass of Response as described.

Now if I call delete on instance KDU2, I would like to see:

1 deletion of Summary3
2 deletion of Response3
3 deletion of KDU3
4 deletion of Summary2
5 deletion of Response2
6 deletion of KDU2

Kind regards,

On 25/04/18 19:54, Karen Etheridge wrote:
> I'm not sure you mean by create a subclass instance on creation of its 
> superclass. Are you intending to have the superclass object have an 
> attribute that holds an instance of the subclass? Perhaps can you show 
> a diagram of what you intend your data to look like after construction 
> is complete?
> On Mon, Apr 23, 2018 at 7:53 AM, Arjan Widlak - United Knowledge 
> < <>> wrote:
>     Hi,
>     I tried to use the BUILD method to create an instance of a
>     subclass on creating an instance of the parent. This does not work
>     and the documentation clearly explains why:
>     <>
>     BUILD methods are called from parent to child and hence this
>     triggers a loop.
>     I am able to do this with the around method modifier, however I
>     need to override the behaviour in the subclass. This is also seems
>     error prone and bad practice.
>     But if this cannot be done this way, how should it be done? How
>     can I always create a subclass instance on creation of it's
>     superclass?
>     Kind regards,
>     Arjan

Thread Previous | Thread Next Perl Programming lists via nntp and http.
Comments to Ask Bjørn Hansen at | Group listing | About