Search
Write a publication
Pull to refresh

Как вызвать метод, которого нет

Reading time1 min
Views869
Некоторые модули имеют привычку создавать объекты из динамических классов, например, ООкнутые интерфейсы к базам любят делать классы из имён полей таблиц. Кроме того, частенько хочется обратиться к элементу структуры, которой может не существовать. Пёрл переносит обращение к элементам, которых нет, но к элементам таких элеметов уже нет. Как это решается? Вот что делал обычный порошок:

; defined $obj->subobj? $obj->subobj->method: undef

Когда таких конструкций накопилось изрядно, пришлось заставить себя перестать тупить:

; $obj->subobj and $obj->subobj->method

Tags:
Hubs:
Total votes 5: ↑5 and ↓0+5
Comments11

Articles