iview.h 654 B

123456789101112131415161718192021222324252627282930
  1. /** @file view.h
  2. *
  3. * @brief Klish scheme's "view" entry
  4. */
  5. #ifndef _klish_iview_h
  6. #define _klish_iview_h
  7. #include <faux/error.h>
  8. #include <klish/icommand.h>
  9. #include <klish/inspace.h>
  10. #include <klish/kview.h>
  11. typedef struct iview_s {
  12. char *name;
  13. inspace_t * (*nspaces)[];
  14. icommand_t * (*commands)[];
  15. } iview_t;
  16. C_DECL_BEGIN
  17. bool_t iview_parse(const iview_t *info, kview_t *view, faux_error_t *error);
  18. bool_t iview_parse_nested(const iview_t *iview, kview_t *kview,
  19. faux_error_t *error);
  20. kview_t *iview_load(const iview_t *iview, faux_error_t *error);
  21. char *iview_deploy(const kview_t *kview, int level);
  22. C_DECL_END
  23. #endif // _klish_iview_h