logo       

taille des types / streams: msg#00038

lang.ada.france

Subject: taille des types / streams

salut,
cette fois ci j'ai un pb avec les streams

j'ai une liste de caractères, où chaque caractère apparaît 1 fois max
j'aimerais qu'au moment d'indiquer le nb de caractères, ça prennes en compte le fait qu'il n'y aura jamais plus de 256 éléments dans la liste (et que ça envoies dans le stream qu'un seul octet)


comme ça


type diffBranches is new Natural range 0..2** Natural'min(donneesBranches'size,Natural'size) -1;


procedure ecrire (Stream : access Root_Stream_Type'Class; a : in arbre) is
begin
donneesNoeuds'write(Stream, a.donneeNoeud );

diffBranches'write(Stream,diffBranches( length(a.branches) ));
for i in 1..length(a.branches) loop
donneesBranches'write(Stream,
elt(a.branches,i).all.donneeBranche );
arbre'write(Stream, elt(a.branches,i).all.noeudSuivant
);
end loop;
end ecrire;


ça ne marche pas


type diffBranches is range 0..2** Natural'min(donneesBranches'size,Natural'size) -1;

comme ça non plus, ça dit que l'expression n'est pas statique
d'ailleurs c'est pas vrai, c'est fixé à la compilation


comment je peux faire, si possible simplement ?
(j'espère que je vous ai mis suffisamment de données du pb)

_______________________________________________
Site WWW de l'association Ada-France: http://www.ada-france.org/
Ada-France@xxxxxxxxxxxxxx
http://www.ada-france.org/mailman/listinfo/ada-france



<Prev in Thread] Current Thread [Next in Thread>
Google Custom Search

News | FAQ | advertise