summaryrefslogtreecommitdiff
path: root/system_wrappers
diff options
context:
space:
mode:
authormcasas@webrtc.org <mcasas@webrtc.org@4adac7df-926f-26a2-2b94-8c16560cd09d>2014-05-21 11:07:29 +0000
committermcasas@webrtc.org <mcasas@webrtc.org@4adac7df-926f-26a2-2b94-8c16560cd09d>2014-05-21 11:07:29 +0000
commit0a9ed7c31eab2a2c73eb0020c8b278762ad58ea5 (patch)
tree726f2dc7d6530b3b1398b298d63a350611cd6034 /system_wrappers
parent8520b33f59f31e9e752e0ffc708bb4bf79eaa9a1 (diff)
downloadwebrtc-0a9ed7c31eab2a2c73eb0020c8b278762ad58ea5.tar.gz
Revert 6202 "Switch to using base/constructormagic.h and remove ..."
> Switch to using base/constructormagic.h and remove system_wrappers/interface/constructor_magic.h. > > BUG=N/A > R=andrew@webrtc.org > > Review URL: https://webrtc-codereview.appspot.com/19519004 TBR=henrike@webrtc.org Review URL: https://webrtc-codereview.appspot.com/14579007 git-svn-id: http://webrtc.googlecode.com/svn/trunk/webrtc@6210 4adac7df-926f-26a2-2b94-8c16560cd09d
Diffstat (limited to 'system_wrappers')
-rw-r--r--system_wrappers/interface/atomic32.h2
-rw-r--r--system_wrappers/interface/constructor_magic.h50
-rw-r--r--system_wrappers/interface/scoped_ptr.h2
3 files changed, 52 insertions, 2 deletions
diff --git a/system_wrappers/interface/atomic32.h b/system_wrappers/interface/atomic32.h
index 8633e263..08ab4f25 100644
--- a/system_wrappers/interface/atomic32.h
+++ b/system_wrappers/interface/atomic32.h
@@ -17,8 +17,8 @@
#include <stddef.h>
-#include "webrtc/base/constructormagic.h"
#include "webrtc/common_types.h"
+#include "webrtc/system_wrappers/interface/constructor_magic.h"
namespace webrtc {
diff --git a/system_wrappers/interface/constructor_magic.h b/system_wrappers/interface/constructor_magic.h
new file mode 100644
index 00000000..b2aabc57
--- /dev/null
+++ b/system_wrappers/interface/constructor_magic.h
@@ -0,0 +1,50 @@
+/*
+ * Copyright (c) 2011 The WebRTC project authors. All Rights Reserved.
+ *
+ * Use of this source code is governed by a BSD-style license
+ * that can be found in the LICENSE file in the root of the source
+ * tree. An additional intellectual property rights grant can be found
+ * in the file PATENTS. All contributing project authors may
+ * be found in the AUTHORS file in the root of the source tree.
+ */
+
+/*
+ * WebRtc
+ * Copy from third_party/libjingle/source/talk/base/constructormagic.h
+ */
+
+#ifndef WEBRTC_SYSTEM_WRAPPERS_INTERFACE_CONSTRUCTOR_MAGIC_H_
+#define WEBRTC_SYSTEM_WRAPPERS_INTERFACE_CONSTRUCTOR_MAGIC_H_
+
+#ifndef DISALLOW_ASSIGN
+#define DISALLOW_ASSIGN(TypeName) \
+ void operator=(const TypeName&)
+#endif
+
+#ifndef DISALLOW_COPY_AND_ASSIGN
+// A macro to disallow the evil copy constructor and operator= functions
+// This should be used in the private: declarations for a class
+#define DISALLOW_COPY_AND_ASSIGN(TypeName) \
+ TypeName(const TypeName&); \
+ DISALLOW_ASSIGN(TypeName)
+#endif
+
+#ifndef DISALLOW_EVIL_CONSTRUCTORS
+// Alternative, less-accurate legacy name.
+#define DISALLOW_EVIL_CONSTRUCTORS(TypeName) \
+ DISALLOW_COPY_AND_ASSIGN(TypeName)
+#endif
+
+#ifndef DISALLOW_IMPLICIT_CONSTRUCTORS
+// A macro to disallow all the implicit constructors, namely the
+// default constructor, copy constructor and operator= functions.
+//
+// This should be used in the private: declarations for a class
+// that wants to prevent anyone from instantiating it. This is
+// especially useful for classes containing only static methods.
+#define DISALLOW_IMPLICIT_CONSTRUCTORS(TypeName) \
+ TypeName(); \
+ DISALLOW_EVIL_CONSTRUCTORS(TypeName)
+#endif
+
+#endif // WEBRTC_SYSTEM_WRAPPERS_INTERFACE_CONSTRUCTOR_MAGIC_H_
diff --git a/system_wrappers/interface/scoped_ptr.h b/system_wrappers/interface/scoped_ptr.h
index 42bb8a6d..8998f817 100644
--- a/system_wrappers/interface/scoped_ptr.h
+++ b/system_wrappers/interface/scoped_ptr.h
@@ -104,8 +104,8 @@
#include <algorithm> // For std::swap().
-#include "webrtc/base/constructormagic.h"
#include "webrtc/system_wrappers/interface/compile_assert.h"
+#include "webrtc/system_wrappers/interface/constructor_magic.h"
#include "webrtc/system_wrappers/interface/template_util.h"
#include "webrtc/system_wrappers/source/move.h"
#include "webrtc/typedefs.h"