/* 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