comp.lang.ada
 help / color / mirror / Atom feed
From: Georg Bauhaus <rm.tsoh+bauhaus@maps.futureapps.de>
Subject: Re: parent package referring to child
Date: Wed, 10 Oct 2007 11:07:42 +0200
Date: 2007-10-10T11:07:43+02:00	[thread overview]
Message-ID: <1192007262.7362.69.camel@kartoffel> (raw)
In-Reply-To: <1191997397.865251.322480@d55g2000hsg.googlegroups.com>

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;

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

(Sometimes I think a folding editor is a Good Thing, once
I get used to it. The same with source navigation. :)





  reply	other threads:[~2007-10-10  9:07 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 [this message]
2007-10-10  9:24   ` eliben
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