From 5e895dfec75e31ff10beedf978a1bb9ccccf34d7 Mon Sep 17 00:00:00 2001 From: Timofey Solomko Date: Sat, 18 Feb 2017 19:44:27 +0300 Subject: [PATCH] United write and writeReversed. --- Sources/BitToByteWriter.swift | 21 +++++++-------------- 1 file changed, 7 insertions(+), 14 deletions(-) diff --git a/Sources/BitToByteWriter.swift b/Sources/BitToByteWriter.swift index 11e42fba..93d8c336 100644 --- a/Sources/BitToByteWriter.swift +++ b/Sources/BitToByteWriter.swift @@ -78,27 +78,20 @@ final class BitToByteWriter { } } - func write(number: Int, bitsCount: Int) { - var mask = 1 + func write(number: Int, bitsCount: Int, bitOrder: BitOrder = .straight) { + var mask = bitOrder == .straight ? 1 : 1 << bitsCount for _ in 0.. 0 { self.write(bit: 1) } else { self.write(bit: 0) } - mask <<= 1 - } - } - - func writeReversed(number: Int, bitsCount: Int) { - var mask = 1 << bitsCount - for _ in 0.. 0 { - self.write(bit: 1) - } else { - self.write(bit: 0) + switch bitOrder { + case .straight: + mask <<= 1 + case .reversed: + mask >>= 1 } - mask >>= 1 } }