Inspectopedia Help

Unsound type guard check

Reports a typeof or instanceof unsound type guard check. The typeof x type guard can be unsound in one of the following two cases:

  • typeof x never corresponds to the specified value (for example, typeof x === 'number' when x is of the type 'string | boolean')

  • typeof x always corresponds to the specified value (for example, typeof x === 'string' when x is of the type 'string')

The x instanceof A type guard can be unsound in one of the following two cases:

  • The type of x is not related to A

  • The type of x is A or a subtype of A

Inspection Details

Available in:

AppCode 2023.3, CLion 2023.3, GoLand 2023.3, IntelliJ IDEA 2023.3, JetBrains Rider 2023.1, PhpStorm 2023.3, PyCharm 2023.3, Qodana for .NET 2023.1, Qodana for JS 2023.3, Qodana for JVM 2023.3, Qodana for PHP 2023.3, Qodana for Ruby 2023.3, RubyMine 2023.3, WebStorm 2023.3

Plugin:

JavaScript and TypeScript, 233.SNAPSHOT

Last modified: 13 July 2023