treewide: Remove redundant inline
constexpr implies inline for functions
Change-Id: I562d7b11702a5feb3a2eeb210a296910b11bce7a
Signed-off-by: William A. Kennington III <wak@google.com>
diff --git a/include/stdplus/raw.hpp b/include/stdplus/raw.hpp
index c572744..a5206c0 100644
--- a/include/stdplus/raw.hpp
+++ b/include/stdplus/raw.hpp
@@ -54,7 +54,7 @@
* @return True if they are the same, false otherwise
*/
template <typename A, typename B>
-inline constexpr bool equal(const A& a, const B& b) noexcept
+constexpr bool equal(const A& a, const B& b) noexcept
{
static_assert(std::is_trivially_copyable_v<A>);
static_assert(std::is_trivially_copyable_v<B>);
@@ -71,7 +71,7 @@
*/
#define STDPLUS_COPY_FROM(func, comp) \
template <typename T, typename Container> \
- inline constexpr T func(const Container& c) \
+ constexpr T func(const Container& c) \
{ \
static_assert(std::is_trivially_copyable_v<T>); \
static_assert(detail::trivialContainer<Container>); \
@@ -109,7 +109,7 @@
template <typename T, typename A = stdplus::raw::UnAligned, \
typename Container, \
typename Tp = detail::copyConst<T, detail::dataType<Container>>> \
- inline constexpr Tp& func(Container&& c) \
+ constexpr Tp& func(Container&& c) \
{ \
static_assert(std::is_trivially_copyable_v<Tp>); \
static_assert(detail::trivialContainer<Container>); \
@@ -134,7 +134,7 @@
* @return The copyable type with data populated
*/
template <typename T, typename CharT>
-inline constexpr T extract(std::basic_string_view<CharT>& data)
+constexpr T extract(std::basic_string_view<CharT>& data)
{
T ret = copyFrom<T>(data);
static_assert(sizeof(T) % sizeof(CharT) == 0);
@@ -143,7 +143,7 @@
}
template <typename T, typename IntT,
typename = std::enable_if_t<std::is_trivially_copyable_v<IntT>>>
-inline constexpr T extract(std::span<IntT>& data)
+constexpr T extract(std::span<IntT>& data)
{
T ret = copyFrom<T>(data);
static_assert(sizeof(T) % sizeof(IntT) == 0);
@@ -158,7 +158,7 @@
* @return A reference to the data
*/
template <typename T, typename A = stdplus::raw::UnAligned, typename CharT>
-inline constexpr const T& extractRef(std::basic_string_view<CharT>& data)
+constexpr const T& extractRef(std::basic_string_view<CharT>& data)
{
const T& ret = refFrom<T, A>(data);
static_assert(sizeof(T) % sizeof(CharT) == 0);
@@ -168,7 +168,7 @@
template <typename T, typename A = stdplus::raw::UnAligned, typename IntT,
typename = std::enable_if_t<std::is_trivially_copyable_v<IntT>>,
typename Tp = detail::copyConst<T, IntT>>
-inline constexpr Tp& extractRef(std::span<IntT>& data)
+constexpr Tp& extractRef(std::span<IntT>& data)
{
Tp& ret = refFrom<Tp, A>(data);
static_assert(sizeof(Tp) % sizeof(IntT) == 0);
@@ -183,8 +183,7 @@
* @return A view over the input with the given output integral type
*/
template <typename CharT, typename T>
-inline constexpr std::enable_if_t<!detail::hasData<T>,
- std::basic_string_view<CharT>>
+constexpr std::enable_if_t<!detail::hasData<T>, std::basic_string_view<CharT>>
asView(const T& t) noexcept
{
static_assert(std::is_trivially_copyable_v<T>);
@@ -193,8 +192,8 @@
}
template <typename CharT, typename Container>
-inline constexpr std::enable_if_t<detail::hasData<Container>,
- std::basic_string_view<CharT>>
+constexpr std::enable_if_t<detail::hasData<Container>,
+ std::basic_string_view<CharT>>
asView(const Container& c) noexcept
{
static_assert(detail::trivialContainer<Container>);
@@ -207,7 +206,7 @@
typename = std::enable_if_t<std::is_trivially_copyable_v<IntT>>,
typename = std::enable_if_t<!detail::hasData<T>>,
typename IntTp = detail::copyConst<IntT, T>>
-inline constexpr std::span<IntTp> asSpan(T& t) noexcept
+constexpr std::span<IntTp> asSpan(T& t) noexcept
{
static_assert(std::is_trivially_copyable_v<T>);
static_assert(sizeof(T) % sizeof(IntTp) == 0);
@@ -217,7 +216,7 @@
typename = std::enable_if_t<std::is_trivially_copyable_v<IntT>>,
typename = std::enable_if_t<detail::hasData<Container>>,
typename IntTp = detail::copyConst<IntT, detail::dataType<Container>>>
-inline constexpr std::span<IntTp> asSpan(Container&& c) noexcept
+constexpr std::span<IntTp> asSpan(Container&& c) noexcept
{
static_assert(detail::trivialContainer<Container>);
static_assert(sizeof(*std::data(c)) % sizeof(IntTp) == 0);
diff --git a/include/stdplus/zstring.hpp b/include/stdplus/zstring.hpp
index 2612b09..694eeaf 100644
--- a/include/stdplus/zstring.hpp
+++ b/include/stdplus/zstring.hpp
@@ -84,7 +84,7 @@
using size_type = std::size_t;
template <typename T, size_type N>
- inline constexpr basic_zstring(T (&str)[N])
+ constexpr basic_zstring(T (&str)[N])
#ifdef NDEBUG
noexcept
#endif
@@ -96,14 +96,14 @@
#endif
}
template <typename T, std::enable_if_t<std::is_pointer_v<T>, bool> = true>
- inline constexpr basic_zstring(T str) noexcept : data_(str)
+ constexpr basic_zstring(T str) noexcept : data_(str)
{
}
template <typename T,
std::enable_if_t<detail::same_string<std::remove_cvref_t<T>,
decay_t, Traits>::value,
bool> = true>
- inline constexpr basic_zstring(T&& str)
+ constexpr basic_zstring(T&& str)
#ifdef NDEBUG
noexcept
#endif
@@ -115,25 +115,24 @@
#endif
}
- inline constexpr
- operator basic_zstring<const CharT, Traits>() const noexcept
+ constexpr operator basic_zstring<const CharT, Traits>() const noexcept
{
return basic_zstring<const CharT, Traits>(data_);
}
- inline constexpr reference operator[](size_type pos) const noexcept
+ constexpr reference operator[](size_type pos) const noexcept
{
return data_[pos];
}
- inline constexpr reference front() const noexcept
+ constexpr reference front() const noexcept
{
return data_[0];
}
- inline constexpr pointer data() const noexcept
+ constexpr pointer data() const noexcept
{
return data_;
}
- inline constexpr const_pointer c_str() const noexcept
+ constexpr const_pointer c_str() const noexcept
{
return data_;
}
@@ -142,11 +141,11 @@
return data_ == nullptr || data_[0] == '\0';
}
- inline constexpr basic_zstring suffix(size_type size) const noexcept
+ constexpr basic_zstring suffix(size_type size) const noexcept
{
return data_ + size;
}
- inline constexpr basic_zstring<const CharT, Traits>
+ constexpr basic_zstring<const CharT, Traits>
csuffix(size_type size) const noexcept
{
return data_ + size;
@@ -199,30 +198,29 @@
}
template <typename CharT1>
- inline constexpr Traits::comparison_category
+ constexpr Traits::comparison_category
operator<=>(basic_zstring<CharT1, Traits> rhs) const noexcept
{
return compare(rhs.data()) <=> 0;
}
template <typename T, std::enable_if_t<std::is_pointer_v<T>, bool> = true>
- inline constexpr Traits::comparison_category
- operator<=>(T rhs) const noexcept
+ constexpr Traits::comparison_category operator<=>(T rhs) const noexcept
{
return compare(rhs) <=> 0;
}
template <typename Allocator>
- inline constexpr Traits::comparison_category operator<=>(
+ constexpr Traits::comparison_category operator<=>(
const std::basic_string<decay_t, Traits, Allocator>& rhs) const noexcept
{
return compare(rhs.data(), rhs.size()) <=> 0;
}
- inline constexpr Traits::comparison_category
+ constexpr Traits::comparison_category
operator<=>(std::basic_string_view<decay_t, Traits> rhs) const noexcept
{
return compare(rhs.data(), rhs.size()) <=> 0;
}
- inline constexpr bool operator==(const auto& rhs) const noexcept
+ constexpr bool operator==(const auto& rhs) const noexcept
{
return (*this <=> rhs) == 0;
}
diff --git a/include/stdplus/zstring_view.hpp b/include/stdplus/zstring_view.hpp
index 2a8de3c..3ae13b3 100644
--- a/include/stdplus/zstring_view.hpp
+++ b/include/stdplus/zstring_view.hpp
@@ -21,7 +21,7 @@
{
template <typename CharT, typename Traits>
-inline constexpr auto
+constexpr auto
unsafe_zstring_view(std::basic_string_view<CharT, Traits> sv) noexcept
{
using SV = basic_zstring_view<CharT, Traits>;
@@ -75,7 +75,7 @@
static constexpr size_type npos = string_view_base::npos;
template <typename T, size_type N>
- inline constexpr basic_zstring_view(T (&str)[N])
+ constexpr basic_zstring_view(T (&str)[N])
#ifdef NDEBUG
noexcept :
sv(str)
@@ -86,13 +86,13 @@
{
}
template <typename T, std::enable_if_t<std::is_pointer_v<T>, bool> = true>
- inline constexpr basic_zstring_view(T str) noexcept : sv(str)
+ constexpr basic_zstring_view(T str) noexcept : sv(str)
{
}
template <typename T,
std::enable_if_t<detail::same_string<T, CharT, Traits>::value,
bool> = true>
- inline constexpr basic_zstring_view(const T& str)
+ constexpr basic_zstring_view(const T& str)
#ifdef NDEBUG
noexcept :
sv(str)
@@ -107,132 +107,131 @@
typename T,
std::enable_if_t<std::is_same_v<value_type, std::remove_const_t<T>>,
bool> = true>
- inline constexpr basic_zstring_view(basic_zstring<T, Traits> str) noexcept :
+ constexpr basic_zstring_view(basic_zstring<T, Traits> str) noexcept :
sv(str.data())
{
}
- inline constexpr operator string_view_base() const noexcept
+ constexpr operator string_view_base() const noexcept
{
return sv;
}
- inline constexpr operator zstring_base() const noexcept
+ constexpr operator zstring_base() const noexcept
{
return zstring_base(data());
}
- inline constexpr const_iterator begin() const noexcept
+ constexpr const_iterator begin() const noexcept
{
return sv.begin();
}
- inline constexpr const_iterator end() const noexcept
+ constexpr const_iterator end() const noexcept
{
return sv.end();
}
- inline constexpr const_reverse_iterator rbegin() const noexcept
+ constexpr const_reverse_iterator rbegin() const noexcept
{
return sv.rbegin();
}
- inline constexpr const_reverse_iterator rend() const noexcept
+ constexpr const_reverse_iterator rend() const noexcept
{
return sv.rend();
}
- inline constexpr const_reference operator[](size_type pos) const noexcept
+ constexpr const_reference operator[](size_type pos) const noexcept
{
return sv[pos];
}
- inline constexpr const_reference at(size_type pos) const
+ constexpr const_reference at(size_type pos) const
{
return sv.at(pos);
}
- inline constexpr const_reference front() const noexcept
+ constexpr const_reference front() const noexcept
{
return sv.front();
}
- inline constexpr const_reference back() const noexcept
+ constexpr const_reference back() const noexcept
{
return sv.back();
}
- inline constexpr const_pointer data() const noexcept
+ constexpr const_pointer data() const noexcept
{
return sv.data();
}
- inline constexpr size_type size() const noexcept
+ constexpr size_type size() const noexcept
{
return sv.size();
}
- inline constexpr size_type length() const noexcept
+ constexpr size_type length() const noexcept
{
return sv.length();
}
- inline constexpr size_type max_size() noexcept
+ constexpr size_type max_size() noexcept
{
return sv.max_size();
}
- [[nodiscard]] inline constexpr bool empty() const noexcept
+ [[nodiscard]] constexpr bool empty() const noexcept
{
return sv.empty();
}
- inline constexpr void swap(basic_zstring_view& v) noexcept
+ constexpr void swap(basic_zstring_view& v) noexcept
{
sv.swap(v.sv);
}
- inline constexpr size_type copy(pointer dest, size_type count,
- size_type pos = 0) const
+ constexpr size_type copy(pointer dest, size_type count,
+ size_type pos = 0) const
{
return sv.copy(dest, count, pos);
}
- inline constexpr string_view_base substr(size_type pos = 0,
- size_type count = npos) const
+ constexpr string_view_base substr(size_type pos = 0,
+ size_type count = npos) const
{
return sv.substr(pos, count);
}
- inline constexpr int compare(string_view_base v) const noexcept
+ constexpr int compare(string_view_base v) const noexcept
{
return sv.compare(v);
}
- inline constexpr int compare(size_type pos1, size_type count1,
- string_view_base v) const
+ constexpr int compare(size_type pos1, size_type count1,
+ string_view_base v) const
{
return sv.compare(pos1, count1, v);
}
- inline constexpr int compare(size_type pos1, size_type count1,
- string_view_base v, size_type pos2,
- size_type count2) const
+ constexpr int compare(size_type pos1, size_type count1, string_view_base v,
+ size_type pos2, size_type count2) const
{
return sv.compare(pos1, count1, v, pos2, count2);
}
- inline constexpr int compare(const_pointer s) const
+ constexpr int compare(const_pointer s) const
{
return sv.compare(s);
}
- inline constexpr int compare(size_type pos1, size_type count1,
- const_pointer s) const
+ constexpr int compare(size_type pos1, size_type count1,
+ const_pointer s) const
{
return sv.compare(pos1, count1, s);
}
- inline constexpr int compare(size_type pos1, size_type count1,
- const_pointer s, size_type count2) const
+ constexpr int compare(size_type pos1, size_type count1, const_pointer s,
+ size_type count2) const
{
return sv.compare(pos1, count1, s, count2);
}
#define zstring_view_has(func) \
- inline constexpr bool func(string_view_base sv) const noexcept \
+ constexpr bool func(string_view_base sv) const noexcept \
{ \
return sv.func(sv); \
} \
- inline constexpr bool func(value_type c) const noexcept \
+ constexpr bool func(value_type c) const noexcept \
{ \
return sv.func(c); \
} \
- inline constexpr bool func(const_pointer s) const \
+ constexpr bool func(const_pointer s) const \
{ \
return sv.func(s); \
}
@@ -241,23 +240,22 @@
#undef zstring_view_has
#define zstring_view_find(func, def) \
- inline constexpr size_type func(string_view_base v, size_type pos = def) \
+ constexpr size_type func(string_view_base v, size_type pos = def) \
const noexcept \
{ \
return sv.func(v, pos); \
} \
- inline constexpr size_type func(value_type ch, size_type pos = def) \
+ constexpr size_type func(value_type ch, size_type pos = def) \
const noexcept \
{ \
return sv.func(ch, pos); \
} \
- inline constexpr size_type func(const_pointer s, size_type pos, \
- size_type count) const \
+ constexpr size_type func(const_pointer s, size_type pos, size_type count) \
+ const \
{ \
return sv.func(s, pos, count); \
} \
- inline constexpr size_type func(const_pointer s, size_type pos = def) \
- const \
+ constexpr size_type func(const_pointer s, size_type pos = def) const \
{ \
return sv.func(s, pos); \
}
@@ -269,7 +267,7 @@
zstring_view_find(find_last_not_of, npos);
#undef zstring_view_find
- inline constexpr const_pointer c_str() const noexcept
+ constexpr const_pointer c_str() const noexcept
{
return sv.data();
}
@@ -299,8 +297,7 @@
struct unsafe
{
};
- inline constexpr basic_zstring_view(unsafe, string_view_base sv) noexcept :
- sv(sv)
+ constexpr basic_zstring_view(unsafe, string_view_base sv) noexcept : sv(sv)
{
}
friend auto detail::unsafe_zstring_view<CharT, Traits>(string_view_base sv);
@@ -317,7 +314,7 @@
namespace zstring_view_literals
{
template <detail::compile_zstring_view Str>
-inline constexpr auto operator"" _zsv() noexcept
+constexpr auto operator"" _zsv() noexcept
{
static_assert(Str.valid, "stdplus::zstring_view");
return Str.getzsv();