dotnet / dotnet/csharplang

[Proposal]: Discriminated Unions

Open
#8,928 0 comments 0 reactions 3 assignees Assigned to @333fred View on GitHub
Proposal champion
Dominant language
C#
Stars
12.7k
Forks
1.1k
Avg merge
11h 1m
Merged PRs (30d)
3

Description

# Discriminated Unions

* Union proposals overview: https://github.com/dotnet/csharplang/blob/main/meetings/working-groups/discriminated-unions/union-proposals-overview.md
* Discussion: https://github.com/dotnet/csharplang/discussions/8313
* Past discussion threads
* https://github.com/dotnet/csharplang/discussions/8926
* https://github.com/dotnet/csharplang/discussions/8927
* https://github.com/dotnet/csharplang/discussions/7010
* https://github.com/dotnet/csharplang/discussions/8942

## Summary
[summary]: #summary

A proposal for type unions (aka discriminated unions) in C#.

## Design meetings

* https://github.com/dotnet/csharplang/blob/main/meetings/2022/LDM-2022-08-31.md#discriminated-unions
* https://github.com/dotnet/csharplang/blob/main/meetings/2022/LDM-2022-09-26.md#discriminated-unions
* https://github.com/dotnet/csharplang/blob/main/meetings/2024/LDM-2024-07-24.md#discriminated-unions
* https://github.com/dotnet/csharplang/blob/main/meetings/2025/LDM-2025-01-13.md#discriminated-unions
* https://github.com/dotnet/csharplang/blob/main/meetings/2025/LDM-2025-08-13.md#unions
* https://github.com/dotnet/csharplang/blob/main/meetings/2025/LDM-2025-08-18.md#unions
* https://github.com/dotnet/csharplang/blob/main/meetings/2025/LDM-2025-08-27.md#type-value-conversion
* https://github.com/dotnet/csharplang/blob/main/meetings/2025/LDM-2025-08-27.md#union-syntax

Contributor guide

No contributing guide indexed for this repository

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.