スネ夫の、のび太に対して幾度となく行われる鬼畜の所業について仕様化してみた。
仕様
- 可変長引数を取ること
- クラスベースの場合
- スネ夫クラスに実装すること
- 引数が3個ならば……
- 2個目までを受け入れ対象とすること
- 3個目を破棄対象とすること
- 引数が3個以外ならば、例外または未定義動作とすること
- クラスベースでない場合
- 第一引数はスネ夫固定であること
- スネ夫でない場合は例外または未定義動作とすること
- 引数が4個ならば……
- 3個目までを受け入れ対象とすること
- 4個目を破棄対象とすること
- 引数が4個以外ならば、例外または未定義動作とすること
- 第一引数はスネ夫固定であること
- 受け入れ対象は受け入れグループとして返すこと
- グループ内の順序は問わない
- 破棄対象は破棄グループとして返すこと
- グループ内の順序は問わない
- 言語仕様上、返り値が1つに限られる場合、受け入れ対象と破棄対象が区別できるようなデータ形式で返すこと
気づき
- 思ったほど冷酷でもない。
- 4人目になってやっと飛びつくのび太の行動が遅い。
- だが、のび太のおかげで例外や未定義動作とならずに済んでいる(これが必要悪ということか……?)。