namespace AssetRipper.VersionUtilities; public partial struct CompactUnityVersion24 { /// /// Expand to 64 bits /// /// The version to convert public static implicit operator UnityVersion(CompactUnityVersion24 version) { return new UnityVersion(version.Major, version.Minor, version.Build, version.Type, version.TypeNumber); } /// /// Expand to 32 bits /// /// The version to convert public static implicit operator CompactUnityVersion32(CompactUnityVersion24 version) { return new CompactUnityVersion32(version.Major, version.Minor, version.Build, version.Type, version.TypeNumber); } /// /// Compact to 24 bits /// /// public static explicit operator CompactUnityVersion24(UnityVersion version) { return new CompactUnityVersion24(version.Major, (byte)version.Minor, (byte)version.Build, version.Type, version.TypeNumber); } /// /// Compact to 24 bits /// /// public static explicit operator CompactUnityVersion24(CompactUnityVersion32 version) { return new CompactUnityVersion24(version.Major, version.Minor, version.Build, version.Type, version.TypeNumber); } /// /// Equality operator /// /// The left Unity version /// The right Unity version /// public static bool operator ==(CompactUnityVersion24 left, CompactUnityVersion24 right) { return left.m_MajorMinorByte == right.m_MajorMinorByte && left.m_BuildTypeShort == right.m_BuildTypeShort; } /// /// Inequality operator /// /// The left Unity version /// The right Unity version /// public static bool operator !=(CompactUnityVersion24 left, CompactUnityVersion24 right) { return left.m_MajorMinorByte != right.m_MajorMinorByte || left.m_BuildTypeShort != right.m_BuildTypeShort; } /// /// Greater than /// /// The left Unity version /// The right Unity version /// public static bool operator >(CompactUnityVersion24 left, CompactUnityVersion24 right) { return (left.m_MajorMinorByte > right.m_MajorMinorByte) || (left.m_MajorMinorByte == right.m_MajorMinorByte && left.m_BuildTypeShort > right.m_BuildTypeShort); } /// /// Greater than or equal to /// /// The left Unity version /// The right Unity version /// public static bool operator >=(CompactUnityVersion24 left, CompactUnityVersion24 right) { return (left.m_MajorMinorByte > right.m_MajorMinorByte) || (left.m_MajorMinorByte == right.m_MajorMinorByte && left.m_BuildTypeShort >= right.m_BuildTypeShort); } /// /// Less than /// /// The left Unity version /// The right Unity version /// public static bool operator <(CompactUnityVersion24 left, CompactUnityVersion24 right) { return (left.m_MajorMinorByte < right.m_MajorMinorByte) || (left.m_MajorMinorByte == right.m_MajorMinorByte && left.m_BuildTypeShort < right.m_BuildTypeShort); } /// /// Less than or equal to /// /// The left Unity version /// The right Unity version /// public static bool operator <=(CompactUnityVersion24 left, CompactUnityVersion24 right) { return (left.m_MajorMinorByte < right.m_MajorMinorByte) || (left.m_MajorMinorByte == right.m_MajorMinorByte && left.m_BuildTypeShort <= right.m_BuildTypeShort); } }