From: Michael Erdmann <michael.erdmann@snafu.de>
Subject: Usage of Interfaces with Ada 95
Date: Fri, 26 Sep 2003 18:36:31 +0200
Date: 2003-09-26T18:36:31+02:00 [thread overview]
Message-ID: <fh6e41-vfo.ln1@boavista.snafu.de> (raw)
Dear all,
i like to provide a package of elementary interfaces providing some
basic concepts on which a application is build, for example a
so called Enumeration type
generic
type Data_Type is private;
package Interface.Enumeration is
type Object is abstract tagged null record;
function HasMoreElements(
This : in Object ) return Boolean is abstract;
procedure Next(
This : in out Object;
Result : out Data_Type) is abstract;
end Interface.Enumeration;
because Ada does not provide an elementary object as e.g. java
this package has to be provided as an generic making the use
of the package a little bit complicated.
.....
type Enumerator is private;
.....
procedure Next(
This : in out Enumerator;
Result : out Data_Type );
.....
private
package Reader is new Interface.Enumeration( Data_Type );
type Enumerator is new Reader.Object with record
Next : Element_Access := null;
end record;
The whole thing becomes more and more complicated for other
concepts e.g. a Dictionary which involves two types.
I am realy wondering if there is a better (simpler) way of
providing such a concept library?
Regards
M.Erdmann
next reply other threads:[~2003-09-26 16:36 UTC|newest]
Thread overview: 43+ messages / expand[flat|nested] mbox.gz Atom feed top
2003-09-26 16:36 Michael Erdmann [this message]
2003-09-26 16:50 ` Usage of Interfaces with Ada 95 chris
2003-09-26 16:55 ` Hyman Rosen
2003-09-26 19:10 ` Michael Erdmann
2003-09-26 20:37 ` Hyman Rosen
2003-09-27 15:05 ` Michael Erdmann
2003-09-28 2:11 ` Matthew Heaney
2003-09-29 2:25 ` George Shapovalov
2003-09-28 2:14 ` Matthew Heaney
2003-09-28 8:28 ` Michael Erdmann
2003-09-28 14:33 ` Matthew Heaney
2003-09-28 15:09 ` Michael Erdmann
2003-09-28 21:50 ` Matthew Heaney
2003-09-30 4:57 ` Michael Erdmann
2003-09-30 10:02 ` Mário Amado Alves
2003-09-30 12:31 ` Matthew Heaney
2003-09-30 19:58 ` Michael Erdmann
2003-09-28 17:10 ` Simon Wright
2003-09-28 21:52 ` Matthew Heaney
2003-09-28 21:58 ` Matthew Heaney
2003-09-29 19:37 ` Georg Bauhaus
2003-09-29 19:45 ` Georg Bauhaus
2003-09-30 7:10 ` Preben Randhol
2003-09-29 20:11 ` Simon Wright
2003-09-29 22:56 ` Matthew Heaney
2003-09-30 14:53 ` Matthew Heaney
2003-09-30 16:13 ` Preben Randhol
2003-09-29 13:49 ` Matthew Heaney
2003-09-28 18:22 ` Robert I. Eachus
2003-09-29 3:02 ` Hyman Rosen
2003-09-30 3:11 ` Robert I. Eachus
2003-09-30 13:38 ` Hyman Rosen
2003-09-30 21:46 ` Robert I. Eachus
2003-09-30 22:10 ` Hyman Rosen
2003-10-01 2:30 ` Robert I. Eachus
2003-10-01 2:41 ` Robert I. Eachus
2003-10-01 13:21 ` Hyman Rosen
2003-10-01 17:01 ` Robert I. Eachus
2003-10-01 18:46 ` Matthew Heaney
2003-09-29 14:52 ` Stephen Leake
2003-09-29 23:00 ` Matthew Heaney
2003-09-30 12:49 ` Marin David Condic
2003-09-30 23:48 ` Matthew Heaney
replies disabled
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox