comp.lang.ada
 help / color / mirror / Atom feed
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."


  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