comp.lang.ada
 help / color / mirror / Atom feed
From: "Samuel T. Harris" <u61783@gsde.hou.us.ray.com>
Subject: Re: Looping over a tagged record?
Date: Tue, 19 Jun 2001 17:20:09 -0500
Date: 2001-06-19T17:20:09-05:00	[thread overview]
Message-ID: <3B2FD019.AC7B00F2@gsde.hou.us.ray.com> (raw)
In-Reply-To: uk828noji.fsf@wanadoo.fr

Pascal Obry wrote:
> 
> "M R Goodwin" <mgoodwinSPAMMY@redrocketconsortium.com> writes:
> 
> > Hi!
> >
> > This is a part practical, and a part 'I wonder' type problem.
> > I have a tagged record that is pretty big.  Most, but not all of
> > the elements in it are a bounded string type.  Because I don't feel
> > like the typing and all I would need to do to assign and later change
> > values, I was wondering if there is anyway to loop over all elements in
> > the record, checking their type and then taking the right action...
> 
> And now to answer your question: No there is no way to iterate through record's
> fields.
> 
> Pascal.

I'm missing the original posting so here are my thoughts
bases on this snippet.

Given that Mr. Goodwin know what to do which each field type
and given the every way to get a record object implies the
code knows which record to expect, then I don't see why
Mr. Goodwin needs to "iterate" on each field since the code
will know which fields to expect and should not necessarily
need to query the type of each field.

It seems to me that given the operation in question being
define for scalar types, then one can easily define the
operation for each composite type as one defines them.
In other words, the type declaration should define
how said operation will be perform on the components.

The problem statement appears dubious to me as well.

Now, if Mr. Goodwin is simply trying to avoid lots of
boilerplate typing when applying this operation to 
composite types, especially records type which are
by definition heterogenous, then he can either use
generics such as I use to implement general width/image/value
function for all types OR he can use an ASIS based
tool to find his composite types and "generate" the
operation body specific to the contents of the composite
type.

-- 
Samuel T. Harris, Senior Software Engineer II
Raytheon, Aerospace Engineering Services
"If you can make it, We can fake it!"



  reply	other threads:[~2001-06-19 22:20 UTC|newest]

Thread overview: 54+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2001-06-19 20:39 Looping over a tagged record? M R Goodwin
2001-06-19 21:31 ` Pascal Obry
2001-06-19 21:32 ` Pascal Obry
2001-06-19 22:20   ` Samuel T. Harris [this message]
2001-06-19 23:45     ` mgoodwinSPAMMY
2001-06-20  1:33 ` Pat Rogers
2001-06-20  3:13   ` Pat Rogers
2001-06-20  2:58 ` DuckE
2001-06-20 13:15 ` Ted Dennison
2001-06-20 15:01   ` M. A. Alves
2001-06-21  2:36     ` DuckE
2001-06-21 10:14       ` M. A. Alves
2001-06-21 13:24         ` Pat Rogers
2001-06-21 17:08     ` Charles Hixson
2001-06-21 18:58       ` tmoran
2001-06-21 23:02         ` Charles Hixson
2001-06-22 19:04           ` B.Gaffney
2001-06-22 20:36             ` Pascal Obry
2001-06-22  2:18       ` DuckE
2001-06-22 17:33         ` Charles Hixson
2001-06-22 18:24           ` tmoran
2001-09-13  0:29           ` Gnat Windows load error tmoran
2001-09-13 18:15             ` Jerry van Dijk
2001-09-13 23:17               ` tmoran
2001-09-13  3:58           ` Ada web crawler tmoran
2001-11-17 21:50           ` ada.strings.bounded slice errors tmoran
2001-11-18 17:16             ` Florian Weimer
2001-11-18 19:31               ` tmoran
2001-11-19  7:12                 ` Florian Weimer
2002-02-08 20:55           ` How to get a traceback in Gnat 3.14p tmoran
2002-02-08 21:24             ` Pascal Obry
2002-02-08 22:28               ` tmoran
2002-02-11  0:10           ` How to use gnatelim in Gnat 3.14p? tmoran
2002-02-15 17:23           ` does gnatelim work? tmoran
2002-02-15 18:18             ` Stephen Leake
2002-02-15 21:58               ` tmoran
2002-02-18  1:31                 ` Stephen Leake
2002-04-15  3:05           ` Announce: .rc files with Gnat tmoran
2002-04-15 14:48             ` Ted Dennison
2002-05-25  7:06           ` slice'access? tmoran
2002-05-25 16:47             ` slice'access? Robert Dewar
2002-05-25 18:28               ` slice'access? tmoran
2002-05-25 20:20                 ` slice'access? Jeffrey Carter
2002-05-25 23:39                   ` slice'access? tmoran
2002-05-26 14:22                     ` slice'access? Robert Dewar
2002-09-30  1:54           ` 'write of bounded string? tmoran
2002-09-30 16:06             ` Stephen Leake
2002-10-27 23:01           ` phone# etc bdean
2002-10-28  3:04             ` tmoran
2002-11-06  3:14           ` A little Ada app tmoran
2002-11-06 11:37             ` Larry Kilgallen
2002-11-06 15:08             ` Ted Dennison
2002-11-06 18:02               ` tmoran
2001-06-21  3:09 ` Looping over a tagged record? gresset1
replies disabled

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