comp.lang.ada
 help / color / mirror / Atom feed
From: sbelmont700@gmail.com
Subject: Re: Unknown constraints and type composition
Date: Thu, 14 Jun 2018 09:58:12 -0700 (PDT)
Date: 2018-06-14T09:58:12-07:00	[thread overview]
Message-ID: <9f6c53bf-dda2-4cbd-bfd5-9eec03336418@googlegroups.com> (raw)
In-Reply-To: <pfu23n$csb$1@dont-email.me>

One approach would be to use coextensions, assuming you are aware of all that entails, e.g.:

type Inner (<>) is private;
function Create_Inner return Inner;

...

type Outer (<>) is private;
function Create_Outer return Outer;

private
type Outer (x : access Inner) is null record;

function Create_Outer return Outer is
begin
  return Outer (x => new Inner'(Create_Inner));
end Create;


And, assuming the compiler follows the advice (and is bug free :/ ) everything should work itself out safely and neatly.  Though a portable way to do this would be nice.

-sb




  parent reply	other threads:[~2018-06-14 16:58 UTC|newest]

Thread overview: 9+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2018-06-14 15:37 Unknown constraints and type composition Alejandro R. Mosteo
2018-06-14 16:19 ` Dmitry A. Kazakov
2018-06-14 16:58 ` sbelmont700 [this message]
2018-06-14 17:53 ` Jeffrey R. Carter
2018-06-15  5:13   ` J-P. Rosen
2018-06-15  9:34     ` Alejandro R. Mosteo
2018-07-08 13:53     ` Jacob Sparre Andersen
2018-06-14 21:28 ` Randy Brukardt
2018-06-15  9:37 ` Alejandro R. Mosteo
replies disabled

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