ksession_parse.h 884 B

123456789101112131415161718192021222324252627282930
  1. /** @file ksession_parse.h
  2. *
  3. * @brief Klish session parse
  4. */
  5. #ifndef _klish_ksession_parse_h
  6. #define _klish_ksession_parse_h
  7. #include <klish/kpargv.h>
  8. #include <klish/kexec.h>
  9. #include <klish/ksession.h>
  10. C_DECL_BEGIN
  11. kpargv_t *ksession_parse_line(ksession_t *session, const faux_argv_t *argv,
  12. kpargv_purpose_e purpose);
  13. faux_list_t *ksession_split_pipes(const char *raw_line, faux_error_t *error);
  14. kpargv_t *ksession_parse_for_completion(ksession_t *session,
  15. const char *raw_line);
  16. kexec_t *ksession_parse_for_exec(ksession_t *session, const char *raw_line,
  17. faux_error_t *error);
  18. kexec_t *ksession_parse_for_local_exec(ksession_t *session,
  19. const kentry_t *entry, const kpargv_t *parent_pargv);
  20. bool_t ksession_exec_locally(ksession_t *session, const kentry_t *entry,
  21. kpargv_t *parent_pargv, int *retcode, const char **out);
  22. C_DECL_END
  23. #endif // _klish_ksession_parse_h