diff options
author | Christopher L. Conway <christopherleeconway@gmail.com> | 2009-12-15 23:05:02 +0000 |
---|---|---|
committer | Christopher L. Conway <christopherleeconway@gmail.com> | 2009-12-15 23:05:02 +0000 |
commit | 8cb3a7b556e8b4b85745bffbd1f0246e6af29588 (patch) | |
tree | cdff09f0a4a274a402c05013013091c0c7966615 /src/parser/antlr_parser.cpp | |
parent | 7cc208713f373ee83946b9d53a9c405bfec9e107 (diff) |
Minor changes to parser files from code review.
Diffstat (limited to 'src/parser/antlr_parser.cpp')
-rw-r--r-- | src/parser/antlr_parser.cpp | 12 |
1 files changed, 12 insertions, 0 deletions
diff --git a/src/parser/antlr_parser.cpp b/src/parser/antlr_parser.cpp index a50b1f18f..2d3033a59 100644 --- a/src/parser/antlr_parser.cpp +++ b/src/parser/antlr_parser.cpp @@ -9,6 +9,7 @@ #include "antlr_parser.h" #include "util/output.h" +#include "util/Assert.h" using namespace std; using namespace CVC4; @@ -134,11 +135,16 @@ void AntlrParser::rethrow(antlr::SemanticException& e, string new_message) Expr AntlrParser::createPrecedenceExpr(const vector<Expr>& exprs, const vector< Kind>& kinds) { + Assert( exprs.size() > 0, "Expected non-empty vector expr"); + Assert( vectors.size() + 1 == exprs.size(), "Expected kinds to match exprs"); return createPrecedenceExpr(exprs, kinds, 0, exprs.size() - 1); } unsigned AntlrParser::findPivot(const std::vector<Kind>& kinds, unsigned start_index, unsigned end_index) const { + Assert( start_index >= 0, "Expected start_index >= 0. "); + Assert( end_index < kinds.size(), "Expected end_index < kinds.size(). "); + Assert( start_index <= end_index, "Expected start_index <= end_index. "); int pivot = start_index; unsigned pivot_precedence = getPrecedence(kinds[pivot]); @@ -157,6 +163,12 @@ unsigned AntlrParser::findPivot(const std::vector<Kind>& kinds, Expr AntlrParser::createPrecedenceExpr(const std::vector<Expr>& exprs, const std::vector<Kind>& kinds, unsigned start_index, unsigned end_index) { + Assert( exprs.size() > 0, "Expected non-empty vector expr"); + Assert( kinds.size() + 1 == exprs.size(), "Expected kinds to match exprs."); + Assert( start_index >= 0, "Expected start_index >= 0. "); + Assert( end_index < exprs.size(), "Expected end_index < exprs.size. "); + Assert( start_index <= end_index, "Expected start_index <= end_index. "); + if(start_index == end_index) return exprs[start_index]; |