all: misc cleanups
This commit is contained in:
@@ -31,6 +31,7 @@
|
||||
|
||||
/*************************************************************************
|
||||
// BoundedPtr
|
||||
// (deprecated, use xspan.h instead)
|
||||
**************************************************************************/
|
||||
|
||||
template <class T>
|
||||
|
||||
@@ -37,7 +37,7 @@ template <class T>
|
||||
class MemBufferBase {
|
||||
public:
|
||||
typedef T element_type;
|
||||
typedef T *pointer;
|
||||
typedef typename std::add_pointer<T>::type pointer;
|
||||
|
||||
protected:
|
||||
pointer b = nullptr;
|
||||
@@ -124,15 +124,17 @@ private:
|
||||
|
||||
// raw_bytes overload
|
||||
template <class T>
|
||||
inline T *raw_bytes(const MemBufferBase<T> &a, size_t size_in_bytes) {
|
||||
return a.raw_bytes(size_in_bytes);
|
||||
inline typename MemBufferBase<T>::pointer raw_bytes(const MemBufferBase<T> &mbb,
|
||||
size_t size_in_bytes) {
|
||||
return mbb.raw_bytes(size_in_bytes);
|
||||
}
|
||||
|
||||
// global operators
|
||||
// rewrite "n + membuffer" to "membuffer + n" so that this will get checked above
|
||||
template <class U, class /*Dummy*/ = typename std::enable_if<std::is_integral<U>::value, U>::type>
|
||||
typename MemBuffer::pointer operator+(U n, const MemBuffer &mb) {
|
||||
return mb + n;
|
||||
template <class T, class U,
|
||||
class /*Dummy*/ = typename std::enable_if<std::is_integral<U>::value, U>::type>
|
||||
inline typename MemBufferBase<T>::pointer operator+(U n, const MemBufferBase<T> &mbb) {
|
||||
return mbb + n;
|
||||
}
|
||||
|
||||
/* vim:set ts=4 sw=4 et: */
|
||||
|
||||
@@ -192,13 +192,14 @@ template <class T>
|
||||
struct Ptr;
|
||||
|
||||
template <class T>
|
||||
inline T *raw_bytes(const PtrOrSpanOrNull<T> &a, size_t size_in_bytes);
|
||||
inline typename PtrOrSpanOrNull<T>::pointer raw_bytes(const PtrOrSpanOrNull<T> &a,
|
||||
size_t size_in_bytes);
|
||||
template <class T>
|
||||
inline T *raw_bytes(const PtrOrSpan<T> &a, size_t size_in_bytes);
|
||||
inline typename PtrOrSpan<T>::pointer raw_bytes(const PtrOrSpan<T> &a, size_t size_in_bytes);
|
||||
template <class T>
|
||||
inline T *raw_bytes(const Span<T> &a, size_t size_in_bytes);
|
||||
inline typename Span<T>::pointer raw_bytes(const Span<T> &a, size_t size_in_bytes);
|
||||
template <class T>
|
||||
inline T *raw_bytes(const Ptr<T> &a, size_t size_in_bytes);
|
||||
inline typename Ptr<T>::pointer raw_bytes(const Ptr<T> &a, size_t size_in_bytes);
|
||||
|
||||
class SpanInternalDummyArg; // not implemented
|
||||
|
||||
|
||||
@@ -31,8 +31,7 @@
|
||||
public:
|
||||
typedef T element_type;
|
||||
typedef typename std::add_lvalue_reference<T>::type reference;
|
||||
// typedef typename std::add_pointer<T>::type pointer;
|
||||
typedef T *pointer;
|
||||
typedef typename std::add_pointer<T>::type pointer;
|
||||
typedef size_t size_type;
|
||||
|
||||
// befriend all
|
||||
|
||||
@@ -45,7 +45,6 @@ public:
|
||||
|
||||
typedef T element_type;
|
||||
typedef typename std::add_lvalue_reference<T>::type reference;
|
||||
// typedef T *pointer;
|
||||
typedef typename std::add_pointer<T>::type pointer;
|
||||
|
||||
private:
|
||||
@@ -194,7 +193,7 @@ public: // raw access
|
||||
|
||||
// raw_bytes overload
|
||||
template <class T>
|
||||
inline T *raw_bytes(const Ptr<T> &a, size_t size_in_bytes) {
|
||||
inline typename Ptr<T>::pointer raw_bytes(const Ptr<T> &a, size_t size_in_bytes) {
|
||||
return a.raw_bytes(size_in_bytes);
|
||||
}
|
||||
|
||||
|
||||
@@ -92,7 +92,8 @@ public:
|
||||
|
||||
// raw_bytes overload
|
||||
template <class T>
|
||||
inline T *raw_bytes(const PtrOrSpanOrNull<T> &a, size_t size_in_bytes) {
|
||||
inline typename PtrOrSpanOrNull<T>::pointer raw_bytes(const PtrOrSpanOrNull<T> &a,
|
||||
size_t size_in_bytes) {
|
||||
return a.raw_bytes(size_in_bytes);
|
||||
}
|
||||
|
||||
|
||||
@@ -119,7 +119,7 @@ public:
|
||||
|
||||
// raw_bytes overload
|
||||
template <class T>
|
||||
inline T *raw_bytes(const PtrOrSpan<T> &a, size_t size_in_bytes) {
|
||||
inline typename PtrOrSpan<T>::pointer raw_bytes(const PtrOrSpan<T> &a, size_t size_in_bytes) {
|
||||
return a.raw_bytes(size_in_bytes);
|
||||
}
|
||||
|
||||
|
||||
@@ -119,7 +119,7 @@ public:
|
||||
|
||||
// raw_bytes overload
|
||||
template <class T>
|
||||
inline T *raw_bytes(const Span<T> &a, size_t size_in_bytes) {
|
||||
inline typename Span<T>::pointer raw_bytes(const Span<T> &a, size_t size_in_bytes) {
|
||||
return a.raw_bytes(size_in_bytes);
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user