直和型
AまたはBのどちらか1つである、という閉じたケースの集合として値を表す型。
- 概念URI
https://comcomponent.com/knowledge/sum-type/
- 別名・表記
- Sum Type
- 上位概念
- 代数的データ型
- 下位概念
- 閉じたクラス階層パターン / record階層 / F#の判別共用体 / OneOfライブラリ / Source Generator系ライブラリによる直和型生成 / C# 15のunion型(プレビュー)
- 最終確認日
- 2026-08-01
- 機械可読データ
- JSON-LD
この概念が関わる関係
- 代数的データ型は直和型を利用します。代数的データ型は、AまたはBのどちらかである直和型を構成要素の1つとする / 確度: 確立した関係 / 確認日: 2026-08-01 出典
- F#の判別共用体は直和型の実装を担います。F#では直和型を、判別共用体という言語機能としてそのまま実装できる / 確度: 確立した関係 / 確認日: 2026-08-01 出典
- 閉じたクラス階層パターンは直和型の実装を担います。.NET Frameworkを含む既存システムでは、直和型をprivateコンストラクター+ネストしたsealedクラス+Matchメソッドというクラス階層パターンで実装できる / 確度: 確立した関係 / 確認日: 2026-08-01 出典
- record階層は直和型の実装を担います。.NET 5以降を前提にできるなら、直和型をabstract recordとsealed recordの階層で簡潔に実装できる / 確度: 条件付きの関係 / 確認日: 2026-08-01 出典
- OneOfライブラリは直和型の実装を担います。局所的な戻り値であれば、直和型をOneOfのようなライブラリで表せる / 確度: 確立した関係 / 確認日: 2026-08-01 出典
- Source Generator系ライブラリによる直和型生成は直和型の実装を担います。現行.NETでは、Source Generatorを使って属性を付けるだけで判別共用体風の型を生成するライブラリでも直和型を実装できる / 確度: 条件付きの関係 / 確認日: 2026-08-01 出典
- C# 15のunion型(プレビュー)は直和型の実装を担います。C# 15のunion型はプレビュー段階の機能で、指定した型のどれか1つであることを宣言する形で直和型を表現できるが、正式リリースまでに仕様が変わる可能性がある / 確度: 条件付きの関係 / 確認日: 2026-08-01 出典
この概念を扱う記事
一次資料
このページはサイトの知識グラフ(_data/knowledge/)から自動生成されています。誤りの指摘はお問い合わせからお願いします。