Skip to content

Commit c653371

Browse files
author
peng.li24
committed
refactor: rename _array/_scalar suffixes to match numpy API names
numpy.hypot / arctan2 / maximum / minimum have no suffix — C++ public API should mirror numpy exactly. Replace with overloads: hypot_array → hypot(a, b, dst, n) arctan2_array → arctan2(a, b, dst, n) arctan2_scalar→ arctan2(src, dst, n, scalar) [overload] maximum_array → maximum(a, b, dst, n) maximum_scalar→ maximum(src, dst, n, scalar) [overload] minimum_array → minimum(a, b, dst, n) minimum_scalar→ minimum(src, dst, n, scalar) [overload] All 792 tests pass.
1 parent 6838dd1 commit c653371

2 files changed

Lines changed: 17 additions & 17 deletions

File tree

numpy/core.h

Lines changed: 10 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -452,40 +452,40 @@ inline void isfinite(const T* src, bool* dst, size_t n) {
452452
// Binary element-wise — 2 arrays T in → T out
453453
// ============================================================================
454454

455-
/// numpy.hypot(x1, x2, /, out=None, *, where=True, ...) — array-array
455+
/// numpy.hypot(x1, x2, /, out=None, *, where=True, ...)
456456
template<typename T>
457-
inline void hypot_array(const T* a, const T* b, T* dst, size_t n) {
457+
inline void hypot(const T* a, const T* b, T* dst, size_t n) {
458458
NUMPY_UNROLL4(i, dst[i] = detail::hypot(a[i], b[i]));
459459
}
460460

461461
/// numpy.arctan2(x1, x2, /, out=None, *, where=True, ...) — array-array
462462
template<typename T>
463-
inline void arctan2_array(const T* a, const T* b, T* dst, size_t n) {
463+
inline void arctan2(const T* a, const T* b, T* dst, size_t n) {
464464
NUMPY_UNROLL4(i, dst[i] = detail::atan2(a[i], b[i]));
465465
}
466466
/// numpy.arctan2(x1, x2, /, out=None, *, where=True, ...) — array-scalar
467467
template<typename T>
468-
inline void arctan2_scalar(const T* src, T* dst, size_t n, T b) {
468+
inline void arctan2(const T* src, T* dst, size_t n, T b) {
469469
NUMPY_UNROLL4(i, dst[i] = detail::atan2(src[i], b));
470470
}
471471
/// numpy.maximum(x1, x2, /, out=None, *, where=True, ...) — array-array
472472
template<typename T>
473-
inline void maximum_array(const T* a, const T* b, T* dst, size_t n) {
473+
inline void maximum(const T* a, const T* b, T* dst, size_t n) {
474474
NUMPY_UNROLL4(i, dst[i] = std::max(a[i], b[i]));
475475
}
476-
/// numpy.maximum(x1, x2, /, out=None, *, where=True, ...) — scalar variant
476+
/// numpy.maximum(x1, x2, /, out=None, *, where=True, ...) — array-scalar
477477
template<typename T>
478-
inline void maximum_scalar(const T* src, T* dst, size_t n, T b) {
478+
inline void maximum(const T* src, T* dst, size_t n, T b) {
479479
NUMPY_UNROLL4(i, dst[i] = std::max(src[i], b));
480480
}
481481
/// numpy.minimum(x1, x2, /, out=None, *, where=True, ...) — array-array
482482
template<typename T>
483-
inline void minimum_array(const T* a, const T* b, T* dst, size_t n) {
483+
inline void minimum(const T* a, const T* b, T* dst, size_t n) {
484484
NUMPY_UNROLL4(i, dst[i] = std::min(a[i], b[i]));
485485
}
486-
/// numpy.minimum(x1, x2, /, out=None, *, where=True, ...) — scalar variant
486+
/// numpy.minimum(x1, x2, /, out=None, *, where=True, ...) — array-scalar
487487
template<typename T>
488-
inline void minimum_scalar(const T* src, T* dst, size_t n, T b) {
488+
inline void minimum(const T* src, T* dst, size_t n, T b) {
489489
NUMPY_UNROLL4(i, dst[i] = std::min(src[i], b));
490490
}
491491

pycpp/core_py.h

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -767,7 +767,7 @@ template<typename T>
767767
py::array_t<T> hypot(const py::array_t<T>& a, const py::array_t<T>& b) {
768768
auto ba = a.request(), bb = b.request();
769769
py::array_t<T> result(ba.shape);
770-
hypot_array(static_cast<const T*>(ba.ptr),
770+
hypot(static_cast<const T*>(ba.ptr),
771771
static_cast<const T*>(bb.ptr),
772772
static_cast<T*>(result.request().ptr),
773773
std::min(ba.size, bb.size));
@@ -779,7 +779,7 @@ template<typename T>
779779
py::array_t<T> arctan2(const py::array_t<T>& a, const py::array_t<T>& b) {
780780
auto ba = a.request(), bb = b.request();
781781
py::array_t<T> result(ba.shape);
782-
arctan2_array(static_cast<const T*>(ba.ptr),
782+
arctan2(static_cast<const T*>(ba.ptr),
783783
static_cast<const T*>(bb.ptr),
784784
static_cast<T*>(result.request().ptr),
785785
std::min(ba.size, bb.size));
@@ -791,7 +791,7 @@ template<typename T>
791791
py::array_t<T> arctan2(const py::array_t<T>& a, T b) {
792792
auto buf = a.request();
793793
py::array_t<T> result(buf.shape);
794-
arctan2_scalar(static_cast<const T*>(buf.ptr),
794+
arctan2(static_cast<const T*>(buf.ptr),
795795
static_cast<T*>(result.request().ptr), buf.size, b);
796796
return result;
797797
}
@@ -801,7 +801,7 @@ template<typename T>
801801
py::array_t<T> maximum(const py::array_t<T>& a, const py::array_t<T>& b) {
802802
auto ba = a.request(), bb = b.request();
803803
py::array_t<T> result(ba.shape);
804-
maximum_array(static_cast<const T*>(ba.ptr),
804+
maximum(static_cast<const T*>(ba.ptr),
805805
static_cast<const T*>(bb.ptr),
806806
static_cast<T*>(result.request().ptr),
807807
std::min(ba.size, bb.size));
@@ -813,7 +813,7 @@ template<typename T>
813813
py::array_t<T> maximum(const py::array_t<T>& a, T b) {
814814
auto buf = a.request();
815815
py::array_t<T> result(buf.shape);
816-
maximum_scalar(static_cast<const T*>(buf.ptr),
816+
maximum(static_cast<const T*>(buf.ptr),
817817
static_cast<T*>(result.request().ptr), buf.size, b);
818818
return result;
819819
}
@@ -823,7 +823,7 @@ template<typename T>
823823
py::array_t<T> minimum(const py::array_t<T>& a, const py::array_t<T>& b) {
824824
auto ba = a.request(), bb = b.request();
825825
py::array_t<T> result(ba.shape);
826-
minimum_array(static_cast<const T*>(ba.ptr),
826+
minimum(static_cast<const T*>(ba.ptr),
827827
static_cast<const T*>(bb.ptr),
828828
static_cast<T*>(result.request().ptr),
829829
std::min(ba.size, bb.size));
@@ -835,7 +835,7 @@ template<typename T>
835835
py::array_t<T> minimum(const py::array_t<T>& a, T b) {
836836
auto buf = a.request();
837837
py::array_t<T> result(buf.shape);
838-
minimum_scalar(static_cast<const T*>(buf.ptr),
838+
minimum(static_cast<const T*>(buf.ptr),
839839
static_cast<T*>(result.request().ptr), buf.size, b);
840840
return result;
841841
}

0 commit comments

Comments
 (0)