From: "Adam Beneschan" <adam@irvine.com>
Subject: Re: how to import a package
Date: 5 Dec 2006 19:06:04 -0800
Date: 2006-12-05T19:06:04-08:00 [thread overview]
Message-ID: <1165374364.874225.237370@n67g2000cwd.googlegroups.com> (raw)
In-Reply-To: 1165371252.358817.57840@80g2000cwy.googlegroups.com
markww wrote:
> Hi,
>
> I have this snippet of code (from members here) which defines a generic
> type:
>
> generic
> type T is private;
> package P is
> type Node;
> type Node_Ptr is access Node;
> type Node is record
> Data : T;
> Prev_Rec : access Node; -- points to the next record or
> null if none exists.
> Next_Rec : access Node; -- points to the previous record or
> null if none exists.
> end record;
> end P;
>
> Now my compiler (gnat) complains that Node, and Node_Ptr are not seen
> by the rest of the application. Is this because they are scoped within
> package P?
>
> If so, how do I 'import' the package? Right now I just stuck this at
> the start of my main procedure:
P is a generic package so you have to instantiate it. Something like:
package Person_List is new P (T => Person_Rec);
Now, Node and Node_Ptr are visible within Person_List, and the "Data"
field in Person_List.Node will have type Person_Rec.
There's no such thing as a "generic type" in Ada.
-- Adam
next prev parent reply other threads:[~2006-12-06 3:06 UTC|newest]
Thread overview: 25+ messages / expand[flat|nested] mbox.gz Atom feed top
2006-12-06 2:14 how to import a package markww
2006-12-06 3:06 ` Adam Beneschan [this message]
2006-12-06 3:34 ` markww
2006-12-06 9:18 ` Simon Wright
2006-12-06 19:47 ` Jeffrey R. Carter
2006-12-06 23:56 ` markww
2006-12-07 1:18 ` Björn Persson
2006-12-07 1:26 ` Brian May
2006-12-07 4:14 ` markww
2006-12-07 4:40 ` Brian May
2006-12-07 9:32 ` Stuart
2006-12-07 11:21 ` Jean-Pierre Rosen
2006-12-11 6:16 ` markww
2006-12-11 6:50 ` markww
2006-12-11 9:40 ` Georg Bauhaus
2006-12-11 14:19 ` markww
2006-12-11 15:03 ` Dmitry A. Kazakov
2006-12-11 16:22 ` Adam Beneschan
2006-12-11 20:28 ` Jeffrey R. Carter
2006-12-12 3:19 ` markww
2006-12-12 3:31 ` Jeffrey R. Carter
2006-12-12 9:03 ` Stuart
2006-12-12 10:56 ` Georg Bauhaus
2006-12-11 7:00 ` Simon Wright
2006-12-07 4:06 ` Jeffrey R. Carter
replies disabled
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox