comp.lang.ada
 help / color / mirror / Atom feed
From: "Rego, P." <pvrego@gmail.com>
Cc: mailbox@dmitry-kazakov.de
Subject: Re: Constructors with multiple inheritance
Date: Thu, 29 Sep 2011 20:11:53 -0700 (PDT)
Date: 2011-09-29T20:11:53-07:00	[thread overview]
Message-ID: <4976045.4489.1317352313370.JavaMail.geo-discussion-forums@yqjw35> (raw)
In-Reply-To: <1rj1mmkvwud1d.dzqoy4jhdfca$.dlg@40tude.net>

> This is equivalent to:
> 
>     Obj := Construct (Obj.all);
> 
> But Obj is null.
Yes, I agree. But that's the point. I want to reserve the address (so I can build my queues from there).

> > So, how can I fix this?
> 
> I don't understand your design, but a constructing function of a
> non-limited type is just:
> 
>    function Construct return Parent_Class;
It works (and the current code utilizes this approach), but I cannot name it a method, since I cannot call the funtion from inside the class, using something like Object.Method. So I need to fix the package.function_constructor call and use a call of type object.method_constructor.

> And you don't need it because it has no parameters. Derive Parent_Class
> from Ada.Finalization.Controlled and override Initialize.

Yes and no. The real code is far more complex than this. I only took the several other parameters out from (from the three classes) because the text would be very long :-)

> P.S. I also see no MI in your design.
Sorry, lacking code. I cut the MI code but still got thinking on it when I wrote the title. At this point there is no mi really.

I will take a look in Ada.Finalization.Controlled anyway, maybe it gives me some idea.
thanks.



  reply	other threads:[~2011-09-30  3:11 UTC|newest]

Thread overview: 28+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2011-09-29 19:40 Constructors with multiple inheritance Rego, P.
2011-09-29 20:20 ` Dmitry A. Kazakov
2011-09-30  3:11   ` Rego, P. [this message]
2011-09-30  7:36     ` Dmitry A. Kazakov
2011-09-30 14:04       ` Rego, P.
2011-09-30 16:29         ` Robert A Duff
2011-09-30 19:14           ` Rego, P.
2011-09-30 16:42         ` Dmitry A. Kazakov
2011-09-30 19:42           ` Rego, P.
2011-10-06 12:46             ` Julian Leyh
2011-11-09  2:24           ` Rego, P.
2011-11-09  8:39             ` Dmitry A. Kazakov
2011-11-10  3:47               ` Rego, P.
2011-11-10  7:09                 ` AdaMagica
2011-11-10  7:20                   ` AdaMagica
2011-11-10  8:35                   ` Dmitry A. Kazakov
2011-11-12 15:16                     ` Rego, P.
2011-11-12 15:30                   ` Rego, P.
2011-11-12 16:28                     ` Dmitry A. Kazakov
2011-11-12 17:41                       ` Rego, P.
2011-11-10  8:33                 ` Simon Wright
2011-11-10  9:01                 ` Georg Bauhaus
2011-11-10  9:09                   ` Georg Bauhaus
2011-11-10 18:16                 ` Jeffrey Carter
2011-11-10 19:39                   ` Dmitry A. Kazakov
2011-11-09  9:00             ` Simon Wright
2011-11-10  3:54               ` Rego, P.
2011-10-07  0:08 ` Shark8
replies disabled

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox