Есть ли проблема в perl 5.12.2 при использовании splice на @ISA?

Далее следует сеанс отладки на Perl 5.12. Есть ли в этом смысл? Кэширует ли UNIVERSAL версию переменной @ISA , которая, если навсегда, будет использоваться в дальнейшем. Еще до того, как Class :: ISA был объявлен устаревшим, я использовал вызов Class :: ISA :: self_and_super_path , чтобы заставить внутренние компоненты повторно просмотреть массив @ISA . Поскольку теперь это считается ненужным, как получить Perl для аудита своих внутренних записей?

DB<34> p $papa
Papushka=HASH(0x16bc0300)

DB<35> p $papa->isa('Nanushka')

DB<36> p $papa->isa('Babushka')
1

DB<37> x @Papushka::ISA
0  'Nanushka'
1  'Babushka'

Это тестовый код (очевидно). Он дает те же результаты, работает без изменений, работает как тест или запускается в режиме отладки. Я должен вам сказать, что до этого @ISA = qw и я выполнил

splice( @ISA, 0, 0, 'Nanushka' );

. Это проблема? Стоит ли нажимать только на @ISA ?

11
задан Bill the Lizard 13 October 2017 в 12:16
поделиться