diff options
author | Matt A. Tobin <email@mattatobin.com> | 2022-06-07 20:20:19 -0500 |
---|---|---|
committer | Matt A. Tobin <email@mattatobin.com> | 2022-06-07 20:20:19 -0500 |
commit | 878ab758d5d4c1ef7badf2bc20ebc7c67dc2165b (patch) | |
tree | 3683d6df35e3618c0e7b456de7c749ca4c8c21a6 /js/src/builtin/MapObject.h | |
parent | a621951327b0c19c0c24dfd9fd973f7bd13ae68f (diff) | |
parent | cfb9884423faf741de03c5fcc72bf9ac8c6ada4d (diff) | |
download | aura-central-878ab758d5d4c1ef7badf2bc20ebc7c67dc2165b.tar.gz |
Merge branch 'TRUNK' into ARE-5.0
Diffstat (limited to 'js/src/builtin/MapObject.h')
-rw-r--r-- | js/src/builtin/MapObject.h | 20 |
1 files changed, 14 insertions, 6 deletions
diff --git a/js/src/builtin/MapObject.h b/js/src/builtin/MapObject.h index 5382adfd2..a9f685ea0 100644 --- a/js/src/builtin/MapObject.h +++ b/js/src/builtin/MapObject.h @@ -52,14 +52,22 @@ class HashableValue } }; -template <> -class RootedBase<HashableValue> { +template <typename Wrapper> +class WrappedPtrOperations<HashableValue, Wrapper> +{ public: - MOZ_MUST_USE bool setValue(JSContext* cx, HandleValue v) { - return static_cast<JS::Rooted<HashableValue>*>(this)->get().setValue(cx, v); - } Value value() const { - return static_cast<const JS::Rooted<HashableValue>*>(this)->get().get(); + return static_cast<const Wrapper*>(this)->get().get(); + } +}; + +template <typename Wrapper> +class MutableWrappedPtrOperations<HashableValue, Wrapper> + : public WrappedPtrOperations<HashableValue, Wrapper> +{ + public: + MOZ_MUST_USE bool setValue(JSContext* cx, HandleValue v) { + return static_cast<Wrapper*>(this)->get().setValue(cx, v); } }; |