#pragma once #include "syntax.h" #include "utils.h" Ast lex(char* input); PipelineTree process_ast(TokenVec root, ShellState* shstate); void source_script(char* fname, ShellState* shstate); void execute_string_line(char* line, ShellState* shstate); void execute_command_pipeline(Pipeline pipeline, Channel read_cha, Channel write_cha, bool wait_here, int* pgid, ShellState* shstate);