









[blog]
[ML]
[todo]
[CVS]
[bug]
[apache log]
[swiki log]
[statistics]
[map]
[man]
[info]
[アンテナ]
Squeakのif文
基本的に後置形式で書きます。PerlやらRubyな人には、わかるでしょう。

ReciverがBooleanである場合。
使えるのは、
- ifTrue: [reciverがtrueのとき評価するブロック]
- receiverがfalseのときには、nilが返されます。
- ifFalse:[reciverがfalseのとき評価するブロック]
- receiverがtrueのときには、nilが返されます。
- ifTrue: [reciverがtrueのとき評価するブロック] ifFalse: [reciverがfalseのとき評価するブロック]
- ifFalse: [reciverがfalseのとき評価するブロック] ifTrue: [reciverがtrueのとき評価するブロック]
です。
条件に合致したブロックが評価されます。
receiverが、Booleanでない場合には例外が発生します。
通常のプログラミング言語と異なり、あくまでもreceiverにメッセージを
送っているのだと解釈します。
でも、使う分には普通のプログラミング言語の制御文的に理解して使っても別段問題
にはならないです。

ReceiverがObjectである場合(って言うか、どのObjectにでも使えるもの)
使えるものは、
- ifNil: [nilのとき評価するブロック]
- ifNotNil: [nilでないときに評価するブロック]
- ifNil: [nilのとき評価するブロック] ifNotNil: [nilでないときに評価するブロック]
- ifNotNil: [nilでないときに評価するブロック] ifNil: [nilのとき評価するブロック]

Link to this Page