Py/RNA API: WITH_PYTHON_SAFETY
[blender.git] / source / blender / python / intern / bpy_rna.h
index b5da9bf91be5a40e6acf8441678e91a3bfedb2cd..8705efb055a862e209611f3a6bd3b26c3e3160e3 100644 (file)
 #ifndef BPY_RNA_H
 #define BPY_RNA_H
 
-
 /* --- bpy build options --- */
+#ifdef WITH_PYTHON_SAFETY
+
 /* play it safe and keep optional for now, need to test further now this affects looping on 10000's of verts for eg. */
-// #define USE_WEAKREFS
+#define USE_WEAKREFS
 
 /* method to invalidate removed py data, XXX, slow to remove objects, otherwise no overhead */
-//#define USE_PYRNA_INVALIDATE_GC
+/* #define USE_PYRNA_INVALIDATE_GC */
 
 /* different method */
-//#define USE_PYRNA_INVALIDATE_WEAKREF
+#define USE_PYRNA_INVALIDATE_WEAKREF
 
 /* support for inter references, currently only needed for corner case */
-// #define USE_PYRNA_STRUCT_REFERENCE
+#define USE_PYRNA_STRUCT_REFERENCE
 
 /* use real collection iterators rather then faking with a list */
 #define USE_PYRNA_ITER
 
+#else /* WITH_PYTHON_SAFETY */
+
+ /* default, no defines! */
+
+#endif /* !WITH_PYTHON_SAFETY */
+
+
 /* sanity checks on above defs */
 #if defined(USE_PYRNA_INVALIDATE_WEAKREF) && !defined(USE_WEAKREFS)
 #define USE_WEAKREFS