From: Gautier <gautier@fakeaddress.nil>
Subject: Q: how to copy contents and use ancestor's constraints at the same time ?
Date: Mon, 13 Aug 2007 23:16:05 +0200
Date: 2007-08-13T23:16:05+02:00 [thread overview]
Message-ID: <46c0c9e8$1_3@news.bluewin.ch> (raw)
Hello!
In the procedure below, how to do [A] and [B] together, and is there a way not
to have to write the constraints, like when constraining an object by
initializing it with a value of the same type ?
Thanks in advance!
NB: I looked in a book, but maybe not hard enough ;-)
-----
procedure Test_Ancestor_copy is
type Index_array_type is array(Positive range <>) of Natural;
type PF_Data(
n1: Natural;
n2: Natural;
n3: Natural
)
is
tagged record
p1 : Index_array_type(1..n1);
p2 : Index_array_type(1..n2);
p3 : Index_array_type(1..n3);
end record;
function Read return PF_Data is
begin
return
(n1 => 1,
n2 => 2,
n3 => 3,
p1 => (1=>1),
p2 => (1,2),
p3 => (1,2,3)
);
end Read;
type PF is new PF_Data with record
computed: Boolean:= False;
result: Float;
end record;
initial_pf: constant PF_Data:= Read;
work_pf: PF(
n1 => initial_pf.n1,
n2 => initial_pf.n2,
n3 => initial_pf.n3
);
-- [A] work_pf sized with initial_pf constraints
begin
PF_Data(work_pf):= initial_pf; -- [B] copy base data
end;
______________________________________________________________
Gautier -- http://www.mysunrise.ch/users/gdm/index.htm
Ada programming -- http://www.mysunrise.ch/users/gdm/gsoft.htm
NB: For a direct answer, e-mail address on the Web site!
next reply other threads:[~2007-08-13 21:16 UTC|newest]
Thread overview: 6+ messages / expand[flat|nested] mbox.gz Atom feed top
2007-08-13 21:16 Gautier [this message]
2007-08-13 21:33 ` Q: how to copy contents and use ancestor's constraints at the same time ? Adam Beneschan
2007-08-14 0:48 ` Jeffrey R. Carter
2007-08-14 23:35 ` Adam Beneschan
2007-08-14 7:45 ` Dmitry A. Kazakov
2007-08-14 8:59 ` gautier_niouzes
replies disabled
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox