setBits static method

int setBits(
  1. int byteValue,
  2. Register register,
  3. String bitsName,
  4. dynamic value,
)

Implementation

static int setBits(int byteValue, Register register, String bitsName, dynamic value) {
  Bits? bits = register.bits[bitsName];
  if (bits == null) {
    throw Exception("Bits $bitsName not mapped for Register ${register.name}");
  }

  if (bits.bitNumbers.length == 1) {
    // set just one bit to true or false
    // value must be boolean
    return _setSingleBit(byteValue, register, bits, value);
  } else {
    // set a group of bits to a value we look up from our adapter map based on supplied value
    return _setMultipleBits(byteValue, register, bits, value);
  }
}