Remove the old parser bits

Now that everything has been migrated to the new AST, remove as much of
the parse_tree bits as possible
This commit is contained in:
ridiculousfish
2020-07-02 14:51:45 -07:00
parent 3534c07584
commit 0c22f67bde
23 changed files with 14 additions and 2575 deletions

View File

@@ -1,11 +1,4 @@
// Provides the "linkage" between a parse_node_tree_t and actual execution structures (job_t, etc.)
//
// A note on error handling: fish has two kind of errors, fatal parse errors non-fatal runtime
// errors. A fatal error prevents execution of the entire file, while a non-fatal error skips that
// job.
//
// Non-fatal errors are printed as soon as they are encountered; otherwise you would have to wait
// for the execution to finish to see them.
// Provides the "linkage" between an ast and actual execution structures (job_t, etc.)
#include "config.h" // IWYU pragma: keep
#include "parse_execution.h"
@@ -1416,19 +1409,6 @@ end_execution_reason_t parse_execution_context_t::run_job_conjunction(
return result;
}
bool parse_execution_context_t::should_skip(parse_job_decoration_t type) const {
switch (type) {
case parse_job_decoration_and:
// AND. Skip if the last job failed.
return parser->get_last_status() != 0;
case parse_job_decoration_or:
// OR. Skip if the last job succeeded.
return parser->get_last_status() == 0;
default:
return false;
}
}
end_execution_reason_t parse_execution_context_t::test_and_run_1_job_conjunction(
const ast::job_conjunction_t &jc, const block_t *associated_block) {
// Test this job conjunction if it has an 'and' or 'or' decorator.