From mboxrd@z Thu Jan 1 00:00:00 1970 X-Spam-Checker-Version: SpamAssassin 3.4.5-pre1 (2020-06-20) on ip-172-31-74-118.ec2.internal X-Spam-Level: * X-Spam-Status: No, score=1.8 required=3.0 tests=BAYES_50,FORGED_GMAIL_RCVD, FREEMAIL_FROM autolearn=no autolearn_force=no version=3.4.5-pre1 X-Received: by 2002:aed:25d1:: with SMTP id y17mr7376900qtc.375.1600197106033; Tue, 15 Sep 2020 12:11:46 -0700 (PDT) X-Received: by 2002:ac8:5b16:: with SMTP id m22mr19584441qtw.262.1600197105659; Tue, 15 Sep 2020 12:11:45 -0700 (PDT) Path: eternal-september.org!reader02.eternal-september.org!feeder.eternal-september.org!aioe.org!peer02.ams4!peer.am4.highwinds-media.com!peer01.iad!feed-me.highwinds-media.com!news.highwinds-media.com!news-out.google.com!nntp.google.com!postnews.google.com!google-groups.googlegroups.com!not-for-mail Newsgroups: comp.lang.ada Date: Tue, 15 Sep 2020 12:11:45 -0700 (PDT) In-Reply-To: Complaints-To: groups-abuse@google.com Injection-Info: google-groups.googlegroups.com; posting-host=92.56.166.72; posting-account=C8J7NQoAAAD_ybGY7--QIRi6KpLjoH1Z NNTP-Posting-Host: 92.56.166.72 References: <6096c490-7112-415e-978b-fd4c78f28501n@googlegroups.com> User-Agent: G2/1.0 MIME-Version: 1.0 Message-ID: Subject: Re: Visibility issue From: Daniel Injection-Date: Tue, 15 Sep 2020 19:11:46 +0000 Content-Type: text/plain; charset="UTF-8" X-Received-Bytes: 2561 X-Received-Body-CRC: 2384743192 Xref: reader02.eternal-september.org comp.lang.ada:60148 List-Id: > I'm still not clear what problem you're trying to solve. Designs are derived > from problem statements, not from failed designs I have the next requirements: - I need to pack all calls from users in just one Package API Hierarchy. - The details and complexity of the implementation need to be outside of this API hierarchy as much as possible. -I need to use tagged types as much as possible for the calls from users to API package. (I'm not a big fan of this also but its a requirement) -This API tagged types needs to connect the API Side with the implementation packages. -The user needs to set a limited number of callback procedure with this flavor: "Procedure (S : in out Tagged_APi_Type)" -The Implementation package needs to trigger the procedure defined in the API. (Here comes to problems): -->The implementation package needs to manipulate some hide part of the Tagged_API_Type while is triggered ------>Here comes the problem. From the implementing package is not possible to see the private part of the API package. The only solution I have for now is to make public some functions in the API to be used from the implementing packages and try to advise the users to don't use them.