action.h 1.0 KB

123456789101112131415161718192021222324252627282930313233343536
  1. /*
  2. * action.h
  3. */
  4. #ifndef _clish_action_h
  5. #define _clish_action_h
  6. typedef struct clish_action_s clish_action_t;
  7. #include "lub/bintree.h"
  8. #include "clish/plugin.h"
  9. /*=====================================
  10. * ACTION INTERFACE
  11. *===================================== */
  12. /*-----------------
  13. * meta functions
  14. *----------------- */
  15. clish_action_t *clish_action_new(void);
  16. /*-----------------
  17. * methods
  18. *----------------- */
  19. void clish_action_delete(clish_action_t *instance);
  20. void clish_action_dump(const clish_action_t *instance);
  21. /*-----------------
  22. * attributes
  23. *----------------- */
  24. void clish_action__set_script(clish_action_t *instance, const char *script);
  25. char *clish_action__get_script(const clish_action_t *instance);
  26. void clish_action__set_builtin(clish_action_t *instance, clish_sym_t *builtin);
  27. clish_sym_t *clish_action__get_builtin(const clish_action_t *instance);
  28. void clish_action__set_shebang(clish_action_t *instance, const char *shebang);
  29. const char *clish_action__get_shebang(const clish_action_t *instance);
  30. #endif /* _clish_action_h */