comp.lang.ada
 help / color / mirror / Atom feed
From: eliben <eliben@gmail.com>
Subject: Re: parent package referring to child
Date: Wed, 10 Oct 2007 09:24:52 -0000
Date: 2007-10-10T09:24:52+00:00	[thread overview]
Message-ID: <1192008292.808925.227730@r29g2000hsg.googlegroups.com> (raw)
In-Reply-To: <1192007262.7362.69.camel@kartoffel>

On Oct 10, 11:07 am, Georg Bauhaus <rm.tsoh
+bauh...@maps.futureapps.de> wrote:
> On Tue, 2007-10-09 at 23:23 -0700, eliben wrote:
> > Hello,
>
> > I have a package FOO that encapsulates a large part of the system. Now
> > I need to add to it a public type (that should be visible by external
> > code) with a lot of enumerated names (hundreds). I don't want to fill
> > the spec of FOO with this huge type, so I thought it would be a good
> > idea to create a subpackage: FOO.Names, and place the type there.
> > However, declarations of subprograms in the spec of FOO must refer to
> > the names from FOO.Names, and Ada 95 won't let me do that because it's
> > parent referring to child.
>
> You can replicate the type as a derived type in FOO and create
> the Names package as a normal package:
>
>   type Twin is new Names.Huge;
>

True, but this would make Names and FOO seem unrelated, which they're
not. It would be a shame.

> Another possibility is to rearrange the package hierarchy so
> that FOO can become a sibling of Names.
>

Why does it make sense that two siblings can see each other in their
specs when they "with" each other, but a parent can't see a child ?

Eli




  reply	other threads:[~2007-10-10  9:24 UTC|newest]

Thread overview: 18+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2007-10-10  6:23 parent package referring to child eliben
2007-10-10  9:07 ` Georg Bauhaus
2007-10-10  9:24   ` eliben [this message]
2007-10-10 14:46     ` Adam Beneschan
2007-10-10 19:26   ` Simon Wright
2007-10-10 14:59 ` Matthew Heaney
2007-10-10 18:54   ` Vadim Godunko
2007-10-10 19:32     ` Matthew Heaney
2007-10-10 20:20       ` Adam Beneschan
2007-10-11  4:12         ` Randy Brukardt
2007-10-11 15:21           ` Adam Beneschan
2007-10-19 12:45           ` Vadim Godunko
2007-10-10 19:51   ` Matthew Heaney
2007-10-10 17:06 ` Jeffrey R. Carter
2007-10-10 19:17 ` anon
2007-10-11  9:45 ` george
2007-10-12  4:15   ` Jeffrey R. Carter
2007-10-12  9:51     ` Georg Bauhaus
replies disabled

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