[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: Deuxieme essai



On Wed, Mar 03, 2004 at 10:08:02PM +0100, Denis Barbier wrote:
> On Wed, Mar 03, 2004 at 10:00:46AM -0800, Martin Quinson wrote:
> [...]
> > > Dans Db.pm, on va vouloir utiliser un champ Status pour tous les
> > > éléments de array2, pas seulement po et podebconf, Il vaudrait donc
> > > mieux ne pas modifier le contenu initial d'array2, mais rajouter tous
> > > les champs Status automatiquement.
> > 
> > J'ai commence par mal lire tes conseils, et penser que tu voulais ajouter un
> > champ Status dans array2, dont le premier element de chaque ligne serait
> > a quel autre array2 elle fait reference. Ca serait bien plus propre.
> > 
> > Quant a la solution que tu propose (si ma seconde lecture est la bonne), mes
> > hacks de fusion de DB ne gerent pas de prendre un bout d'un champ donne dans
> > une DB, et un autre bout dans une autre DB. Ca marche par remplacement du
> > champ existant.
> 
> Je voulais dire que pour définir array2 comme tu l'as fait, tu peux
> écrire :
>     ...
>         array2  => [qw(NLS PO TEMPLATES PODEBCONF MENU DESKTOP MAN)],
>     }
>     my @foo = @{$self->{array2}};
>     for (@foo) {
>     	push (@{$self->{array2}}, $_.'STATUS');
>     }
> 
> Quant à tes autres lectures, je n'ai pour l'instant pas assez réfléchi.

Ok, mais je pense quand meme que faire un seul STATUS dont le premier champ
de chaque ligne donne la categorie est preferable a faire un array2
compagnon de chaque array2 existant, puisque je n'utilise que la premiere
ligne de chaque companion. 

Autrement dit, jusque la, j'avais N matrices dont les noms etaient:
map {print "$_-status} @{$self->{array2}}
pour stocker N infos vectorielles, et maintenant, j'ai une seule matrice
consistant en la concatenation de tous les vecteurs.

Avant, c'etait
foreach $statusline (@{$data->podebconfstatus($pkg)}) {
  my ($bla,$bli,$blu) = @{$statusline};
  # traitement
  last;
}

Et maintenant, c'est:
foreach $statusline (@{$data->status($pkg)}) {
  my ($kind,$bla,$bli,$blu) = @{$statusline};
  next unless $kind eq "podebconf";
  # traitement
}

Bye, Mt.

-- 
Le capitalisme, c'est l'exploitation de l'homme par l'homme.
Le communisme, c'est le contraire.
               -- Coluche

Attachment: signature.asc
Description: Digital signature


Reply to: