Я пытаюсь понять определенный код Perl из vcake . Обычно я нахожу свой путь в Perl, но следующее утверждение сбивает меня с толку. Я подозреваю, что это просто ошибка, но я не совсем уверен. Заявление:
foreach my $seq (keys %$set) {
if( (defined $set->{$seq}) and (my $numReads >= ($coverage)) ) {
do something;
}
...
}
$coverage
был определен в начале файла как скалярное целое число (например, 10) и никогда больше не записывается в. $numReads
используется только в строке выше, больше нигде !
$set
, с другой стороны, модифицируется внутри цикла, поэтому первая часть условия имеет смысл. Что я не понимаю, так это вторую часть, потому что, на мой взгляд, она всегда будет иметь одинаковое значение, и Я не понимаю значения $numReads
или >=
здесь . Может кто-нибудь, пожалуйста, просветите меня? Возможно, задействованы невидимые автоматические переменные?