QtBase  v6.3.1
Classes | Macros | Functions | Variables
hb-debug.hh File Reference
#include "hb.hh"
#include "hb-atomic.hh"
#include "hb-algs.hh"
Include dependency graph for hb-debug.hh:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

struct  hb_options_t
 
union  hb_options_union_t
 
struct  hb_printer_t< bool >
 
struct  hb_printer_t< hb_empty_t >
 
struct  hb_auto_trace_t< max_level, ret_t >
 
struct  hb_auto_trace_t< 0, ret_t >
 
struct  hb_no_trace_t< ret_t >
 

Macros

#define DEBUG_LEVEL_ENABLED(WHAT, LEVEL)   (_hb_debug ((LEVEL), HB_DEBUG_##WHAT))
 
#define DEBUG_ENABLED(WHAT)   (DEBUG_LEVEL_ENABLED (WHAT, 0))
 
#define VBAR   "\342\224\202" /* U+2502 BOX DRAWINGS LIGHT VERTICAL */
 
#define VRBAR   "\342\224\234" /* U+251C BOX DRAWINGS LIGHT VERTICAL AND RIGHT */
 
#define DLBAR   "\342\225\256" /* U+256E BOX DRAWINGS LIGHT ARC DOWN AND LEFT */
 
#define ULBAR   "\342\225\257" /* U+256F BOX DRAWINGS LIGHT ARC UP AND LEFT */
 
#define LBAR   "\342\225\264" /* U+2574 BOX DRAWINGS LIGHT LEFT */
 
#define DEBUG_MSG_LEVEL(WHAT, OBJ, LEVEL, LEVEL_DIR, ...)   _hb_debug_msg<HB_DEBUG_##WHAT> (#WHAT, (OBJ), nullptr, true, (LEVEL), (LEVEL_DIR), __VA_ARGS__)
 
#define DEBUG_MSG(WHAT, OBJ, ...)   _hb_debug_msg<HB_DEBUG_##WHAT> (#WHAT, (OBJ), nullptr, false, 0, 0, __VA_ARGS__)
 
#define DEBUG_MSG_FUNC(WHAT, OBJ, ...)   _hb_debug_msg<HB_DEBUG_##WHAT> (#WHAT, (OBJ), HB_FUNC, false, 0, 0, __VA_ARGS__)
 
#define return_trace(RET)   return trace.ret (RET, HB_FUNC, __LINE__)
 
#define TRACE_APPLY(this)   hb_no_trace_t<bool> trace
 
#define TRACE_SANITIZE(this)   hb_no_trace_t<bool> trace
 
#define TRACE_SERIALIZE(this)   hb_no_trace_t<bool> trace
 
#define TRACE_SUBSET(this)   hb_no_trace_t<bool> trace
 
#define TRACE_DISPATCH(this, format)   hb_no_trace_t<typename context_t::return_t> trace
 

Functions

HB_INTERNAL void _hb_options_init ()
 
template<>
void HB_PRINTF_FUNC (7, 0) _hb_debug_msg_va< 0 >(const char *what HB_UNUSED
 
static void const void const char bool unsigned int int const char va_start (ap, message)
 
 _hb_debug_msg_va< max_level > (what, obj, func, indented, level, level_dir, message, ap)
 
 va_end (ap)
 
template<>
void _hb_debug_msg< 0 > (const char *what HB_UNUSED, const void *obj HB_UNUSED, const char *func HB_UNUSED, bool indented HB_UNUSED, unsigned int level HB_UNUSED, int level_dir HB_UNUSED, const char *message HB_UNUSED,...) HB_PRINTF_FUNC(7
 
template<>
void void HB_PRINTF_FUNC (7, 8) _hb_debug_msg< 0 >(const char *what HB_UNUSED
 
template<>
void _hb_warn_no_return< hb_empty_t > (bool returned HB_UNUSED)
 

Variables

HB_INTERNAL hb_atomic_int_t _hb_options
 
void const void *obj HB_UNUSED
 
static void const voidobj
 
static void const void const char * func
 
static void const void const char bool indented
 
static void const void const char bool unsigned int level
 
static void const void const char bool unsigned int int level_dir
 
static void const void const char bool unsigned int int const char * message
 

Macro Definition Documentation

◆ DEBUG_ENABLED

#define DEBUG_ENABLED (   WHAT)    (DEBUG_LEVEL_ENABLED (WHAT, 0))

Definition at line 94 of file hb-debug.hh.

◆ DEBUG_LEVEL_ENABLED

#define DEBUG_LEVEL_ENABLED (   WHAT,
  LEVEL 
)    (_hb_debug ((LEVEL), HB_DEBUG_##WHAT))

Definition at line 93 of file hb-debug.hh.

◆ DEBUG_MSG

#define DEBUG_MSG (   WHAT,
  OBJ,
  ... 
)    _hb_debug_msg<HB_DEBUG_##WHAT> (#WHAT, (OBJ), nullptr, false, 0, 0, __VA_ARGS__)

◆ DEBUG_MSG_FUNC

#define DEBUG_MSG_FUNC (   WHAT,
  OBJ,
  ... 
)    _hb_debug_msg<HB_DEBUG_##WHAT> (#WHAT, (OBJ), HB_FUNC, false, 0, 0, __VA_ARGS__)

◆ DEBUG_MSG_LEVEL

#define DEBUG_MSG_LEVEL (   WHAT,
  OBJ,
  LEVEL,
  LEVEL_DIR,
  ... 
)    _hb_debug_msg<HB_DEBUG_##WHAT> (#WHAT, (OBJ), nullptr, true, (LEVEL), (LEVEL_DIR), __VA_ARGS__)

◆ DLBAR

#define DLBAR   "\342\225\256" /* U+256E BOX DRAWINGS LIGHT ARC DOWN AND LEFT */

◆ LBAR

#define LBAR   "\342\225\264" /* U+2574 BOX DRAWINGS LIGHT LEFT */

◆ return_trace

#define return_trace (   RET)    return trace.ret (RET, HB_FUNC, __LINE__)

Definition at line 349 of file hb-debug.hh.

◆ TRACE_APPLY

#define TRACE_APPLY (   this)    hb_no_trace_t<bool> trace

Definition at line 402 of file hb-debug.hh.

◆ TRACE_DISPATCH

#define TRACE_DISPATCH (   this,
  format 
)    hb_no_trace_t<typename context_t::return_t> trace

Definition at line 459 of file hb-debug.hh.

◆ TRACE_SANITIZE

#define TRACE_SANITIZE (   this)    hb_no_trace_t<bool> trace

Definition at line 414 of file hb-debug.hh.

◆ TRACE_SERIALIZE

#define TRACE_SERIALIZE (   this)    hb_no_trace_t<bool> trace

Definition at line 426 of file hb-debug.hh.

◆ TRACE_SUBSET

#define TRACE_SUBSET (   this)    hb_no_trace_t<bool> trace

Definition at line 438 of file hb-debug.hh.

◆ ULBAR

#define ULBAR   "\342\225\257" /* U+256F BOX DRAWINGS LIGHT ARC UP AND LEFT */

◆ VBAR

#define VBAR   "\342\224\202" /* U+2502 BOX DRAWINGS LIGHT VERTICAL */

◆ VRBAR

#define VRBAR   "\342\224\234" /* U+251C BOX DRAWINGS LIGHT VERTICAL AND RIGHT */

Function Documentation

◆ _hb_debug_msg< 0 >()

template<>
void _hb_debug_msg< 0 > ( const char *what  HB_UNUSED,
const void *obj  HB_UNUSED,
const char *func  HB_UNUSED,
bool indented  HB_UNUSED,
unsigned int level  HB_UNUSED,
int level_dir  HB_UNUSED,
const char *message  HB_UNUSED,
  ... 
)
inline

◆ _hb_debug_msg_va< max_level >()

_hb_debug_msg_va< max_level > ( what  ,
obj  ,
func  ,
indented  ,
level  ,
level_dir  ,
message  ,
ap   
)
Here is the caller graph for this function:

◆ _hb_options_init()

HB_INTERNAL void _hb_options_init ( )

Definition at line 74 of file hb-common.cc.

Here is the call graph for this function:

◆ _hb_warn_no_return< hb_empty_t >()

template<>
void _hb_warn_no_return< hb_empty_t > ( bool returned  HB_UNUSED)
inline

Definition at line 268 of file hb-debug.hh.

◆ HB_PRINTF_FUNC() [1/2]

template<>
void HB_PRINTF_FUNC ( ,
 
) const
inline

◆ HB_PRINTF_FUNC() [2/2]

template<>
void void HB_PRINTF_FUNC ( ,
 
) const
inline

◆ va_end()

va_end ( ap  )
Here is the caller graph for this function:

◆ va_start()

static void const void const char bool unsigned int int const char va_start ( ap  ,
message   
)
Here is the caller graph for this function:

Variable Documentation

◆ _hb_options

HB_INTERNAL hb_atomic_int_t _hb_options
extern

SECTION:hb-common @title: hb-common @short_description: Common data types hb.h

Common data types used across HarfBuzz are defined here.

Definition at line 71 of file hb-common.cc.

◆ func

Definition at line 200 of file hb-debug.hh.

◆ HB_UNUSED

void void const void* obj const char* func bool indented unsigned int level int level_dir const char* message HB_UNUSED
Initial value:
{}
template <int max_level> static inline void
_hb_debug_msg (const char *what,
const void *obj,
const char *func,
bool indented,
unsigned int level,
int level_dir,
const char *message,
...) HB_PRINTF_FUNC(7, 8)
void HB_PRINTF_FUNC(7, 0) _hb_debug_msg_va< 0 >(const char *what HB_UNUSED
static void const void const char bool unsigned int int level_dir
Definition: hb-debug.hh:203
static void const void const char bool indented
Definition: hb-debug.hh:201
GLenum GLuint GLenum GLsizei const GLchar * message
Definition: qopengl.h:270
GLenum GLuint GLint level
GLhandleARB obj
[2]
Definition: qopenglext.h:4164
GLenum func
Definition: qopenglext.h:663

Definition at line 180 of file hb-debug.hh.

◆ indented

void const void const char bool indented

Definition at line 201 of file hb-debug.hh.

◆ level

void const void const char bool unsigned int level

Definition at line 202 of file hb-debug.hh.

◆ level_dir

void const void const char bool unsigned int int level_dir

Definition at line 203 of file hb-debug.hh.

◆ message

void const void const char bool unsigned int int const char* message

Definition at line 204 of file hb-debug.hh.

◆ obj

Definition at line 199 of file hb-debug.hh.