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,7d83a6223f4f2443 X-Google-Attributes: gid103376,domainid0,public,usenet X-Google-Language: ENGLISH,ASCII-7-bit Path: g2news1.google.com!news1.google.com!news.glorb.com!feeder.erje.net!feeder1-2.proxad.net!proxad.net!feeder2-2.proxad.net!newsfeed.arcor.de!newsspool1.arcor-online.net!news.arcor.de.POSTED!not-for-mail Date: Thu, 11 Dec 2008 12:21:34 +0100 From: Georg Bauhaus User-Agent: Thunderbird 2.0.0.18 (Macintosh/20081105) MIME-Version: 1.0 Newsgroups: comp.lang.ada Subject: Re: Run-time accessibility checks References: In-Reply-To: Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: 7bit Message-ID: <4940f7be$0$30232$9b4e6d93@newsspool1.arcor-online.net> Organization: Arcor NNTP-Posting-Date: 11 Dec 2008 12:21:35 CET NNTP-Posting-Host: be6027fd.newsspool1.arcor-online.net X-Trace: DXC=mCXJH:Wk\j`m7>ihJR;B_cic==]BZ:afn4Fo<]lROoRa^YC2XCjHcbi[b9FcOG[i2l;9OJDO8_SKfNSZ1n^B98ijo>D4CObY<>j X-Complaints-To: usenet-abuse@arcor.de Xref: g2news1.google.com comp.lang.ada:2959 Date: 2008-12-11T12:21:35+01:00 List-Id: Dmitry A. Kazakov schrieb: > This is what I call abstract record interface. For each component it will > have two operations: > > function "." (R : Abstract_Record_Type) > return Component_Type is abstract; > procedure "." > (R : in out Abstract_Record_Type; C : Component_Type) is abstract; > > The compiler uses the second (setter) for all LHS X.Component. That with pre/post/invariant constraints, in case the component setting procedure has access to the object containing the component. Could pre/post/invariant also help when checking order of component assignments? (These are called "assigner commands" in Eiffel.)