all: misc cleanups

This commit is contained in:
Markus F.X.J. Oberhumer
2022-10-20 00:31:02 +02:00
parent 13276d93fa
commit 07d368adca
14 changed files with 28 additions and 58 deletions
+1
View File
@@ -31,6 +31,7 @@
/*************************************************************************
// BoundedPtr
// (deprecated, use xspan.h instead)
**************************************************************************/
template <class T>
+8 -6
View File
@@ -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: */
+5 -4
View File
@@ -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
+1 -2
View File
@@ -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
+1 -2
View File
@@ -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);
}
+2 -1
View File
@@ -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);
}
+1 -1
View File
@@ -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);
}
+1 -1
View File
@@ -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);
}