From: AdaMagica <christ-usch.grein@t-online.de>
Subject: Re: Problem with generic linked list package
Date: Sat, 9 Aug 2014 07:58:33 -0700 (PDT)
Date: 2014-08-09T07:58:33-07:00 [thread overview]
Message-ID: <024ef516-7b08-4189-95c6-93ba8defbbdb@googlegroups.com> (raw)
In-Reply-To: <75864d79-609c-4e37-98d8-6b5f050ad59d@googlegroups.com>
There is a declaration of Element before the functions:
type Element is private;
>
> with function "<"(Left, Right : Element) return Boolean is <>;
> with function "="(Left, Right : Element) return Boolean is <>;
>
> There is no "<" and "=" defined for Element_Type, normally. So the "<>" seems to do the trick but why?
>
> The box tells the compiler that it will get the info it needs later. But in this case there is no later, isn't it?
There is a later indeed! It's when and where you instantiate the generic.
The actual type for Element you use to instantiate must have functions < and =. If not, the instantiation is illegal. The box <> tells the compiler: "Look at the place of the instantiation for those functions. If they exist, take them; if they don't exist, don't accept the instantiation."
next prev parent reply other threads:[~2014-08-09 14:58 UTC|newest]
Thread overview: 28+ messages / expand[flat|nested] mbox.gz Atom feed top
2014-07-28 13:26 Problem with generic linked list package Laurent
2014-07-29 7:51 ` Jacob Sparre Andersen
2014-07-29 8:12 ` Laurent
2014-07-29 8:27 ` Stephen Leake
2014-07-29 15:38 ` Laurent
2014-08-07 19:07 ` Laurent
2014-08-07 19:21 ` Adam Beneschan
2014-08-07 19:25 ` Adam Beneschan
2014-08-07 22:20 ` Laurent
2014-08-07 23:35 ` Adam Beneschan
2014-08-08 4:42 ` Laurent
2014-08-09 14:32 ` Laurent
2014-08-09 14:58 ` AdaMagica [this message]
2014-08-09 15:22 ` Jeffrey Carter
2014-08-09 18:51 ` Shark8
2014-08-09 21:53 ` Laurent
2014-08-09 22:25 ` Jeffrey Carter
2014-08-10 8:22 ` Simon Wright
2014-08-10 10:45 ` Simon Wright
2014-08-10 20:20 ` Laurent
2014-08-10 21:57 ` Simon Wright
2014-08-10 23:42 ` Jeffrey Carter
2014-08-11 4:51 ` Laurent
2014-08-11 5:13 ` Jeffrey Carter
2014-08-11 7:56 ` Laurent
2014-08-07 20:37 ` Shark8
2014-08-07 22:30 ` Laurent
2014-08-07 23:22 ` Shark8
replies disabled
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox