-
-/* Dynamic list iterations and sequences, updated 2003-05-29 by xCh. */
-
-#define every(A,B) for( A=B; A; A=A->_next)
-#define search(A,B,C) every(A,B) if(C)
-#define find(A,B,C) search(A,B,C) break; if(A)
-
-/* Enlightened iterations usable in for() , updated 2007-12-11 by xCh. */
-
-#define range(VAR,FROM,TO) (VAR=FROM; VAR <= TO; VAR++)
-#define each(A,B) ( A=B; A; A=A->_next)
-#define lines(STR,F) ()
-
+/* ------------------------------------------------------------------- */
+/* 3. C<<1 iterators - updated 2008-01-07 by xCh. */
+/* ------------------------------------------------------------------- */
+#define loop while(TRUE)
+#define repeat(N) _NEW_I for_range(_I,1,N)
+#define for_range(VAR,FROM,TO) for(VAR=FROM; FROM<=TO?VAR<=TO:VAR>=TO; FROM<=TO?VAR++:VAR--)
+#define for_each(A,B) for(A=B; A; A=A->_next)
+#define for_search(A,B,C) for_each(A,B) if(C)
+/*to do: #define for_file_lines(STR,F) _NEW_F for() */
+#ifdef USE_LIBRARY_MYSQL
+#define for_mysql_query_results(ROW,QUERY) _NEW_(_Ratom,_Rstack,_RStack)for(_Ratom->R=(mysql_query(_Matom->M,QUERY)?NULL:mysql_use_result(_Matom->M)),ROW=(_Ratom->R?mysql_fetch_row(_Ratom->R):NULL);ROW;ROW=mysql_fetch_row(_Ratom->R))
+#endif
+#ifdef USE_LIBRARY_FASTCGI
+#define while_fastcgi_accept while(FCGI_Accept()>=0)
+#endif
+/*obsolete #define every(A,B) for( A=B; A; A=A->_next) */
+/*obsolete #define search(A,B,C) every(A,B) if(C) */
+/*obsolete #define find(A,B,C) search(A,B,C) break; if(A) */
+
+/* ------------------------------------------------------------------- */
+/* 4.C<<1 conditionals - updated 2008-01-07 by xCh. */
+/* ------------------------------------------------------------------- */
+#define if_exists(A,B,C) for_search(A,B,C) break; if(A)
+
+/* ------------------------------------------------------------------- */
+/* old - from version 0.6 */
+/* ------------------------------------------------------------------- */