comp.lang.ada
 help / color / mirror / Atom feed
From: ganesh.ramasivan@gdcanada.com (Ganesh Ramasivan)
Subject: Variant records..
Date: 15 Feb 2004 14:51:30 -0800
Date: 2004-02-15T14:51:30-08:00	[thread overview]
Message-ID: <e8f9995c.0402151451.5bbe03de@posting.google.com> (raw)

In the following example, how would i forbid the user of data type Foo
from specifying the following:

John : Foo(Vehicle => MAN, Power => AUTOMATIC);

ie. is there a way to restrict the user from specifying certain types
as variants?

Thanks for your input.

Ganesh

Example:

procedure Variant is

   type Vehicle_Type is (CAR, LEGS, BIKE, PLANE);
   type Vehicle_Power is (MANUAL, AUTOMATIC);

   type Foo(Vehicle : Vehicle_Type; Power: Vehicle_Power) is
    record
        case Vehicle is
	     when CAR  =>
            null;
	     when LEGS =>
            null;
	     when BIKE =>
            null;
	     when PLANE =>
            null;
         when others =>
            null;
        end case;
    end record;

    Audi : Foo(Vehicle => CAR, Power => MANUAL); 
begin
 null;
end Variant;



             reply	other threads:[~2004-02-15 22:51 UTC|newest]

Thread overview: 20+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2004-02-15 22:51 Ganesh Ramasivan [this message]
2004-02-16 10:57 ` Variant records Preben Randhol
2004-02-16 15:25   ` Ganesh Ramasivan
2004-02-16 15:46     ` Ludovic Brenta
2004-02-16 16:16     ` Preben Randhol
2004-02-17 14:37       ` Ganesh Ramasivan
2004-02-17 15:43         ` Preben Randhol
2004-02-16 16:59   ` Ganesh Ramasivan
2004-02-16 20:14     ` Simon Wright
2004-02-17 14:56       ` Ganesh Ramasivan
2004-02-17 15:31         ` Robert I. Eachus
2004-02-16 23:17 ` tmoran
  -- strict thread matches above, loose matches on Subject: below --
1999-09-14  0:00 Variant Records Shawn Barber
1999-09-14  0:00 ` Mark Lundquist
1999-09-14  0:00 ` David C. Hoos, Sr.
1999-09-14  0:00 ` Matthew Heaney
1986-10-31  9:08 variant records Dean Luick
1986-11-03 14:17 ` Bev Sobelman
1986-11-05 16:35 ` stuart
1986-11-06 15:40 ` stt
replies disabled

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox