boolean (PsiBuilder builder) { if (XPathTokenTypes.ADD_OPS.contains(builder.getTokenType())) { PsiBuilder.Marker expr = builder.mark(); do { builder.advanceLexer(); if (!parseUnaryExpression(builder)) { builder.error(XPathBundle.message("parsing.error.expression.expected")); } expr.done(XPathElementTypes.PREFIX_EXPRESSION); expr = expr.precede(); } while (XPathTokenTypes.ADD_OPS.contains(builder.getTokenType())); expr.drop(); return true; } return parseValueExpression(builder); }