/* vi: set ts=2: +-------------------+ Christian Schlittchen | | Enno Rehling | Eressea PBEM host | Katja Zedel | (c) 1998 - 2003 | Henning Peters | | Ingo Wilken +-------------------+ Stefan Reich This program may not be used, modified or distributed without prior permission by the authors of Eressea. */ #ifndef H_UTIL_COMMAND_H #define H_UTIL_COMMAND_H #ifdef __cplusplus extern "C" { #endif struct tnode; struct locale; struct order; typedef struct syntaxtree { const struct locale * lang; struct tnode * root; struct syntaxtree * next; } syntaxtree; typedef void (*parser)(const struct tnode *, void *, struct order*); extern void add_command(struct tnode * troot, struct tnode * tnext, const char * str, parser fun); extern void do_command(const struct tnode * troot, void * u, struct order *); extern struct syntaxtree * stree_create(void); extern struct tnode * stree_find(const struct syntaxtree * stree, const struct locale * lang); #ifdef __cplusplus } #endif #endif