確定しているという言い方をすると「排他」のように聞こえて誤解を招くかもしれないですが、両方同時に満たしているからチェックする必要がない、ということです。両方満たしている」型だから。・・・最初はこれが受け入れがたかった。直感に反するので「そんな関数あるわけないだろ!」って思ってたんですが、大事なのはそこじゃありません。使った時のエラーはどちらか確定していないから発生していました。型の定義として両方満たしていると言っている。実在するかどうかではなく、両方満たしているのだから呼び出せるんだ、というロジックです。ときのようなチェックが不要になります。理解できなくて気が狂いそうになっていたところを助けていただいた皆様、本当にありがとうございました。upLoginユーザーは見つかりませんでした。