comp.lang.ada
 help / color / mirror / Atom feed
From: dennison@telepath.com
Subject: Re: Design Question: How Best To Structure Cross-Referencing Types In Ada 95
Date: 1999/01/21
Date: 1999-01-21T00:00:00+00:00	[thread overview]
Message-ID: <787dsd$ig3$1@nnrp1.dejanews.com> (raw)
In-Reply-To: 36A68FCA.E1EEAFFE@hiwaay.net

In article <36A68FCA.E1EEAFFE@hiwaay.net>,
  aeg@hiwaay.net, glover@thaad.tecmasters.com wrote:

> In Ada83 I have something that looks like:
>
> package XYZ is
...
>   type Part is
>     record
>       Parent_Car : Car;
>     end record;
>   type Car is
>     record
>       Part1 : Part;
>       Part2 : Part;
>     end record;
> end XYZ;
>

Not too much like this I hope. Elaboration of this would involve infinite
mutual recursion! I think its safe to assume that at least one of these
(probably Parent_Car) is actually a *pointer* to the other.

> behave like this and I end up with one large package.  I would rather
> have the
> types split into different packages, but I would get circular
> dependencies when
> compiling the specs.
>
> Is there a neat Ada95 way of getting around this cross-referencing
> problem?

Not that I know of. I thought I heard somewhere that gnat may be able to
handle two specs withing each other. That may solve part of your problem.

T.E.D.

-----------== Posted via Deja News, The Discussion Network ==----------
http://www.dejanews.com/       Search, Read, Discuss, or Start Your Own    




  reply	other threads:[~1999-01-21  0:00 UTC|newest]

Thread overview: 10+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
1999-01-20  0:00 Design Question: How Best To Structure Cross-Referencing Types In Ada 95 Anthony E. Glover
1999-01-21  0:00 ` dennison [this message]
1999-01-21  0:00 ` Matthew Heaney
1999-01-30  0:00   ` Nick Roberts
1999-01-31  0:00     ` Matthew Heaney
1999-01-21  0:00 ` dewar
1999-01-21  0:00   ` Brian Rogoff
1999-01-26  0:00   ` Dale Stanbrough
1999-01-22  0:00 ` Steve Whalen
1999-01-22  0:00   ` dennison
replies disabled

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