From: Jeffrey Carter <spam@spam.com>
Subject: Re: Accessing the underlying rep for enumerated types?
Date: Wed, 13 Oct 2004 01:26:42 GMT
Date: 2004-10-13T01:26:42+00:00 [thread overview]
Message-ID: <mv%ad.1639$6k2.1151@newsread3.news.pas.earthlink.net> (raw)
In-Reply-To: <MrNoSpam-EC7BEF.08320213102004@news-server.bigpond.net.au>
Dale Stanbrough wrote:
> An enumeration type can have a representation clause applied to it
> allowing you to specify a underlying integer representation for
> each value.
>
> 'Pos tells you the position within the enumeration, not it's
> underlying value. Is there any way to get access to this value
> other than using Unchecked_Conversion?
Sure:
type Enum is (One, Two, Three);
for Enum use (One => 1, Two => 2, Three => 4);
type Rep_List is array (Enum) of Positive;
Get_Rep : constant Rep_List := (One => 1, Two => 2, Three => 4);
E : Enum := Enum'First;
Rep : Positive := Get_Rep (E);
If you mean a way built into the language, that's called
Unchecked_Conversion.
--
Jeff Carter
"My legs are gray, my ears are gnarled, my eyes are old and bent."
Monty Python's Life of Brian
81
next prev parent reply other threads:[~2004-10-13 1:26 UTC|newest]
Thread overview: 8+ messages / expand[flat|nested] mbox.gz Atom feed top
2004-10-12 22:32 Accessing the underlying rep for enumerated types? Dale Stanbrough
2004-10-13 0:20 ` Stephen Leake
[not found] ` <MrNoSpam-2408AC.16521913102004@news-server.bigpond.net.au>
2004-10-13 7:23 ` Marius Amado Alves
2004-10-13 12:29 ` Stephen Leake
2004-10-13 1:26 ` Jeffrey Carter [this message]
2004-10-13 6:51 ` Dale Stanbrough
2004-10-13 21:49 ` Nick Roberts
2004-10-14 1:25 ` Jeffrey Carter
replies disabled
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox