summaryrefslogtreecommitdiff
path: root/exec.h
diff options
context:
space:
mode:
Diffstat (limited to 'exec.h')
-rw-r--r--exec.h19
1 files changed, 19 insertions, 0 deletions
diff --git a/exec.h b/exec.h
new file mode 100644
index 0000000..11a4eb9
--- /dev/null
+++ b/exec.h
@@ -0,0 +1,19 @@
+#pragma once
+
+#include "typeutils.h"
+#include "parse.h"
+
+typedef struct {
+ char* key;
+ char* val;
+} StrPair;
+
+DECLARE_VEC(StrPair, KeyValMap)
+DECLARE_MAYBE(char*, MaybeStr)
+
+typedef struct {
+ KeyValMap aliases;
+ KeyValMap shell_vars;
+} ShellState;
+
+void run_pipeline(Pipeline pl, ShellState* shstate);