A discriminated (tagged) union हे ऑब्जेक्ट प्रकारांचे एक union आहे जे सर्वांना एक सामान्य literal फील्ड सामायिक करतात — discriminant — जे कंपाइलर व्हेरिएंट्स वेगळे करण्यासाठी आणि सुरक्षितपणे narrow करण्यासाठी वापरतो।
=
| { : }
| { : ; : }
| { : ; : };
