#ifndef I_BINDING
#define I_BINDING

struct binds {
  char *param;
  union {
    int (*function_int)();
    void (*function_void)();
  } funct_type;
#define func_bind funct_type.function_int
#define ifunc_bind funct_type.function_int
#define vfunc_bind funct_type.function_void
};

#define MAX_META 9
typedef struct binds bindings[MAX_META+1][128];
extern bindings *META;

extern void set_bindlist(bindings new_meta);
extern void bind_typetext(char *line, int varpar, char *subparams);
extern void dobind(char *, int varpar, char *subparam);
extern void init_binds(void);
extern void create_binding(char *name);
extern int set_binding(char *name);

#endif
