[libc++] Rename span's as_writeable_bytes to as_writable_bytes
Summary: The Standard says as_writable_bytes.
Reviewers: mclow.lists, EricWF
Subscribers: christof, jkorous, dexonsmith, libcxx-commits
Differential Revision: https://reviews.llvm.org/D59882
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@357139 91177308-0d34-0410-b5e6-96231b3b80d8
diff --git a/include/span b/include/span
index c2ed8b1..6b89d60 100644
--- a/include/span
+++ b/include/span
@@ -339,7 +339,7 @@
_LIBCPP_INLINE_VISIBILITY span<const byte, _Extent * sizeof(element_type)> __as_bytes() const noexcept
{ return {reinterpret_cast<const byte *>(data()), size_bytes()}; }
- _LIBCPP_INLINE_VISIBILITY span<byte, _Extent * sizeof(element_type)> __as_writeable_bytes() const noexcept
+ _LIBCPP_INLINE_VISIBILITY span<byte, _Extent * sizeof(element_type)> __as_writable_bytes() const noexcept
{ return {reinterpret_cast<byte *>(data()), size_bytes()}; }
private:
@@ -513,7 +513,7 @@
_LIBCPP_INLINE_VISIBILITY span<const byte, dynamic_extent> __as_bytes() const noexcept
{ return {reinterpret_cast<const byte *>(data()), size_bytes()}; }
- _LIBCPP_INLINE_VISIBILITY span<byte, dynamic_extent> __as_writeable_bytes() const noexcept
+ _LIBCPP_INLINE_VISIBILITY span<byte, dynamic_extent> __as_writable_bytes() const noexcept
{ return {reinterpret_cast<byte *>(data()), size_bytes()}; }
private:
@@ -550,7 +550,7 @@
}
-// as_bytes & as_writeable_bytes
+// as_bytes & as_writable_bytes
template <class _Tp, size_t _Extent>
_LIBCPP_INLINE_VISIBILITY
auto as_bytes(span<_Tp, _Extent> __s) noexcept
@@ -559,9 +559,9 @@
template <class _Tp, size_t _Extent>
_LIBCPP_INLINE_VISIBILITY
-auto as_writeable_bytes(span<_Tp, _Extent> __s) noexcept
--> enable_if_t<!is_const_v<_Tp>, decltype(__s.__as_writeable_bytes())>
-{ return __s.__as_writeable_bytes(); }
+auto as_writable_bytes(span<_Tp, _Extent> __s) noexcept
+-> enable_if_t<!is_const_v<_Tp>, decltype(__s.__as_writable_bytes())>
+{ return __s.__as_writable_bytes(); }
template <class _Tp, size_t _Extent>
_LIBCPP_INLINE_VISIBILITY
diff --git a/test/std/containers/views/span.objectrep/as_writable_bytes.fail.cpp b/test/std/containers/views/span.objectrep/as_writable_bytes.fail.cpp
new file mode 100644
index 0000000..4f93c91
--- /dev/null
+++ b/test/std/containers/views/span.objectrep/as_writable_bytes.fail.cpp
@@ -0,0 +1,49 @@
+// -*- C++ -*-
+//===------------------------------ span ---------------------------------===//
+//
+// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
+// See https://llvm.org/LICENSE.txt for license information.
+// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
+//
+//===---------------------------------------------------------------------===//
+// UNSUPPORTED: c++98, c++03, c++11, c++14, c++17
+
+// <span>
+
+// template <class ElementType, size_t Extent>
+// span<byte,
+// Extent == dynamic_extent
+// ? dynamic_extent
+// : sizeof(ElementType) * Extent>
+// as_writable_bytes(span<ElementType, Extent> s) noexcept;
+
+
+#include <span>
+#include <cassert>
+#include <string>
+
+#include "test_macros.h"
+
+const int iArr2[] = { 0, 1, 2, 3, 4, 5, 6, 7, 8, 9};
+
+struct A {};
+
+int main(int, char**)
+{
+ std::as_writable_bytes(std::span<const int>()); // expected-error {{no matching function for call to 'as_writable_bytes'}}
+ std::as_writable_bytes(std::span<const long>()); // expected-error {{no matching function for call to 'as_writable_bytes'}}
+ std::as_writable_bytes(std::span<const double>()); // expected-error {{no matching function for call to 'as_writable_bytes'}}
+ std::as_writable_bytes(std::span<const A>()); // expected-error {{no matching function for call to 'as_writable_bytes'}}
+ std::as_writable_bytes(std::span<const std::string>()); // expected-error {{no matching function for call to 'as_writable_bytes'}}
+
+ std::as_writable_bytes(std::span<const int, 0>()); // expected-error {{no matching function for call to 'as_writable_bytes'}}
+ std::as_writable_bytes(std::span<const long, 0>()); // expected-error {{no matching function for call to 'as_writable_bytes'}}
+ std::as_writable_bytes(std::span<const double, 0>()); // expected-error {{no matching function for call to 'as_writable_bytes'}}
+ std::as_writable_bytes(std::span<const A, 0>()); // expected-error {{no matching function for call to 'as_writable_bytes'}}
+ std::as_writable_bytes(std::span<const std::string, (size_t)0>()); // expected-error {{no matching function for call to 'as_writable_bytes'}}
+
+ std::as_writable_bytes(std::span<const int> (iArr2, 1)); // expected-error {{no matching function for call to 'as_writable_bytes'}}
+ std::as_writable_bytes(std::span<const int, 1>(iArr2 + 5, 1)); // expected-error {{no matching function for call to 'as_writable_bytes'}}
+
+ return 0;
+}
diff --git a/test/std/containers/views/span.objectrep/as_writeable_bytes.pass.cpp b/test/std/containers/views/span.objectrep/as_writable_bytes.pass.cpp
similarity index 93%
rename from test/std/containers/views/span.objectrep/as_writeable_bytes.pass.cpp
rename to test/std/containers/views/span.objectrep/as_writable_bytes.pass.cpp
index 409f6fa..01852ff 100644
--- a/test/std/containers/views/span.objectrep/as_writeable_bytes.pass.cpp
+++ b/test/std/containers/views/span.objectrep/as_writable_bytes.pass.cpp
@@ -15,7 +15,7 @@
// Extent == dynamic_extent
// ? dynamic_extent
// : sizeof(ElementType) * Extent>
-// as_writeable_bytes(span<ElementType, Extent> s) noexcept;
+// as_writable_bytes(span<ElementType, Extent> s) noexcept;
#include <span>
@@ -27,9 +27,9 @@
template<typename Span>
void testRuntimeSpan(Span sp)
{
- ASSERT_NOEXCEPT(std::as_writeable_bytes(sp));
+ ASSERT_NOEXCEPT(std::as_writable_bytes(sp));
- auto spBytes = std::as_writeable_bytes(sp);
+ auto spBytes = std::as_writable_bytes(sp);
using SB = decltype(spBytes);
ASSERT_SAME_TYPE(std::byte, typename SB::element_type);
diff --git a/test/std/containers/views/span.objectrep/as_writeable_bytes.fail.cpp b/test/std/containers/views/span.objectrep/as_writeable_bytes.fail.cpp
deleted file mode 100644
index 388da08..0000000
--- a/test/std/containers/views/span.objectrep/as_writeable_bytes.fail.cpp
+++ /dev/null
@@ -1,49 +0,0 @@
-// -*- C++ -*-
-//===------------------------------ span ---------------------------------===//
-//
-// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
-// See https://llvm.org/LICENSE.txt for license information.
-// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
-//
-//===---------------------------------------------------------------------===//
-// UNSUPPORTED: c++98, c++03, c++11, c++14, c++17
-
-// <span>
-
-// template <class ElementType, size_t Extent>
-// span<byte,
-// Extent == dynamic_extent
-// ? dynamic_extent
-// : sizeof(ElementType) * Extent>
-// as_writeable_bytes(span<ElementType, Extent> s) noexcept;
-
-
-#include <span>
-#include <cassert>
-#include <string>
-
-#include "test_macros.h"
-
-const int iArr2[] = { 0, 1, 2, 3, 4, 5, 6, 7, 8, 9};
-
-struct A {};
-
-int main(int, char**)
-{
- std::as_writeable_bytes(std::span<const int>()); // expected-error {{no matching function for call to 'as_writeable_bytes'}}
- std::as_writeable_bytes(std::span<const long>()); // expected-error {{no matching function for call to 'as_writeable_bytes'}}
- std::as_writeable_bytes(std::span<const double>()); // expected-error {{no matching function for call to 'as_writeable_bytes'}}
- std::as_writeable_bytes(std::span<const A>()); // expected-error {{no matching function for call to 'as_writeable_bytes'}}
- std::as_writeable_bytes(std::span<const std::string>()); // expected-error {{no matching function for call to 'as_writeable_bytes'}}
-
- std::as_writeable_bytes(std::span<const int, 0>()); // expected-error {{no matching function for call to 'as_writeable_bytes'}}
- std::as_writeable_bytes(std::span<const long, 0>()); // expected-error {{no matching function for call to 'as_writeable_bytes'}}
- std::as_writeable_bytes(std::span<const double, 0>()); // expected-error {{no matching function for call to 'as_writeable_bytes'}}
- std::as_writeable_bytes(std::span<const A, 0>()); // expected-error {{no matching function for call to 'as_writeable_bytes'}}
- std::as_writeable_bytes(std::span<const std::string, (size_t)0>()); // expected-error {{no matching function for call to 'as_writeable_bytes'}}
-
- std::as_writeable_bytes(std::span<const int> (iArr2, 1)); // expected-error {{no matching function for call to 'as_writeable_bytes'}}
- std::as_writeable_bytes(std::span<const int, 1>(iArr2 + 5, 1)); // expected-error {{no matching function for call to 'as_writeable_bytes'}}
-
- return 0;
-}