libnd_debug

Name

libnd_debug -- 

Synopsis



void        libnd_debug_enter               (const char *function);
void        libnd_debug_return              (const char *function);
gboolean    libnd_debuggable                (void);
#define     D                               (x)
#define     D_ASSERT                        (exp, msg)
#define     D_ASSERT_PTR                    (ptr)
#define     D_ENTER
#define     D_RETURN
#define     D_RETURN_                       (x)

Description

Details

libnd_debug_enter ()

void        libnd_debug_enter               (const char *function);

function :


libnd_debug_return ()

void        libnd_debug_return              (const char *function);

function :


libnd_debuggable ()

gboolean    libnd_debuggable                (void);

Returns :


D()

#define     D(x)

Use this macro to output debugging information. x is the content as you would pass it to printf(), including braces to make the arguments appear as one argument to the macro. The macro is automatically deleted if -DDEBUG is not passed at build time.

x :

debugging information.


D_ASSERT()

#define     D_ASSERT(exp, msg)

The macro outputs msg if the expression exp evaluates to FALSE.

exp :

expression to evaluate.

msg :

message to output if exp fails.


D_ASSERT_PTR()

#define     D_ASSERT_PTR(ptr)

The macro asserts the existence (i.e. non-NULL-ness) of the given pointer, and outpus a message if it is NULL.

ptr :

pointer to check.


D_ENTER

#define     D_ENTER

The macro updates internal debugging state when entering the function where this macro is used. Use it at the beginning of a function, but don't forget to properly match up D_ENTER with D_RETURN! The macro outpus the name of the entered function indented by the current nesting level.


D_RETURN

#define     D_RETURN

The macro updates internal debugging state when leaving the function where this macro is used. Use this macro wherever the function can be left, and don't forget D_ENTER.


D_RETURN_()

#define     D_RETURN_(x)

Same as D_RETURN, but for return with an argument.

x :