+/**
+ * gras_datadesc_cycle_set:
+ *
+ * Tell GRAS that the pointers of the type described by @ddt may present
+ * some loop, and that the cycle detection mecanism is needed.
+ *
+ * Note that setting this option when not needed have a rather bad effect
+ * on the performance (several times slower on big data).
+ */
+void
+gras_datadesc_cycle_set(gras_datadesc_type_t ddt) {
+ ddt->cycle = 1;
+}
+/**
+ * gras_datadesc_cycle_unset:
+ *
+ * Tell GRAS that the pointers of the type described by @ddt do not present
+ * any loop and that cycle detection mecanism are not needed.
+ * (default)
+ */
+void
+gras_datadesc_cycle_unset(gras_datadesc_type_t ddt) {
+ ddt->cycle = 0;
+}
+