[ada-france] paramètres optionnels pour paquetages génériques

Thomas De Contes d.l.tDeContes at free.fr
Dim 9 Déc 03:55:22 CET 2007


bonjour :-)



Au début, j'ai fait un paquetage qui ressemblait à ça :


generic
	type item is private;
package tableaux is

	type tableauStatique is array (Positive range <>) of item;

	type tableau is private;

private
	type pointeurTableauStatique is access tableauStatique;
	type tableau is record
		pts : pointeurTableauStatique;
	end record;
end tableaux;



Et à un moment, j'ai eu besoin de fournir le type tableauStatique

Alors j'ai fait :


generic
	type item is private;
package tableaux is

	type tableauStatique is array (Positive range <>) of item;

	package pt is new tableaux2(item,tableauStatique);

	type tableau is new pt.tableau;

end tableaux;


generic
	type item is private;
	type tableauStatique is array (Positive range <>) of item;
package tableaux2 is

	type tableau is private;


pour utiliser l'un où l'autre selon les besoins

J'ai pensé à ne faire que tableaux2 et à créer tableauStatique au  
niveau de chaque utilisateur du paquetage,
Mais j'ai eu besoin de fournir tableauStatique 1 seule fois, alors  
que j'ai eu besoin de ne pas le fournir une dixaine de fois,
et j'ai estimé que c'était le rôle d'un paquetage, de construire ce  
genre de chose automatiquement, quand on l'utilise souvent,
C'est ce qui m'a décidé à faire les 2 :-)



Question :

Est ce que c'est possible de faire 1 seul paquetage qui permette à la  
fois :
à l'utilisateur de fournir tableauStatique,
ou de fournir tableauStatique à l'utilisateur,
selon ses besoins ?


J'ai vu qu'il y avait des nouveautés en ada 2005 du coté des  
paramètres génériques,
Est ce que par hasard il y en aurait une qui permettrait ça ? :-)

Par exemple :

generic
	type item is private;
	type tableauStatique is array (Positive range <>) of item is <>;
package tableaux is



-- 
j'agis contre l'assistanat, je travaille dans une SCOP !




Plus d'informations sur la liste de diffusion Ada-France