[libc][NFC] Use STL case for functional
Migrating all private STL code to the standard STL case but keeping it under the CPP namespace to avoid confusion.
Differential Revision: https://reviews.llvm.org/D130760
GitOrigin-RevId: 3f3bbd737074497f4abe3f9d7785399b04f62168
diff --git a/src/__support/CPP/CMakeLists.txt b/src/__support/CPP/CMakeLists.txt
index d9126b1..7172dae 100644
--- a/src/__support/CPP/CMakeLists.txt
+++ b/src/__support/CPP/CMakeLists.txt
@@ -41,7 +41,7 @@
add_header_library(
functional
HDRS
- Functional.h
+ functional.h
)
add_header_library(
diff --git a/src/__support/CPP/Functional.h b/src/__support/CPP/functional.h
similarity index 65%
rename from src/__support/CPP/Functional.h
rename to src/__support/CPP/functional.h
index 51f6331..5919306 100644
--- a/src/__support/CPP/Functional.h
+++ b/src/__support/CPP/functional.h
@@ -12,16 +12,16 @@
namespace __llvm_libc {
namespace cpp {
-template <typename Func> class Function;
+template <typename F> class function;
-template <typename Ret, typename... Params> class Function<Ret(Params...)> {
- Ret (*func)(Params...) = nullptr;
+template <typename R, typename... Args> class function<R(Args...)> {
+ R (*func)(Args...) = nullptr;
public:
- constexpr Function() = default;
- template <typename Func> constexpr Function(Func &&f) : func(f) {}
+ constexpr function() = default;
+ template <typename F> constexpr function(F &&f) : func(f) {}
- constexpr Ret operator()(Params... params) { return func(params...); }
+ constexpr R operator()(Args... params) { return func(params...); }
};
} // namespace cpp
diff --git a/test/src/__support/OSUtil/linux/x86_64/syscall_test.cpp b/test/src/__support/OSUtil/linux/x86_64/syscall_test.cpp
index 2f9816e..4869e00 100644
--- a/test/src/__support/OSUtil/linux/x86_64/syscall_test.cpp
+++ b/test/src/__support/OSUtil/linux/x86_64/syscall_test.cpp
@@ -6,7 +6,7 @@
//
//===----------------------------------------------------------------------===//
-#include "src/__support/CPP/Functional.h"
+#include "src/__support/CPP/functional.h"
#include "src/__support/OSUtil/syscall.h"
#include "utils/UnitTest/Test.h"
@@ -14,30 +14,30 @@
// We only do a signature test here. Actual functionality tests are
// done by the unit tests of the syscall wrappers like mmap.
- using __llvm_libc::cpp::Function;
+ using __llvm_libc::cpp::function;
- Function<long(long)> f([](long n) { return __llvm_libc::syscall(n); });
- Function<long(long, long)> f1(
+ function<long(long)> f([](long n) { return __llvm_libc::syscall(n); });
+ function<long(long, long)> f1(
[](long n, long a1) { return __llvm_libc::syscall(n, a1); });
- Function<long(long, long, long)> f2(
+ function<long(long, long, long)> f2(
[](long n, long a1, long a2) { return __llvm_libc::syscall(n, a1, a2); });
- Function<long(long, long, long, long)> f3(
+ function<long(long, long, long, long)> f3(
[](long n, long a1, long a2, long a3) {
return __llvm_libc::syscall(n, a1, a2, a3);
});
- Function<long(long, long, long, long, long)> f4(
+ function<long(long, long, long, long, long)> f4(
[](long n, long a1, long a2, long a3, long a4) {
return __llvm_libc::syscall(n, a1, a2, a3, a4);
});
- Function<long(long, long, long, long, long, long)> f5(
+ function<long(long, long, long, long, long, long)> f5(
[](long n, long a1, long a2, long a3, long a4, long a5) {
return __llvm_libc::syscall(n, a1, a2, a3, a4, a5);
});
- Function<long(long, long, long, long, long, long, long)> f6(
+ function<long(long, long, long, long, long, long, long)> f6(
[](long n, long a1, long a2, long a3, long a4, long a5, long a6) {
return __llvm_libc::syscall(n, a1, a2, a3, a4, a5, a6);
});
- Function<long(long, void *)> not_long_type(
+ function<long(long, void *)> not_long_type(
[](long n, void *a1) { return __llvm_libc::syscall(n, a1); });
}