docs.unity3d.com
Search Results for

    Show / Hide Table of Contents

    Struct OptionalEnum<T>

    A struct that can be used to represent an optional enum value.

    Implements
    IEquatable<OptionalEnum<T>>
    Inherited Members
    ValueType.ToString()
    object.Equals(object, object)
    object.GetType()
    object.ReferenceEquals(object, object)
    Namespace: Unity.AppUI.Core
    Assembly: Unity.AppUI.dll
    Syntax
    [Serializable]
    public struct OptionalEnum<T> : IEquatable<OptionalEnum<T>> where T : Enum
    Type Parameters
    Name Description
    T

    The enum type.

    Constructors

    OptionalEnum(T)

    Constructs an OptionalEnum<T> with the given value.

    Declaration
    public OptionalEnum(T value)
    Parameters
    Type Name Description
    T value

    The value to set.

    Remarks

    The IsSet property will become true.

    Properties

    IsSet

    Whether the value is set.

    Declaration
    public bool IsSet { get; }
    Property Value
    Type Description
    bool

    Value

    The current value.

    Declaration
    public T Value { get; }
    Property Value
    Type Description
    T
    Remarks

    This field is serialized even if isSet is false. Please use IsSet to check if the value is set.

    none

    An OptionalEnum<T> with no value set.

    Declaration
    public static OptionalEnum<T> none { get; }
    Property Value
    Type Description
    OptionalEnum<T>

    Methods

    Equals(object)

    Declaration
    public override bool Equals(object obj)
    Parameters
    Type Name Description
    object obj
    Returns
    Type Description
    bool
    Overrides
    ValueType.Equals(object)

    Equals(OptionalEnum<T>)

    Declaration
    public bool Equals(OptionalEnum<T> other)
    Parameters
    Type Name Description
    OptionalEnum<T> other
    Returns
    Type Description
    bool

    GetHashCode()

    Declaration
    public override int GetHashCode()
    Returns
    Type Description
    int
    Overrides
    ValueType.GetHashCode()

    Operators

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

    Determines whether two OptionalEnum<T>s are equal.

    Declaration
    public static bool operator ==(OptionalEnum<T> left, OptionalEnum<T> right)
    Parameters
    Type Name Description
    OptionalEnum<T> left

    The first OptionalEnum<T> to compare.

    OptionalEnum<T> right

    The second OptionalEnum<T> to compare.

    Returns
    Type Description
    bool

    Whether the two OptionalEnum<T>s are equal.

    implicit operator OptionalEnum<T>(T)

    Automatically converts a value to an OptionalEnum<T>.

    Declaration
    public static implicit operator OptionalEnum<T>(T value)
    Parameters
    Type Name Description
    T value

    The value to convert.

    Returns
    Type Description
    OptionalEnum<T>

    An OptionalEnum<T> with the given value.

    Remarks

    The IsSet property will become true.

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

    Determines whether two OptionalEnum<T>s are not equal.

    Declaration
    public static bool operator !=(OptionalEnum<T> left, OptionalEnum<T> right)
    Parameters
    Type Name Description
    OptionalEnum<T> left

    The first OptionalEnum<T> to compare.

    OptionalEnum<T> right

    The second OptionalEnum<T> to compare.

    Returns
    Type Description
    bool

    Whether the two OptionalEnum<T>s are not equal.

    Implements

    IEquatable<T>
    In This Article
    Back to top
    Copyright © 2025 Unity Technologies — Trademarks and terms of use
    • Legal
    • Privacy Policy
    • Cookie Policy
    • Do Not Sell or Share My Personal Information
    • Your Privacy Choices (Cookie Settings)