Thread Subs in subs?: Kann man lokale subs verwenden? (2 answers)
Opened by Ronnie at 2005-05-24 14:53

Ronnie
 2005-05-24 14:53
#55108 #55108
User since
2003-08-14
2022 Artikel
BenutzerIn
[default_avatar]
Ich habe folgenden nicht ganz übersichtlichen code-Snippet, der ein AoH aus einer Datenbank-Abfrage erweitert um Mehrfachauswahlen:
Code: (dl )
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
sub selection_extend {
my $self = shift;
my $result = shift || die "extend needs a resultset to extend\n";
my $db_lang = new DB::Languages;
my @languages = @{$db_lang->get()};

foreach my $person (@$result) {
my @selected_languages = map { $_->{'ID_language'} }
@{$self->get_attributes({'id' => $person->{'ID_person'}, 'attribute' => 'has_language_skill',})};
my @selection_list = map { my $cur_lang = $_->{'ID_language'};
$_->{'selected'} = 'true' if (grep ($_ == $cur_lang, @selected_languages));
$_; } @languages;
$person->{'has_language_skill'} = \@selection_list;
}
return $result;
}

Jetzt würde ich gerne den Inhalt der foreach-Schleife in eine lokale sub stecken, die aber nur innerhalb dieser Methode benötigt wird. Spricht irgendwas gegen das definieren von subs in subs?

View full thread Subs in subs?: Kann man lokale subs verwenden?