From 3461fe0653f9e57fa8836e89ac4a4dd2801efbe4 Mon Sep 17 00:00:00 2001 From: suin Date: Fri, 7 Aug 2026 20:47:38 +0900 Subject: [PATCH] =?UTF-8?q?=E5=A4=89=E6=80=A7=E3=81=AE=E8=AA=AC=E6=98=8E?= =?UTF-8?q?=E3=81=A8=E5=9E=8B=E5=AE=9A=E7=BE=A9=E3=81=AE=E5=AF=BE=E5=BF=9C?= =?UTF-8?q?=E3=82=92=E4=BF=AE=E6=AD=A3=E3=81=97=E3=81=BE=E3=81=97=E3=81=9F?= =?UTF-8?q?=E3=80=82?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit ## 対象者 - [x] 📖 読者 ## Problem 変性の説明では引数`I`を共変、戻り値`O`を反変としていました。一方で直後の型定義では、戻り値`O`に`out`、引数`I`に`in`を指定していました。説明とコード例が逆になっており、読者が変性を誤って理解する可能性がありました。 ## Solution `CovariantFunction`と`ContravariantFunction`の型定義に合わせて、戻り値`O`が共変、引数`I`が反変であることを説明しました。 ## Value 読者が`out`による共変性と`in`による反変性を、コード例と対応付けて理解できるようになります。 --- close #1137 --- docs/reference/generics/variance.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/reference/generics/variance.md b/docs/reference/generics/variance.md index 4100e720..44c0d82d 100644 --- a/docs/reference/generics/variance.md +++ b/docs/reference/generics/variance.md @@ -33,7 +33,7 @@ TypeScriptでは、型の互換性を判定する際に変性(variance)という type BivariantFunction = (arg: I) => O; ``` -ここで引数`I`を共変にした`CovariantFunction`と戻り値`O`を反変にした`ContravariantFunction`、引数も戻り値も不変にした`InvariantFunction`を定義します。するとそれらは次のように定義されます。 +ここで戻り値`O`を共変にした`CovariantFunction`と引数`I`を反変にした`ContravariantFunction`、引数も戻り値も不変にした`InvariantFunction`を定義します。するとそれらは次のように定義されます。 ```ts twoslash type BivariantFunction = (arg: I) => O;