* Added asserts when building a HeaderList and removed checks for handle

validity.
* Removed explicit move semantic when cloning a MessageBuilder.
* Renamed clone() to try_clone() in ClonablePtr class.
This commit is contained in:
accelerated
2018-12-04 11:12:28 -05:00
parent 6bbddcd5d5
commit 93e066a1c1
5 changed files with 21 additions and 23 deletions

View File

@@ -192,7 +192,7 @@ bool operator!=(const HeaderList<HeaderType>& lhs, const HeaderList<HeaderType>
template <typename HeaderType>
HeaderList<HeaderType> HeaderList<HeaderType>::make_non_owning(rd_kafka_headers_t* handle) {
return handle ? HeaderList(handle, NonOwningTag()) : HeaderList();
return HeaderList(handle, NonOwningTag());
}
template <typename HeaderType>
@@ -204,21 +204,19 @@ HeaderList<HeaderType>::HeaderList()
template <typename HeaderType>
HeaderList<HeaderType>::HeaderList(size_t reserve)
: handle_(rd_kafka_headers_new(reserve), &rd_kafka_headers_destroy, &rd_kafka_headers_copy) {
assert(reserve);
}
template <typename HeaderType>
HeaderList<HeaderType>::HeaderList(rd_kafka_headers_t* handle)
: handle_(handle,
handle ? &rd_kafka_headers_destroy : nullptr,
handle ? &rd_kafka_headers_copy : nullptr) { //if we own the header list, we clone it on copy
: handle_(handle, &rd_kafka_headers_destroy, &rd_kafka_headers_copy) { //if we own the header list, we clone it on copy
assert(handle);
}
template <typename HeaderType>
HeaderList<HeaderType>::HeaderList(rd_kafka_headers_t* handle, NonOwningTag)
: handle_(handle,
handle ? &dummy_deleter : nullptr,
nullptr) { //if we don't own the header list, we forward the handle on copy.
: handle_(handle, &dummy_deleter, nullptr) { //if we don't own the header list, we forward the handle on copy.
assert(handle);
}
// Methods