aboutsummaryrefslogtreecommitdiffhomepage
path: root/parse_execution.h
diff options
context:
space:
mode:
authorGravatar ridiculousfish <corydoras@ridiculousfish.com>2013-12-26 13:24:10 -0800
committerGravatar ridiculousfish <corydoras@ridiculousfish.com>2013-12-26 13:24:10 -0800
commit6536ffe178922750756e860561c2205513067b3b (patch)
tree10c92338e601287d8fb576461dc82a96f4433820 /parse_execution.h
parent562946d055080ad52b8c13b9c9f6a02e7b8c029b (diff)
Facilities for turning on new AST-based parser.
Diffstat (limited to 'parse_execution.h')
-rw-r--r--parse_execution.h8
1 files changed, 5 insertions, 3 deletions
diff --git a/parse_execution.h b/parse_execution.h
index f6c7c120..0d679bb6 100644
--- a/parse_execution.h
+++ b/parse_execution.h
@@ -19,6 +19,7 @@ class parse_execution_context_t
private:
const parse_node_tree_t tree;
const wcstring src;
+ const io_chain_t block_io;
parser_t * const parser;
parse_error_list_t errors;
@@ -53,15 +54,16 @@ class parse_execution_context_t
bool determine_io_chain(const parse_node_t &statement, io_chain_t *out_chain);
int run_1_job(const parse_node_t &job_node);
- void run_job_list(const parse_node_t &job_list_node);
+ int run_job_list(const parse_node_t &job_list_node);
bool populate_job_from_job_node(job_t *j, const parse_node_t &job_node);
void eval_next_stack_elem();
public:
- parse_execution_context_t(const parse_node_tree_t &t, const wcstring s, parser_t *p);
+ parse_execution_context_t(const parse_node_tree_t &t, const wcstring &s, const io_chain_t &io, parser_t *p);
- void eval_job_list(const parse_node_t &job_node);
+ /* Actually execute the job list described by the tree */
+ int eval_top_level_job_list();
};