From: "Marc A. Criley" <mcNOSPAM@mckae.com>
Subject: Re: generic parameter Copy for primitifs types.
Date: Thu, 23 Jun 2005 12:47:25 -0500
Date: 2005-06-23T12:47:25-05:00 [thread overview]
Message-ID: <94682$42baf5ad$4995788$19834@ALLTEL.NET> (raw)
In-Reply-To: <1119544911.159343.288010@g43g2000cwa.googlegroups.com>
nblanpain@hotmail.com wrote:
> -----
> generic
> type T_Item is private;
> with procedure Copy (Left : in out T_Item; Right : in T_Item);
> package Toto is
> ....
> end Toto;
> ------
>
> At instanciation, for T_Item = Integer for example, is there a methode
> to take for Copy => ":=". Must I redefined Copy ? Can I say that, by
> default, take ":=" ?
No, you can't. The author of Toto presumably required the provision of
a Copy procedure because what it's going to be doing may not be
compatible with the default ":=". (Though perhaps T_Item should then
have been declared as "limited private".) If a special Copy procedure
wasn't needed, the implementation could've just used ":=", since that is
allowed for non-limited private types.
Even if the type you're supplying, e.g. Integer, would be fine with the
built-in assignment, the package author would want to ensure that you
had thought about it, and by writing a simple little function to do the
copying, he ensures that. (Though I also think the "Left" parameter
should probably be mode "out" rather than "in out".)
Marc A. Criley
www.mckae.com
next prev parent reply other threads:[~2005-06-23 17:47 UTC|newest]
Thread overview: 17+ messages / expand[flat|nested] mbox.gz Atom feed top
2005-06-23 16:41 generic parameter Copy for primitifs types nblanpain
2005-06-23 17:47 ` Marc A. Criley [this message]
2005-06-23 17:54 ` Dmitry A. Kazakov
2005-06-23 19:41 ` nblanpain
2005-06-23 23:44 ` Marius Amado Alves
2005-06-28 10:30 ` Matthew Heaney
2005-06-28 11:21 ` Marius Amado Alves
2005-06-24 7:28 ` Dmitry A. Kazakov
2005-06-24 11:45 ` Marius Amado Alves
2005-06-24 14:53 ` Dmitry A. Kazakov
2005-06-24 15:11 ` Marius Amado Alves
2005-06-25 15:05 ` Martin Krischik
2005-06-23 18:30 ` Björn Persson
2005-06-23 19:39 ` nblanpain
2005-06-23 19:52 ` Marc A. Criley
2005-06-24 3:10 ` Jeffrey Carter
2005-06-27 4:28 ` Christoph Grein
replies disabled
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox