summaryrefslogtreecommitdiff
path: root/include/base.h
diff options
context:
space:
mode:
Diffstat (limited to 'include/base.h')
-rw-r--r--include/base.h14
1 files changed, 14 insertions, 0 deletions
diff --git a/include/base.h b/include/base.h
index 624e2174f..856cd64c2 100644
--- a/include/base.h
+++ b/include/base.h
@@ -47,6 +47,20 @@ class CoreExport classbase
void operator=(const classbase&);
};
+/** The base class for inspircd classes that provide a wrapping interface, and
+ * should only exist while being used. Prevents heap allocation.
+ */
+class CoreExport interfacebase
+{
+ public:
+ interfacebase() {}
+ private:
+ interfacebase(const interfacebase&);
+ void operator=(const interfacebase&);
+ void* operator new(size_t);
+ void operator delete(void*);
+};
+
/** The base class for inspircd classes that support reference counting.
* Any objects that do not have a well-defined lifetime should inherit from
* this, and should be assigned to a reference<type> object to establish their