トップ型、ボトム型¶
mixed
¶
これはPHPの型システムにおける トップ型 であり、型情報の欠如を表します。Psalmは reportMixedIssues
フラグがオンになっているとき、または Level 1 の場合に mixed
型について警告します。
never
¶
docblockでは no-return
または never-return
としてエイリアスを付けることができます。注意:これは以前 Psalm に存在していた古い empty
型に取って代わりました。
これはPHPの型システムにおける ボトム型 です。可能な値を持たない型を表すために使用されます。これは複数のケースで発生する可能性があります:
- PHP 8.1 の実際の
never
型(古いバージョンではdocblockで使用できます)。この型は、常に例外をスローするか、常に exit() する関数の戻り値型として使用できます。 - 可能なすべての型が除外されたユニオン型。(例えば、変数が
string|int
で、条件内で is_bool() チェックを行う場合、その条件内での変数の型はnever
になります。なぜなら、その条件に入ることは決してないからです) - 今後くる型のプレースホルダーを表すこともできます - 良い例は空の配列
[]
の型で、Psalm はこれをarray<never, never>
と型付けします。配列の内容は空なので、どんな内容でも受け入れることができます - 上の行と同じコンテキストで、まだ定義されていないテンプレートに対しても発生する可能性があります