summaryrefslogtreecommitdiff
path: root/exec.h
blob: 11a4eb9264bdb751b2205ff1f01d5611fdd698e9 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
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);