- 
                Notifications
    You must be signed in to change notification settings 
- Fork 35
T_CodeJam_ValueOneOf_3
        Andrew Koryavchenko edited this page Jun 17, 2018 
        ·
        2 revisions
      
    Value type tagged union for 3 types.
Namespace: CodeJam
Assembly: CodeJam (in CodeJam.dll) Version: 2.1.0.0
C#
public struct ValueOneOf<T1, T2, T3> : IOneOf<T1, T2, T3>, 
	IEquatable<ValueOneOf<T1, T2, T3>>VB
Public Structure ValueOneOf(Of T1, T2, T3)
	Implements IOneOf(Of T1, T2, T3), IEquatable(Of ValueOneOf(Of T1, T2, T3))F#
[<SealedAttribute>]
type ValueOneOf<'T1, 'T2, 'T3> =  
    struct
        interface IOneOf<'T1, 'T2, 'T3>
        interface IEquatable<ValueOneOf<'T1, 'T2, 'T3>>
    end
- T1
- Type of case 1
- T2
- Type of case 2
- T3
- Type of case 3
| Name | Description | |
|---|---|---|
|  | IsCase1 | Returns trueif class contains value of type T1. | 
|  | IsCase2 | Returns trueif class contains value of type T2. | 
|  | IsCase3 | Returns trueif class contains value of type T3. | 
| Name | Description | |
|---|---|---|
|    | Create(T1) | Creates instance of OneOf(T1, T2, T3) for value of type T1. | 
|    | Create(T2) | Creates instance of OneOf(T1, T2, T3) for value of type T2. | 
|    | Create(T3) | Creates instance of OneOf(T1, T2, T3) for value of type T3. | 
|  | Do | Calls action for actual type argument. | 
|  | Equals(Object) | Indicates whether this instance and a specified object are equal. (Overrides ValueType.Equals(Object).) | 
|  | Equals(ValueOneOf(T1, T2, T3)) | Indicates whether the current object is equal to another object of the same type. | 
|  | GetHashCode | Returns the hash code for this instance. (Overrides ValueType.GetHashCode().) | 
|  | GetType | Gets the Type of the current instance. (Inherited from Object.) | 
|  | GetValue(TResult) | Calls func for actual type argument and returns calculated value. | 
|  | ToString | Returns the fully qualified type name of this instance. (Inherited from ValueType.) | 
| Name | Description | |
|---|---|---|
|    | Equality | Equality operator. | 
|    | Implicit(T1 to ValueOneOf(T1, T2, T3)) | Implicit cast operator. | 
|    | Implicit(T2 to ValueOneOf(T1, T2, T3)) | Implicit cast operator. | 
|    | Implicit(T3 to ValueOneOf(T1, T2, T3)) | Implicit cast operator. | 
|    | Inequality | Unequality operator. |