Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit dd9108cf authored by Ryan Prichard's avatar Ryan Prichard Committed by Automerger Merge Worker
Browse files

Merge "libmath: use TVECHELPERS_STD_HASH macro for std::hash" into main am:...

Merge "libmath: use TVECHELPERS_STD_HASH macro for std::hash" into main am: d36a990e am: 19c2c3b2

Original change: https://android-review.googlesource.com/c/platform/frameworks/native/+/3205855



Change-Id: Ib43af758ea432701b9d34098309e2b4879f52696
Signed-off-by: default avatarAutomerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
parents 1556dcda 19c2c3b2
Loading
Loading
Loading
Loading
+7 −12
Original line number Original line Diff line number Diff line
@@ -620,15 +620,10 @@ public:
}  // namespace details
}  // namespace details
}  // namespace android
}  // namespace android


namespace std {
#define TVECHELPERS_STD_HASH(VECTOR)                  \
    template<template<typename T> class VECTOR, typename T>
    template <typename T>                             \
    struct hash<VECTOR<T>> {
    struct std::hash<VECTOR<T>> {                     \
        static constexpr bool IS_VECTOR =
        size_t operator()(const VECTOR<T>& v) const { \
            std::is_base_of<android::details::TVecUnaryOperators<VECTOR, T>, VECTOR<T>>::value;
            return v.hash();                          \

        }                                             \
        typename std::enable_if<IS_VECTOR, size_t>::type
        operator()(const VECTOR<T>& v) const {
            return v.hash();
        }
    };
    }
    }
+2 −0
Original line number Original line Diff line number Diff line
@@ -373,5 +373,7 @@ typedef details::TMat22<float> mat2f;
// ----------------------------------------------------------------------------------------
// ----------------------------------------------------------------------------------------
}  // namespace android
}  // namespace android


TVECHELPERS_STD_HASH(android::details::TMat22);

#undef PURE
#undef PURE
#undef CONSTEXPR
#undef CONSTEXPR
+2 −0
Original line number Original line Diff line number Diff line
@@ -436,5 +436,7 @@ typedef details::TMat33<float> mat3f;
// ----------------------------------------------------------------------------------------
// ----------------------------------------------------------------------------------------
}  // namespace android
}  // namespace android


TVECHELPERS_STD_HASH(android::details::TMat33);

#undef PURE
#undef PURE
#undef CONSTEXPR
#undef CONSTEXPR
+2 −0
Original line number Original line Diff line number Diff line
@@ -590,5 +590,7 @@ typedef details::TMat44<float> mat4f;
// ----------------------------------------------------------------------------------------
// ----------------------------------------------------------------------------------------
}  // namespace android
}  // namespace android


TVECHELPERS_STD_HASH(android::details::TMat44);

#undef PURE
#undef PURE
#undef CONSTEXPR
#undef CONSTEXPR
+2 −0
Original line number Original line Diff line number Diff line
@@ -187,6 +187,8 @@ constexpr inline quatd operator"" _kd(unsigned long long v) { // NOLINT
// ----------------------------------------------------------------------------------------
// ----------------------------------------------------------------------------------------
}  // namespace android
}  // namespace android


TVECHELPERS_STD_HASH(android::details::TQuaternion);

#pragma clang diagnostic pop
#pragma clang diagnostic pop


#undef PURE
#undef PURE
Loading