read(end);
return false;
}
private KSPropDefs parseKSPropDefs() {
KSPropDefs defs = new KSPropDefs();
try {
read("WITH");
do {
String name = readUniqueIdentifier().toLowerCase(Locale.US);
read("=");
if (readIf("{")) {
defs.addProperty(name, parseMap());
} else {
Expression value = readExpression();
defs.addProperty(name, value.optimize(session).getValue(session).toString());
}
} while (readIf("AND"));
defs.validate();
} catch (SyntaxException e) {
throw getSyntaxError();
}
return defs;
}