comp.lang.ada
 help / color / mirror / Atom feed
From: news01+Steven.Murdoch@cl.cam.ac.uk (Steven Murdoch)
Subject: Re: Giving a package specification access to the private types of another package
Date: 10 Dec 2002 16:58:21 GMT
Date: 2002-12-10T16:58:21+00:00	[thread overview]
Message-ID: <at56fd$3cq$1@pegasus.csx.cam.ac.uk> (raw)
In-Reply-To: wccsmx5yimi.fsf@shell01.TheWorld.com

In article <wccsmx5yimi.fsf@shell01.TheWorld.com>,
 Robert A Duff <bobduff@shell01.TheWorld.com> writes:
>news01+Steven.Murdoch@cl.cam.ac.uk (Steven Murdoch) writes:
>
>>... A is used by B and by no other package,
>> all of the procedures in A are used by B.
>
>Then A is really part of the implementation of B, so it should be
>"private package B.A is...".

I think this is what I have done - and it works. My code is equivalent
to the example below. This works and seems to be the best way to do it.

-- b.ads
package B is
   procedure Proc_B;
private
    type Private_Type is new Integer;
end B;
--

-- b.adb
with B.A;
package body B is
   procedure Proc_B is
      Temp: Private_Type;
   begin
      A.Foobar(Temp);
   end;
end B;
--

-- b-a.ads
private package B.A is
   procedure Foobar(Temp: in Private_Type);
end B.A;
--

-- b-a.adb
package body B.A is
   procedure Foobar(Temp: in Private_Type) is
   begin
      null;
   end;
end B.A;
--

Thank you,
Steven Murdoch.




  reply	other threads:[~2002-12-10 16:58 UTC|newest]

Thread overview: 19+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2002-12-10 13:51 Giving a package specification access to the private types of another package Steven Murdoch
2002-12-10 13:53 ` Preben Randhol
2002-12-10 14:07   ` Steven Murdoch
2002-12-10 14:37     ` James S. Rogers
2002-12-10 14:54       ` Steven Murdoch
2002-12-10 15:54         ` Robert A Duff
2002-12-10 16:58           ` Steven Murdoch [this message]
2002-12-11  2:43             ` SteveD
2002-12-10 19:42     ` Stephen Leake
2002-12-10 14:36   ` Steven Murdoch
  -- strict thread matches above, loose matches on Subject: below --
2002-12-10 14:27 Grein, Christoph
2002-12-10 14:46 ` Steven Murdoch
2002-12-10 15:08   ` John Cupak
2002-12-10 15:31     ` Steven Murdoch
2002-12-11  5:51 Grein, Christoph
2002-12-11 19:22 ` Jeffrey Carter
2002-12-12  7:14 Grein, Christoph
2002-12-12 17:01 ` Jeffrey Carter
2002-12-13 20:25   ` Steven Murdoch
replies disabled

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