kptype.h 537 B

12345678910111213141516171819202122232425262728293031
  1. /** @file kptype.h
  2. *
  3. * @brief Klish scheme's "ptype" entry
  4. */
  5. #ifndef _klish_kptype_h
  6. #define _klish_kptype_h
  7. #include <klish/kaction.h>
  8. typedef struct kptype_s kptype_t;
  9. typedef struct iptype_s {
  10. char *name;
  11. char *help;
  12. iaction_t * (*actions)[];
  13. } iptype_t;
  14. C_DECL_BEGIN
  15. kptype_t *kptype_new(iptype_t info);
  16. kptype_t *kptype_new_static(iptype_t info);
  17. void kptype_free(kptype_t *ptype);
  18. const char *kptype_name(const kptype_t *ptype);
  19. const char *kptype_help(const kptype_t *ptype);
  20. C_DECL_END
  21. #endif // _klish_kptype_h