comp.lang.ada
 help / color / mirror / Atom feed
From: "Dmitry A. Kazakov" <mailbox@dmitry-kazakov.de>
Subject: Re: How to hide inherited implementation of a public interface?
Date: Fri, 21 Mar 2014 14:54:54 +0100
Date: 2014-03-21T14:54:54+01:00	[thread overview]
Message-ID: <1alx2290srgwz$.fg1dxhbr9oq8.dlg@40tude.net> (raw)
In-Reply-To: slrnliodi3.i0l.lithiumcat@nat.rebma.instinctive.eu

On Fri, 21 Mar 2014 12:53:45 +0000 (UTC), Natasha Kerensikova wrote:

> So is there a way to publicly provide I.T while privately inheriting
> almost everything from A.T?

Where is a problem? If I understand your example right, A.T publicly
implements I.T. This sort of stuff is directly supported since Ada 95. Ada
95 inheritance is idempotent which includes Ada 2005 interfaces. You
publicly derive from I.T and privately from its descendant A.T, due to
idempotence declared and inherited I.Ts are considered same. Was this your
concern?

Not supported in Ada are delegation and additive inheritance
(non-idempotent).

-- 
Regards,
Dmitry A. Kazakov
http://www.dmitry-kazakov.de


  reply	other threads:[~2014-03-21 13:54 UTC|newest]

Thread overview: 7+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2014-03-21 12:53 How to hide inherited implementation of a public interface? Natasha Kerensikova
2014-03-21 13:54 ` Dmitry A. Kazakov [this message]
2014-03-21 16:05   ` Natasha Kerensikova
2014-03-21 17:58 ` Jeffrey Carter
2014-03-21 20:14   ` Dmitry A. Kazakov
2014-03-21 23:02     ` Randy Brukardt
2014-03-22  8:31       ` Dmitry A. Kazakov
replies disabled

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