next up previous contents
suivant: Gestion des objets ou monter: En-tête de fichier précédent: Clauses de contexte   Table des matières

Partie(s) générique(s)

[Paquetage générique]
Dans le cas ou un paquetage serait générique, un rappel des parmamètres de généricité ainsi qu'une pré-instanciation de paquetage est mise sous forme de commentaire.
-------------------------------------------------------------
-- Instanciation du paquetage Arbre_Recherche
--
-- -- Type des elements de l'arbre
-- type T_Element is private;
-- -- Pour disposer d'une relation d'ordre (arbre de recherche!)
-- with function "<" (Gauche, Droit: T_Element) return Boolean is <>;
-- with function ">" (Gauche, Droit: T_Element) return Boolean is <>;
--
-- package Instanciation_Arbre_Recherche is new Arbre_Recherche (...);
-- use Instanciation_Arbre_Recherche;
-------------------------------------------------------------
[Sous-programme générique]
Un paquetage peu aussi contenir un ou plusieurs sous-programmes génériques qui nécessitent également une instanciation. De la même manière que pour les paquetages les paramètres de généricité ainsi qu'une pré-instanciation est affichée sous forme de commentaire pour bien indiquer que cette partie nécessite une intervention manuelle.
-------------------------------------------------------------
-- Instanciation de la procedure Parcourir
--
-- -- Appliquer un traitement a chaque element
-- with procedure Traiter(Element: in T_Element);
-- -- Effectuer le parcours symetrique: sous-arbre gauche, racine,
-- -- sous-arbre droit en appliquant un traitement a chaque element
--
-- Instanciation_Parcourir is new Parcourir (...);
-------------------------------------------------------------

Il est bien évident que sans une instanciation correct de ces divers
parties génériques, la compilation du fichier ne pourra avoir lieu.