comp.lang.ada
 help / color / mirror / Atom feed
From: dennison@telepath.com
Subject: Re: non-consecutive ranges
Date: 1999/04/30
Date: 1999-04-30T00:00:00+00:00	[thread overview]
Message-ID: <7gd2lk$cbs$1@nnrp1.dejanews.com> (raw)
In-Reply-To: 7gct90$7hr$1@nnrp1.dejanews.com

In article <7gct90$7hr$1@nnrp1.dejanews.com>,
  vlight@my-dejanews.com wrote:
>
>
> is there a way to define a variable to have a non-consecutive range?  for
> instance, let's say i wanted to define variable X with a range from 2 to 1024
> and 4096 to 8192.
>
>   X : Integer range (1 .. 1024) and (4096 .. 8192);
>
> or something similar to this declaration.  in addition to define
> non-consecutive ranges, could i define a range of odd numbers? even numbers?
>
> how would i go about declaring this?

There is no language mechanism for inserting "holes" in numeric types.

Enumerations with rep clauses can be used to skip over certian actual values
(although conceptually there are no "holes" in the enumeration itself). But
trying to define an "Odd" type by enumerating every odd integer would be
beyond painful.

Another possibilty would be to declare a controlled type, and write
initialization and all the mathematical and conversion operations you need to
ensure that Constraint_Error is raised if the number ever goes even.

A third possibility is to bag it and move on...

--
T.E.D.

-----------== Posted via Deja News, The Discussion Network ==----------
http://www.dejanews.com/       Search, Read, Discuss, or Start Your Own    




  reply	other threads:[~1999-04-30  0:00 UTC|newest]

Thread overview: 12+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
1999-04-30  0:00 non-consecutive ranges vlight
1999-04-30  0:00 ` dennison [this message]
1999-04-30  0:00 ` Tucker Taft
1999-04-30  0:00   ` dennison
1999-05-01  0:00 ` Robert Dewar
1999-05-01  0:00   ` dvdeug
1999-05-01  0:00 ` Robert B. Love 
1999-05-04  0:00   ` fraser
1999-05-01  0:00 ` Ehud Lamm
1999-05-01  0:00   ` bglbv
1999-05-02  0:00     ` Ehud Lamm
1999-05-03  0:00 ` Josh Highley
replies disabled

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