Buenas noches, estoy teniendo un tema con las excepciones.
Cree mi propia excepcion, heredando de la clase Error como nos habian dicho
Luego en mi metodo1 tengo una condicion, un ejemplo para clarificar:
metodo1: parametro
//hago cosas
luego, mas abajo tengo
(condicion) ifTrue: [devolver algo].
(condicion) ifFalse: [MiExcepcion signal]
Pero resulta que ahora SIEMPRE me lanza la expcecion, cuando si se evalua el primer ifTrue, ni deberia entrar al ifFalse, ya que ya he devuelto algo, por lo que se deberia cortar el metodo antes de llegar a esa ultima linea donde hago el signal. ¿Que puede estar pasando?
El problema debe pasar por otro lado. En ese ejemplo lo más probable es que la condición nunca sea verdadera o que en realidad no estás devolviendo nada en caso de que lo sea y por eso siempre lanza la excepción.
Tambien si por ejemplo tengo el siguiente caso:
(condicion) ifTrue: [^devolver algo]
^MiExcepcion Signal.
Y la condicion se cumple, no deberia seguir el metodo, por ende no deberia tirar la excepcion. Estoy en lo correcto?