LenovoLegionToolkit
17 строк · 516.0 Байт
1using System;2
3namespace LenovoLegionToolkit.Lib.Extensions;4
5public static class UintExtensions6{
7public static uint ReverseEndianness(this uint state)8{9var bytes = BitConverter.GetBytes(state);10Array.Reverse(bytes, 0, bytes.Length);11return BitConverter.ToUInt32(bytes, 0);12}13
14public static bool GetNthBit(this uint num, int n) => (num & (1 << n)) != 0;15
16public static uint SetNthBit(this uint num, int n, bool state) => state ? num | (1U << n) : num & ~(1U << n);17}
18