#ifndef _verbP_h_
#define _verbP_h_

#include "sysdep.h"
#include "memory.h"

#include "verb.h"

typedef struct AlVerb_st {
  AlVerb_ExecutionFunc exec_func;
  unsigned int min_args, max_args, def_args;
} AlVerb_rep;

#define raise(p_to_rep) ((AlVerb)p_to_rep)
#define lower(obj) ((AlVerb_rep *)obj)
#define create() ((AlVerb_rep *)Memory_allocate(sizeof(AlVerb_rep)))
#define destroy(p_to_rep) (Memory_free((VOIDP)p_to_rep))

#endif /* ifndef _verbP_h_ */
