Что означает «затенение» в Ruby?

Если я сделаю следующее с включенными предупреждениями в Ruby 1.9:

$VERBOSE = true
x = 42
5.times{|x| puts x}

Я получаю

warning: shadowing outer local variable - x

Предположительно это связано с использованием x в качестве параметра блока, а также переменной вне блока, но что означает «затенение»?

33
задан Andrew Grimm 9 February 2019 в 07:01
поделиться