kparam.h 608 B

1234567891011121314151617181920212223242526272829303132
  1. /** @file kparam.h
  2. *
  3. * @brief Klish scheme's "param" entry
  4. */
  5. #ifndef _klish_kparam_h
  6. #define _klish_kparam_h
  7. typedef struct kparam_s kparam_t;
  8. typedef struct iparam_s iparam_t;
  9. struct iparam_s {
  10. char *name;
  11. char *help;
  12. char *ptype;
  13. iparam_t * (*params)[]; // Nested PARAMs
  14. };
  15. C_DECL_BEGIN
  16. kparam_t *kparam_new(iparam_t info);
  17. kparam_t *kparam_new_static(iparam_t info);
  18. void kparam_free(kparam_t *param);
  19. const char *kparam_name(const kparam_t *param);
  20. const char *kparam_help(const kparam_t *param);
  21. const char *kparam_ptype_str(const kparam_t *param);
  22. C_DECL_END
  23. #endif // _klish_kparam_h