summaryrefslogtreecommitdiffstats
path: root/xpcom/base/nsISupportsImpl.h
diff options
context:
space:
mode:
Diffstat (limited to 'xpcom/base/nsISupportsImpl.h')
-rw-r--r--xpcom/base/nsISupportsImpl.h15
1 files changed, 15 insertions, 0 deletions
diff --git a/xpcom/base/nsISupportsImpl.h b/xpcom/base/nsISupportsImpl.h
index 27ff85b385..0485a98812 100644
--- a/xpcom/base/nsISupportsImpl.h
+++ b/xpcom/base/nsISupportsImpl.h
@@ -71,6 +71,20 @@ class nsISerialEventTarget;
class nsAutoOwningEventTarget {
public:
nsAutoOwningEventTarget();
+
+ nsAutoOwningEventTarget(const nsAutoOwningEventTarget& aOther);
+
+ // Per https://en.cppreference.com/w/cpp/language/move_constructor
+ // there's no implicitly-declared move constructor if there are user-declared
+ // copy constructors, and we have one, immediately above.
+
+ nsAutoOwningEventTarget& operator=(const nsAutoOwningEventTarget& aRhs);
+
+ // Per https://en.cppreference.com/w/cpp/language/move_assignment
+ // there's no implicitly-declared move assignment operator if there are
+ // user-declared copy assignment operators, and we have one, immediately
+ // above.
+
~nsAutoOwningEventTarget();
// We move the actual assertion checks out-of-line to minimize code bloat,
@@ -88,6 +102,7 @@ class nsAutoOwningEventTarget {
private:
void AssertCurrentThreadOwnsMe(const char* aMsg) const;
+ // A raw pointer to avoid nsCOMPtr.h dependency.
nsISerialEventTarget* mTarget;
};