Tweaked BitBuffer.appendBits() comment and code in a few language versions.

pull/39/merge
Project Nayuki 6 years ago
parent dce44caf8f
commit cdd1d0150d

@ -97,6 +97,7 @@ public final class BitBuffer implements Cloneable {
* to this sequence. Requires 0 &le; val &lt; 2<sup>len</sup>. * to this sequence. Requires 0 &le; val &lt; 2<sup>len</sup>.
* @param val the value to append * @param val the value to append
* @param len the number of low bits in the value to take * @param len the number of low bits in the value to take
* @throws IllegalArgumentException if the value or number of bits is out of range
* @throws IllegalStateException if appending the data * @throws IllegalStateException if appending the data
* would make bitLength exceed Integer.MAX_VALUE * would make bitLength exceed Integer.MAX_VALUE
*/ */

@ -1067,7 +1067,7 @@ impl BitBuffer {
// Appends the given number of low bits of the given value // Appends the given number of low bits of the given value
// to this sequence. Requires 0 <= len <= 31 and 0 <= val < 2^len. // to this sequence. Requires 0 <= len <= 31 and 0 <= val < 2^len.
pub fn append_bits(&mut self, val: u32, len: u8) { pub fn append_bits(&mut self, val: u32, len: u8) {
assert!(len < 32 && (val >> len) == 0 || len == 32, "Value out of range"); assert!(len <= 31 && (val >> len) == 0, "Value out of range");
self.0.extend((0 .. len as i32).rev().map(|i| get_bit(val, i))); // Append bit by bit self.0.extend((0 .. len as i32).rev().map(|i| get_bit(val, i))); // Append bit by bit
} }
} }

Loading…
Cancel
Save