Skip to content

Commit c134e7c

Browse files
author
Anton Shabouta
committed
Use deque for buffer
1 parent f80bbb8 commit c134e7c

File tree

2 files changed

+3
-9
lines changed

2 files changed

+3
-9
lines changed

Buffer.cpp

Lines changed: 1 addition & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -13,10 +13,6 @@
1313
Buffer::Buffer() noexcept {
1414
}
1515

16-
Buffer::Buffer(const std::vector<unsigned char> &_buffer) noexcept:
17-
buffer(_buffer) {
18-
}
19-
2016
void Buffer::clear() noexcept {
2117
buffer.clear();
2218
}
@@ -67,8 +63,7 @@ template <class T> inline void Buffer::append(const T &val) noexcept {
6763
unsigned int size = sizeof(T);
6864
unsigned const char *array = reinterpret_cast<unsigned const char*>(&val);
6965

70-
for (unsigned int i = 0; i < size; ++i)
71-
buffer.push_back(array[size - i - 1]);
66+
buffer.insert(buffer.end(), array, array + size);
7267
}
7368

7469
void Buffer::appendBoolean(bool val) noexcept {

Buffer.hpp

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@
88
*/
99

1010
#pragma once
11-
#include <vector>
11+
#include <deque>
1212
#include <sstream>
1313
#include <exception>
1414

@@ -17,7 +17,6 @@ struct BufferOverflow : public std::exception {};
1717
class Buffer {
1818
public:
1919
Buffer() noexcept;
20-
Buffer(const std::vector<unsigned char>&) noexcept;
2120

2221
void clear() noexcept;
2322
void write(char * str, long length) noexcept;
@@ -102,5 +101,5 @@ class Buffer {
102101

103102
~Buffer();
104103
private:
105-
std::vector<unsigned char> buffer;
104+
std::deque<unsigned char> buffer;
106105
};

0 commit comments

Comments
 (0)