diff options
author | tzik <tzik@chromium.org> | 2016-02-15 20:56:31 -0800 |
---|---|---|
committer | Commit bot <commit-bot@chromium.org> | 2016-02-16 04:58:02 +0000 |
commit | 1ea87e3a0101b7860efe4bbec8f3c539a33facd9 (patch) | |
tree | 77a67b937d02af748836f732be5c2a00e745ddcf /base/tuple.h | |
parent | 26d7fdbd59252262be8aacb33537bed3316a9428 (diff) | |
download | chromium_src-1ea87e3a0101b7860efe4bbec8f3c539a33facd9.zip chromium_src-1ea87e3a0101b7860efe4bbec8f3c539a33facd9.tar.gz chromium_src-1ea87e3a0101b7860efe4bbec8f3c539a33facd9.tar.bz2 |
Support smart pointers in base::DispatchToMethod
* Make base::DispatchToMethod to accept smart pointers as the this pointer
* Remove base::internal::UnwrapTraits from //storage code
BUG=554299
Review URL: https://codereview.chromium.org/1696093002
Cr-Commit-Position: refs/heads/master@{#375516}
Diffstat (limited to 'base/tuple.h')
-rw-r--r-- | base/tuple.h | 8 |
1 files changed, 4 insertions, 4 deletions
diff --git a/base/tuple.h b/base/tuple.h index e73dd49c..d07d38c 100644 --- a/base/tuple.h +++ b/base/tuple.h @@ -196,7 +196,7 @@ inline Tuple<Ts&...> MakeRefTuple(Ts&... arg) { // Non-Static Dispatchers with no out params. template <typename ObjT, typename Method, typename... Ts, size_t... Ns> -inline void DispatchToMethodImpl(ObjT* obj, +inline void DispatchToMethodImpl(const ObjT& obj, Method method, const Tuple<Ts...>& arg, IndexSequence<Ns...>) { @@ -204,7 +204,7 @@ inline void DispatchToMethodImpl(ObjT* obj, } template <typename ObjT, typename Method, typename... Ts> -inline void DispatchToMethod(ObjT* obj, +inline void DispatchToMethod(const ObjT& obj, Method method, const Tuple<Ts...>& arg) { DispatchToMethodImpl(obj, method, arg, MakeIndexSequence<sizeof...(Ts)>()); @@ -232,7 +232,7 @@ template <typename ObjT, typename... OutTs, size_t... InNs, size_t... OutNs> -inline void DispatchToMethodImpl(ObjT* obj, +inline void DispatchToMethodImpl(const ObjT& obj, Method method, const Tuple<InTs...>& in, Tuple<OutTs...>* out, @@ -243,7 +243,7 @@ inline void DispatchToMethodImpl(ObjT* obj, } template <typename ObjT, typename Method, typename... InTs, typename... OutTs> -inline void DispatchToMethod(ObjT* obj, +inline void DispatchToMethod(const ObjT& obj, Method method, const Tuple<InTs...>& in, Tuple<OutTs...>* out) { |