Table of Contents

Struct SafeEnum<T>

Namespace
ChartTools.Extensions.Enums
Assembly
ChartTools.dll
public struct SafeEnum<T> : IEnumWrapper<SafeEnum<T>, T>, IEnumWrapper<SafeEnum<T>>, IEquatable<SafeEnum<T>>, IEquatable<SafeEnum<T>?>, IComparable<SafeEnum<T>>, IEqualityOperators<SafeEnum<T>, SafeEnum<T>?, bool>, IComparisonOperators<SafeEnum<T>, SafeEnum<T>, bool>, IEqualityOperators<SafeEnum<T>, SafeEnum<T>, bool>, ISpanParsable<SafeEnum<T>>, IParsable<SafeEnum<T>>, IEquatable<T>, IEquatable<T?>, IComparable<T>, IEqualityOperators<SafeEnum<T>, T?, bool>, IComparisonOperators<SafeEnum<T>, T, bool>, IEqualityOperators<SafeEnum<T>, T, bool>, IBitwiseOperators<SafeEnum<T>, T, T> where T : struct, Enum

Type Parameters

T
Implements
Inherited Members
Extension Methods

Constructors

SafeEnum(T)

public SafeEnum(T value)

Parameters

value T

Properties

Value

public T Value { readonly get; set; }

Property Value

T

Methods

CompareTo(SafeEnum<T>)

public int CompareTo(SafeEnum<T> other)

Parameters

other SafeEnum<T>

Returns

int

CompareTo(T)

public int CompareTo(T other)

Parameters

other T

Returns

int

Equals(SafeEnum<T>)

public readonly bool Equals(SafeEnum<T> other)

Parameters

other SafeEnum<T>

Returns

bool

Equals(SafeEnum<T>?)

public bool Equals(SafeEnum<T>? nullable)

Parameters

nullable SafeEnum<T>?

Returns

bool

Equals(T?)

public bool Equals(T? nullable)

Parameters

nullable T?

Returns

bool

Equals(object)

public override readonly bool Equals(object obj)

Parameters

obj object

Returns

bool

Equals(T)

public bool Equals(T other)

Parameters

other T

Returns

bool

GetHashCode()

public override readonly int GetHashCode()

Returns

int

ToString()

public override readonly string ToString()

Returns

string

Operators

operator &(SafeEnum<T>, SafeEnum<T>)

public static T operator &(SafeEnum<T> left, SafeEnum<T> right)

Parameters

left SafeEnum<T>
right SafeEnum<T>

Returns

T

operator |(SafeEnum<T>, SafeEnum<T>)

public static T operator |(SafeEnum<T> left, SafeEnum<T> right)

Parameters

left SafeEnum<T>
right SafeEnum<T>

Returns

T

operator ^(SafeEnum<T>, SafeEnum<T>)

public static T operator ^(SafeEnum<T> left, SafeEnum<T> right)

Parameters

left SafeEnum<T>
right SafeEnum<T>

Returns

T

operator >(SafeEnum<T>, SafeEnum<T>?)

public static bool operator >(SafeEnum<T> left, SafeEnum<T>? right)

Parameters

left SafeEnum<T>
right SafeEnum<T>?

Returns

bool

operator >(SafeEnum<T>, T?)

public static bool operator >(SafeEnum<T> left, T? right)

Parameters

left SafeEnum<T>
right T?

Returns

bool

operator >=(SafeEnum<T>, SafeEnum<T>?)

public static bool operator >=(SafeEnum<T> left, SafeEnum<T>? right)

Parameters

left SafeEnum<T>
right SafeEnum<T>?

Returns

bool

operator >=(SafeEnum<T>, T?)

public static bool operator >=(SafeEnum<T> left, T? right)

Parameters

left SafeEnum<T>
right T?

Returns

bool

operator <<(SafeEnum<T>, int)

public static T operator <<(SafeEnum<T> value, int shiftAmount)

Parameters

value SafeEnum<T>
shiftAmount int

Returns

T

operator <(SafeEnum<T>, SafeEnum<T>?)

public static bool operator <(SafeEnum<T> left, SafeEnum<T>? right)

Parameters

left SafeEnum<T>
right SafeEnum<T>?

Returns

bool

operator <(SafeEnum<T>, T?)

public static bool operator <(SafeEnum<T> left, T? right)

Parameters

left SafeEnum<T>
right T?

Returns

bool

operator <=(SafeEnum<T>, SafeEnum<T>?)

public static bool operator <=(SafeEnum<T> left, SafeEnum<T>? right)

Parameters

left SafeEnum<T>
right SafeEnum<T>?

Returns

bool

operator <=(SafeEnum<T>, T?)

public static bool operator <=(SafeEnum<T> left, T? right)

Parameters

left SafeEnum<T>
right T?

Returns

bool

operator >>(SafeEnum<T>, int)

public static T operator >>(SafeEnum<T> value, int shiftAmount)

Parameters

value SafeEnum<T>
shiftAmount int

Returns

T

operator >>>(SafeEnum<T>, int)

public static T operator >>>(SafeEnum<T> value, int shiftAmount)

Parameters

value SafeEnum<T>
shiftAmount int

Returns

T

Explicit Interface Implementations

operator &(SafeEnum<T>, T)

static T operator &(SafeEnum<T> left, T right)

Parameters

left SafeEnum<T>
right T

Returns

T

operator |(SafeEnum<T>, T)

static T operator |(SafeEnum<T> left, T right)

Parameters

left SafeEnum<T>
right T

Returns

T

operator ==(SafeEnum<T>, SafeEnum<T>)

static bool operator ==(SafeEnum<T> left, SafeEnum<T> right)

Parameters

left SafeEnum<T>
right SafeEnum<T>

Returns

bool

operator ==(SafeEnum<T>, SafeEnum<T>?)

static bool operator ==(SafeEnum<T> left, SafeEnum<T>? right)

Parameters

left SafeEnum<T>
right SafeEnum<T>?

Returns

bool

operator ==(SafeEnum<T>, T?)

static bool operator ==(SafeEnum<T> left, T? right)

Parameters

left SafeEnum<T>
right T?

Returns

bool

operator ==(SafeEnum<T>, T)

static bool operator ==(SafeEnum<T> left, T right)

Parameters

left SafeEnum<T>
right T

Returns

bool

operator ^(SafeEnum<T>, T)

static T operator ^(SafeEnum<T> left, T right)

Parameters

left SafeEnum<T>
right T

Returns

T

operator >(SafeEnum<T>, SafeEnum<T>)

static bool operator >(SafeEnum<T> left, SafeEnum<T> right)

Parameters

left SafeEnum<T>
right SafeEnum<T>

Returns

bool

operator >(SafeEnum<T>, T)

static bool operator >(SafeEnum<T> left, T right)

Parameters

left SafeEnum<T>
right T

Returns

bool

operator >=(SafeEnum<T>, SafeEnum<T>)

static bool operator >=(SafeEnum<T> left, SafeEnum<T> right)

Parameters

left SafeEnum<T>
right SafeEnum<T>

Returns

bool

operator >=(SafeEnum<T>, T)

static bool operator >=(SafeEnum<T> left, T right)

Parameters

left SafeEnum<T>
right T

Returns

bool

implicit operator T(SafeEnum<T>)

static implicit operator T(SafeEnum<T> wrapper)

Parameters

wrapper SafeEnum<T>

Returns

T

implicit operator SafeEnum<T>(T)

static implicit operator SafeEnum<T>(T value)

Parameters

value T

Returns

SafeEnum<T>

operator !=(SafeEnum<T>, SafeEnum<T>)

static bool operator !=(SafeEnum<T> left, SafeEnum<T> right)

Parameters

left SafeEnum<T>
right SafeEnum<T>

Returns

bool

operator !=(SafeEnum<T>, SafeEnum<T>?)

static bool operator !=(SafeEnum<T> left, SafeEnum<T>? right)

Parameters

left SafeEnum<T>
right SafeEnum<T>?

Returns

bool

operator !=(SafeEnum<T>, T?)

static bool operator !=(SafeEnum<T> left, T? right)

Parameters

left SafeEnum<T>
right T?

Returns

bool

operator !=(SafeEnum<T>, T)

static bool operator !=(SafeEnum<T> left, T right)

Parameters

left SafeEnum<T>
right T

Returns

bool

operator <(SafeEnum<T>, SafeEnum<T>)

static bool operator <(SafeEnum<T> left, SafeEnum<T> right)

Parameters

left SafeEnum<T>
right SafeEnum<T>

Returns

bool

operator <(SafeEnum<T>, T)

static bool operator <(SafeEnum<T> left, T right)

Parameters

left SafeEnum<T>
right T

Returns

bool

operator <=(SafeEnum<T>, SafeEnum<T>)

static bool operator <=(SafeEnum<T> left, SafeEnum<T> right)

Parameters

left SafeEnum<T>
right SafeEnum<T>

Returns

bool

operator <=(SafeEnum<T>, T)

static bool operator <=(SafeEnum<T> left, T right)

Parameters

left SafeEnum<T>
right T

Returns

bool

operator ~(SafeEnum<T>)

static T operator ~(SafeEnum<T> value)

Parameters

value SafeEnum<T>

Returns

T