Buenas, tengo un problema, en los metodos que se devuelve si existe un contacto o un grupo hago un loop y comparo algo asi:
[ (...) ifTrue: [^True] ] .
^ False.
Pero siempre me salta un error que dice True(Class) does not Understand #ifFalse. No se que puede ser, y me limita las pruebas con los asserts y demas, Gracias.
tene cuidado, seguro que lo que estas queriendo usar es el true/false pero con minuscula, en mayúscula True y False en Pharo son objetos distintos.
Saludos!
Yo lo que estoy haciendo es ponele, algo asi, ( 3*2 = 6 ) ifTrue: [ ... ]. Y cuando pruebo en el playground el metodo, me tira lo que yo espero que tire, pero con el assert falla por alguna razon, y no entiendo que puede ser.
Como dijeron más arriba, asegurate de que estés devolviendo true o false en minúsculas. Además fijate que las colecciones en Smalltalk entienden el mensaje includes:, que es un iterador que te resuelve la búsqueda.
Gente,
Esta pregunta que han hecho tiene respuestas fáciles (que no ayudan a aprender) y más complejas (que sirven para que, de paso, aprendan).
Las fáciles ya salieron todas: probá en minúsculas, ojo dónde ponés los corchetes, copiá y pegá esto...
Les sugieron que exploren un poco las clases Boolean, True y False (todas con mayúsculas), así entienden varias cosas de Smalltalk:
- Todo son objetos y mensajes
- ifTrue: ifFalse: es un mensaje
- Ese mensaje funciona combinando las clases recién mencionadas
Espero que esto les sirva para aprender. Las respuestas fáciles sólo sirven para zafar (lo cual es válido cuando están con poco tiempo o muy trabados), pero a largo plazo necesitan entender.
Saludos,
Carlos Fontela