if (!isRelation())
break; //we're done if no relation
+ //render relation
+ String relstr = (lexer.what() == CQLTokenizer.TT_WORD ?
+ lexer.value() : lexer.render(lexer.what(), false));
//we have relation, but it only makes sense if preceded by a single term
if (all.length() > first.length()) {
- throw new CQLParseException("unexpected relation '"+lexer.value()+"'"
+ throw new CQLParseException("unexpected relation '"+relstr+"'"
, lexer.pos());
}
index = first;
- String relstr = (lexer.what() == CQLTokenizer.TT_WORD ?
- lexer.value() : lexer.render(lexer.what(), false));
relation = new CQLRelation(relstr);
match(lexer.what());
ModifierSet ms = gatherModifiers(relstr);
root = parser.parse(cql);
} catch (CQLParseException ex) {
System.err.println("Syntax error: " + ex.getMessage());
+ StringBuilder space = new StringBuilder(cql.length());
+ System.out.println(cql);
+ for (int i=0; i<ex.getPosition(); i++) space.append(" ");
+ space.append("^");
+ System.err.println(space.toString());
System.exit(3);
return; //compiler
} catch (IOException ex) {