|
@@ -272,6 +272,16 @@ namespace llvm {
|
|
|
return std::vector<T>(Data, Data+Length);
|
|
|
}
|
|
|
|
|
|
+ /// @}
|
|
|
+ /// @name Comparison operators
|
|
|
+ /// @{
|
|
|
+
|
|
|
+ friend bool operator==(ArrayRef LHS, ArrayRef RHS) {
|
|
|
+ return LHS.equals(RHS);
|
|
|
+ }
|
|
|
+
|
|
|
+ friend bool operator!=(ArrayRef LHS, ArrayRef RHS) { return !(LHS == RHS); }
|
|
|
+
|
|
|
/// @}
|
|
|
};
|
|
|
|
|
@@ -510,22 +520,6 @@ namespace llvm {
|
|
|
return MutableArrayRef<T>(data, length);
|
|
|
}
|
|
|
|
|
|
- /// @}
|
|
|
- /// @name ArrayRef Comparison Operators
|
|
|
- /// @{
|
|
|
-
|
|
|
- template<typename T>
|
|
|
- inline bool operator==(ArrayRef<T> LHS, ArrayRef<T> RHS) {
|
|
|
- return LHS.equals(RHS);
|
|
|
- }
|
|
|
-
|
|
|
- template<typename T>
|
|
|
- inline bool operator!=(ArrayRef<T> LHS, ArrayRef<T> RHS) {
|
|
|
- return !(LHS == RHS);
|
|
|
- }
|
|
|
-
|
|
|
- /// @}
|
|
|
-
|
|
|
// ArrayRefs can be treated like a POD type.
|
|
|
template <typename T> struct isPodLike;
|
|
|
template <typename T> struct isPodLike<ArrayRef<T>> {
|