Author: timbo
Date: Wed Apr 18 04:23:43 2012
New Revision: 15267

Modified:
   dbi/trunk/DBIXS.h

Log:
Improve doc comments for DBIc_TRACE macro.


Modified: dbi/trunk/DBIXS.h
==============================================================================
--- dbi/trunk/DBIXS.h   (original)
+++ dbi/trunk/DBIXS.h   Wed Apr 18 04:23:43 2012
@@ -223,12 +223,19 @@
 #define DBIc_TRACE_MATCHES(this, crnt)  \
         (  ((crnt & DBIc_TRACE_LEVEL_MASK) >= (this & DBIc_TRACE_LEVEL_MASK)) \
         || ((crnt & DBIc_TRACE_FLAGS_MASK)  & (this & DBIc_TRACE_FLAGS_MASK)) )
-/* DBIc_TRACE: true if flags match & DBI level>=flaglevel, or if DBI 
level>level
+
+/* DBIc_TRACE(imp, flags, flag_level, fallback_level)
+   True if flags match the handle trace flags & handle trace level >= 
flag_level,
+   OR if handle trace_level > fallback_level (typically > flag_level).
    This is the main trace testing macro to be used by drivers.
    (Drivers should define their own DBDf_TRACE_* macros for the top 8 bits: 
0xFF000000)
-   DBIc_TRACE(imp,        0, 0, 4) = if level >= 4
-   DBIc_TRACE(imp, DBDf_FOO, 2, 4) = if tracing DBDf_FOO & level>=2 or level>=4
-   DBIc_TRACE(imp, DBDf_FOO, 2, 0) = as above but never trace just due to level
+   DBIc_TRACE(imp,              0, 0, 4) = if trace level >= 4
+   DBIc_TRACE(imp, DBDf_TRACE_FOO, 2, 4) = if tracing DBDf_FOO & level>=2 or 
level>=4
+   DBIc_TRACE(imp, DBDf_TRACE_FOO, 2, 0) = as above but never trace just due 
to level
+   e.g.
+    if (DBIc_TRACE(imp_xxh, DBIf_TRACE_SQL|DBIf_TRACE_xxx, 2, 0)) {
+        PerlIO_printf(DBIc_LOGPIO(imp_sth), "\tThe %s wibbled the %s\n", ...);
+    }
 */
 #define DBIc_TRACE(imp, flags, flaglevel, level)        \
         (  (flags && (DBIc_TRACE_FLAGS(imp) & flags) && (DBIc_TRACE_LEVEL(imp) 
>= flaglevel)) \

Reply via email to