From mboxrd@z Thu Jan 1 00:00:00 1970 X-Spam-Checker-Version: SpamAssassin 3.4.4 (2020-01-24) on polar.synack.me X-Spam-Level: X-Spam-Status: No, score=-1.9 required=5.0 tests=BAYES_00 autolearn=ham autolearn_force=no version=3.4.4 X-Google-Thread: 103376,4f1451304206fe77 X-Google-Attributes: gid103376,public X-Google-Language: ENGLISH,ASCII-7-bit Path: g2news1.google.com!news1.google.com!news.glorb.com!border1.nntp.dca.giganews.com!nntp.giganews.com!newshosting.com!nx01.iad01.newshosting.com!newsfeed.icl.net!newsfeed.fjserv.net!oleane.net!oleane!newsfeed-00.mathworks.com!lon-transit.news.telstra.net!lon-in.news.telstra.net!news.telstra.net!news-server.bigpond.net.au!53ab2750!not-for-mail From: Dale Stanbrough Newsgroups: comp.lang.ada Subject: Re: Accessing the underlying rep for enumerated types? References: User-Agent: MT-NewsWatcher/3.4 (PPC Mac OS X) Message-ID: Date: Wed, 13 Oct 2004 06:51:06 GMT NNTP-Posting-Host: 138.217.31.22 X-Complaints-To: abuse@bigpond.net.au X-Trace: news-server.bigpond.net.au 1097650266 138.217.31.22 (Wed, 13 Oct 2004 16:51:06 EST) NNTP-Posting-Date: Wed, 13 Oct 2004 16:51:06 EST Organization: BigPond Internet Services Xref: g2news1.google.com comp.lang.ada:5129 Date: 2004-10-13T06:51:06+00:00 List-Id: Jeffrey Carter wrote: > 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. .... Obviously I have to phrase this much more pedantically. Is there any feature in the language that allows me to get access to the underlying enumeration values other than using Unchecked Conversion? Dale -- dstanbro@spam.o.matic.bigpond.net.au