Estoy iterando a través de una lista de enlaces en una página, creando un objeto URI para cada uno. Cuando se crea el objeto URI, no sé si el URL tiene un esquema, por lo que cuando más tarde me llamo $uri->host()
, voy a conseguir a veces¿Cómo puedo verificar si puedo llamar a host() en un objeto URI en Perl?
Can't locate object method "host" via package "URI::_generic" at -e line 1.
porque el objeto URI es del tipo URI::_generic
, y doesn no tiene un atributo de host()
Pude comprobar antes de la creación del objeto con expresiones regulares, o pude ajustar la llamada $uri->host()
en un bloque eval
para manejar la excepción, pero creo que tiene que haber un método más suave que cualquiera de los dos.
Nunca supe del método -> can() para objetos, gracias! –
Tiene una llamada inigualable 'in your say()'. – Ether