comp.lang.ada
 help / color / mirror / Atom feed
From: ncohen@watson.ibm.com (Norman H. Cohen)
Subject: Re: Subprogram Renaming
Date: 1996/04/10
Date: 1996-04-10T00:00:00+00:00	[thread overview]
Message-ID: <4kgde6$q8t@watnews1.watson.ibm.com> (raw)
In-Reply-To: kdd95h53l3.fsf@dsd.camb

In article <kdd95h53l3.fsf@dsd.camb>, johndoe (johndoe) provided
several good examples of renaming-as-body.  This capability is especially
useful when a subprogram is implemented using generic instantiation.
For example: 

   generic
      type Element_Type is private;
   package Generic_Dequeue_Object is
      pragma Elaborate_Body;
      procedure Add_To_Front (Item: in Element_Type);
      procedure Add_To_Back (Item: in Element_Type);
      procedure Remove_From_Front (Item: out Element_Type);
      procedure Remove_From_Back (Item: out Element_Type);
   end Generic_Dequeue_Object;

   package Integer_Stack_Object is
      procedure Push (Item: in Integer);
      procedure Pop (Item: out Integer);
   end Integer_Stack_Object;

   with Generic_Dequeue_Object;
   package body Integer_Stack_Object is

      package Integer_Dequeue_Object is
         new Generic_Dequeue_Object (Integer);

      procedure Push (Item: in Integer)
         renames Integer_Dequeue_Object.Add_To_Front;

      procedure Pop (Item: out Integer)
         renames Integer_Dequeue_Object.Remove_From_Front;

   end Integer_Stack_Object;

--
Norman H. Cohen    ncohen@watson.ibm.com




  reply	other threads:[~1996-04-10  0:00 UTC|newest]

Thread overview: 30+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
     [not found] <md5:FE4AB546A8392541EDC1E3FE12E3D8AF>
1996-04-09  0:00 ` Subprogram Renaming James A. Squire
1996-04-09  0:00   ` Robert Dewar
1996-04-10  0:00   ` Robert A Duff
1996-04-11  0:00   ` Mark A Biggar
1996-04-10  0:00 ` johndoe
1996-04-10  0:00   ` Norman H. Cohen [this message]
1996-04-11  0:00     ` Norman H. Cohen
1996-04-12  0:00       ` Jonas Nygren
1996-04-12  0:00         ` Norman H. Cohen
1996-04-13  0:00           ` Robert A Duff
1996-04-15  0:00             ` Norman H. Cohen
     [not found] <md5:3CC2294B6049DDBD8790280EABCEDE81>
1996-04-12  0:00 ` James A. Squire
     [not found] <md5:95D854EBD1A47E0E86027A3CC7DBD9A4>
1996-04-10  0:00 ` James A. Squire
1996-04-10  0:00   ` Robert Dewar
1996-04-11  0:00     ` Jonas Nygren
1996-04-11  0:00       ` Robert Dewar
1996-04-12  0:00         ` Jonas Nygren
1996-04-10  0:00   ` Robert A Duff
1996-04-11  0:00     ` Adam Beneschan
1996-04-11  0:00       ` Robert A Duff
1996-04-11  0:00       ` Robert Dewar
1996-04-10  0:00 ` johndoe
     [not found] <md5:88A5E8822105A2023A0A951BB5EC646E>
1996-04-10  0:00 ` James A. Squire
     [not found] <md5:87494FB95037B9578F62831DE10B6BB3>
1996-04-10  0:00 ` James A. Squire
     [not found] <md5:046A59600C3FEFC327385C3E914D6997>
1996-04-08  0:00 ` James A. Squire
1996-04-08  0:00   ` Robert Dewar
1996-04-09  0:00     ` Gary McKee
1996-04-09  0:00   ` Robert A Duff
     [not found] <md5:C24D8C2EE138D9627FB8B93E2E35D9F3>
1996-04-05  0:00 ` James A. Squire
1996-04-06  0:00   ` Robert Dewar
replies disabled

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