libamxo  4.3.4
Object Definition Language (ODL) parsing
amxo_hooks.h File Reference
#include <amxo/amxo_types.h>

Go to the source code of this file.

Macros

#define AMXO_INLINE   static inline
 

Functions

int amxo_parser_set_hooks (amxo_parser_t *parser, amxo_hooks_t *hooks)
 
int amxo_parser_unset_hooks (amxo_parser_t *parser, amxo_hooks_t *hooks)
 

Macro Definition Documentation

◆ AMXO_INLINE

#define AMXO_INLINE   static inline

Definition at line 64 of file amxo_hooks.h.

Function Documentation

◆ amxo_parser_set_hooks()

int amxo_parser_set_hooks ( amxo_parser_t parser,
amxo_hooks_t hooks 
)

Definition at line 320 of file amxo_parser_hooks.c.

321  {
322  int retval = -1;
323  when_null(parser, exit);
324  when_null(hooks, exit);
325  when_not_null(hooks->it.llist, exit);
326 
327  if(parser->hooks == NULL) {
328  amxc_llist_new(&parser->hooks);
329  }
330  retval = amxc_llist_append(parser->hooks, &hooks->it);
331 
332 exit:
333  return retval;
334 }
amxc_llist_it_t it
Definition: amxo_types.h:182
amxc_llist_t * hooks
Definition: amxo_types.h:274

◆ amxo_parser_unset_hooks()

int amxo_parser_unset_hooks ( amxo_parser_t parser,
amxo_hooks_t hooks 
)

Definition at line 336 of file amxo_parser_hooks.c.

337  {
338  int retval = -1;
339 
340  when_null(parser, exit);
341  when_null(hooks, exit);
342 
343  when_true(parser->hooks != hooks->it.llist, exit);
344 
345  amxc_llist_it_take(&hooks->it);
346  if(amxc_llist_is_empty(parser->hooks)) {
347  amxc_llist_delete(&parser->hooks, NULL);
348  }
349  retval = 0;
350 
351 exit:
352  return retval;
353 }