Преглед на файлове

deprecation macro

Former-commit-id: bdcbc6573360d51216cff39f6856afe2f9207029
Alec Jacobson преди 10 години
родител
ревизия
3d196defb3
променени са 1 файла, в които са добавени 21 реда и са изтрити 0 реда
  1. 21 0
      include/igl/deprecated.h

+ 21 - 0
include/igl/deprecated.h

@@ -0,0 +1,21 @@
+#ifndef IGL_DEPRECATED_H
+#define IGL_DEPRECATED_H
+// Macro for marking a function as deprecated.
+// 
+// http://stackoverflow.com/a/295229/148668
+#ifdef __GNUC__
+#define IGL_DEPRECATED(func) func __attribute__ ((deprecated))
+#elif defined(_MSC_VER)
+#define IGL_DEPRECATED(func) __declspec(deprecated) func
+#else
+#pragma message("WARNING: You need to implement IGL_DEPRECATED for this compiler")
+#define IGL_DEPRECATED(func) func
+#endif
+// Usage:
+//
+//     template <typename T> IGL_INLINE void my_func(Arg1 a);
+//
+// becomes 
+//
+//     template <typename T> IGL_INLINE IGL_DEPRECATED(void my_func(Arg1 a));
+#endif