comp.lang.ada
 help / color / mirror / Atom feed
From: "ME" <abcdefg@nonodock.net>
Subject: Re: Constant record components
Date: Wed, 12 Jul 2006 23:58:54 -0700
Date: 2006-07-12T23:58:54-07:00	[thread overview]
Message-ID: <12bbrq2lqngr807@corp.supernews.com> (raw)
In-Reply-To: 44afe7b2$0$29128$9b4e6d93@newsread4.arcor-online.net


"Georg Bauhaus" <bauhaus@futureapps.de> wrote in message 
news:44afe7b2$0$29128$9b4e6d93@newsread4.arcor-online.net...
> ME wrote:
>> "Georg Bauhaus" <bauhaus@futureapps.de> wrote in message 
>> news:1152263715.5568.1.camel@localhost...
>>> On Thu, 2006-07-06 at 22:39 -0700, ME wrote:
>>>> What I am looking for is a way to read in a values from a file ,assign 
>>>> them
>>>> once to  records and disallow any future assignment i.e. these 
>>>> "constant
>>>> parts of the records represent a structure that I don't want to ever 
>>>> change
>>>> during the life of the program (write once and read only afterwards).
>>> Wouldn't it be an option to declare the public view
>>> of the to-be-constant record subtype limited?
>> The record has no discriminants
>
> Yes. What I meant has in fact little to do with discriminants.
> package P is
>
>   type C is limited private;
>     -- to be the constant part in R  -- C ops ...
>
>   type R is record  -- cannot be assigned because
but I need R to be assigned
anyway the unconstrained array of records R is private
>     immutable: C;  -- this cannot be assigned either (read only)
>     other_data: Integer;  -- (read/write)
>   end record;
>
>   type Grid is array(...) of R;
>
>   -- etc.
>
> private
>   type C is record
>      mutable: Integer;  -- can be assigned, e.g. during init
>   end record;
>
>   -- perform initialization in package body, maybe require
>   -- a suitable callback that reads initial values
>   -- ...
>
> end P; 





  reply	other threads:[~2006-07-13  6:58 UTC|newest]

Thread overview: 30+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
     [not found] <12ad8guf3sg1o0d@corp.supernews.com>
2006-07-01 17:06 ` Constant record components Dmitry A. Kazakov
2006-07-01 17:37   ` ME
2006-07-01 18:33     ` Georg Bauhaus
2006-07-01 21:44       ` Jeffrey R. Carter
2006-07-02  9:18         ` Georg Bauhaus
2006-07-02 16:13   ` ME
2006-07-03  7:50     ` Dmitry A. Kazakov
2006-07-03 11:46       ` Craig Carey
2006-07-04  0:06         ` M E Leypold
2006-07-03 16:31       ` ME
2006-07-03 23:53         ` Randy Brukardt
2006-07-04  1:59           ` Craig Carey
2006-07-04  7:25           ` ME
2006-07-05 21:55             ` Randy Brukardt
2006-07-06  0:59               ` tmoran
2006-07-06  7:47               ` Jean-Pierre Rosen
2006-07-06 22:29                 ` Randy Brukardt
2006-07-07  4:34                   ` Jeffrey R. Carter
2006-07-07  5:39                   ` ME
2006-07-07  9:15                     ` Georg Bauhaus
2006-07-08 16:13                       ` ME
2006-07-08 17:14                         ` Georg Bauhaus
2006-07-13  6:58                           ` ME [this message]
2006-07-13  8:39                             ` Georg Bauhaus
2006-07-07 21:04                     ` Randy Brukardt
2006-07-14  8:15                       ` Craig Carey
2006-07-14 12:51                         ` Craig Carey
2006-07-15  3:45                           ` ME
2006-07-04  0:08         ` M E Leypold
2006-07-02  5:52 ` Craig Carey
replies disabled

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