comp.lang.ada
 help / color / mirror / Atom feed
From: Natasha Kerensikova <lithiumcat@instinctive.eu>
Subject: Re: How to hide inherited implementation of a public interface?
Date: Fri, 21 Mar 2014 16:05:13 +0000 (UTC)
Date: 2014-03-21T16:05:13+00:00	[thread overview]
Message-ID: <slrnlioop3.i0l.lithiumcat@nat.rebma.instinctive.eu> (raw)
In-Reply-To: 1alx2290srgwz$.fg1dxhbr9oq8.dlg@40tude.net

On 2014-03-21, Dmitry A. Kazakov <mailbox@dmitry-kazakov.de> wrote:
> 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.

Actually my problem was that I couldn't find what I was supposed to put
instead of "-- What here?" to make my example work. It didn't
occur to me that nothing was the correct answer, and all my attempts at
declaring subprograms from the interface I.T where rejected by GNAT
(and it still feels a bit weird to publicly declare having an interface
without explicitly declaring any of the associated subprograms).

Actually it almost occurred to me, but my attempt with nothing was
reject by GNAT because I had something like
"type T is new A.T with limited record ..."
which produces a non-obvious error message. I should have investigated
further on the minimal example instead of the real code.

Anyway, problem solved, sorry for the noise /o\


Natasha


  reply	other threads:[~2014-03-21 16:05 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
2014-03-21 16:05   ` Natasha Kerensikova [this message]
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