Ada Programming/Libraries/Container/Booch


Ada Lovelace 1838.jpg

Library functionsEdit

BagsEdit

CollectionsEdit

OrderedEdit

DequeuesEdit

GraphsEdit

DirectedEdit

UndirectedEdit

ListsEdit

SingleEdit

DoubleEdit

MapsEdit

QueuesEdit

OrderedEdit

RingsEdit

SetsEdit

StacksEdit

TreesEdit

AVLEdit

BinaryEdit

MultiwayEdit

Library linksEdit

Author  
Simon Wright
Homepage  
http://booch95.sourceforge.net
Tutorial  
http://booch95.sourceforge.net/case-study.html
Project Info 
http://sourceforge.net/projects/booch95
CVS Archive  
http://sourceforge.net/cvs/?group_id=135616
Download  
http://sourceforge.net/project/showfiles.php?group_id=135616

Sample codeEdit

Read the project tutorial for full detail.

with Ada.Calendar;
with Ada.Strings.Bounded;

package Cars is

   package Plate_Strings
     is new Ada.Strings.Bounded.Generic_Bounded_Length (10);
   
   subtype Plate_String is Plate_Strings.Bounded_String;

   package Model_Strings
     is new Ada.Strings.Bounded.Generic_Bounded_Length (32);
   
   subtype Model_String is Model_Strings.Bounded_String;

   type Car is 
      record
         Plate : Plate_String;
         Model : Model_String;
         Registered : Ada.Calendar.Time;
      end record;

end Cars;
with BC.Containers.Collections.Bounded;
with Cars;
package My_Fleet_Combined is

   use type Cars.Car;

   package Abstract_Car_Containers 
     is new BC.Containers (Cars.Car);

   package Abstract_Car_Collections 
     is new Abstract_Car_Containers.Collections;

   package Fleets 
     is new Abstract_Car_Collections.Bounded (Maximum_Size => 30);

   The_Fleet : Fleets.Collection;

end My_Fleet_Combined;

See alsoEdit

WikibookEdit

Ada Reference ManualEdit

-- none apply --

Last modified on 8 February 2011, at 17:56