Elektra  0.9.0
Macros
kdbglobal.h File Reference

Defines for global plugins. More...

#include <kdb.h>
#include <kdbconfig.h>
#include <kdbplugin.h>
Include dependency graph for kdbglobal.h:
This graph shows which files directly or indirectly include this file:

Macros

#define FOREACH_POSITION(POSITION)
 Helper for identifying global plugin positions. More...
 

Detailed Description

Defines for global plugins.

Macro Definition Documentation

◆ FOREACH_POSITION

#define FOREACH_POSITION (   POSITION)
Value:
POSITION(PREROLLBACK) \
POSITION(ROLLBACK) \
POSITION(POSTROLLBACK) \
POSITION(GETRESOLVER) \
POSITION(PREGETCACHE) \
POSITION(PREGETSTORAGE) \
POSITION(GETSTORAGE) \
POSITION(PROCGETSTORAGE) \
POSITION(POSTGETSTORAGE) \
POSITION(POSTGETCACHE) \
POSITION(SETRESOLVER) \
POSITION(POSTGETCLEANUP) \
POSITION(PRESETSTORAGE) \
POSITION(SETSTORAGE) \
POSITION(PRESETCLEANUP) \
POSITION(PRECOMMIT) \
POSITION(COMMIT) \
POSITION(POSTCOMMIT) \
POSITION(NR_GLOBAL_POSITIONS)

Helper for identifying global plugin positions.

We chose using these macros over other solutions in order to have the array available statically. Thus we can avoid initializing the KDB struct during runtime and still maintain the flexibility of easily adding new hook positions.