public Object evaluate(TemplateContext context) { context.engine.getErrorHandler().error("invalid-expression", this); return ""; } }
public Object evaluate(TemplateContext context) { context.engine.getErrorHandler().error(ErrorMessage.INVALID_EXPRESSION, this); return ""; } }
@SuppressWarnings("rawtypes") protected Object nextStep(Object o, String attributeName, ErrorHandler errorHandler, Token token) { Object result; if (o instanceof String) { errorHandler.error("no-call-on-string", token, new ModelBuilder( "receiver", o.toString()).build()); return o; } else if (o instanceof Map) { Map map = (Map) o; result = map.get(attributeName); } else { try { result = getPropertyValue(o, attributeName); } catch (Exception e) { errorHandler.error("property-access-error", token, new ModelBuilder("property", attributeName, "object", o, "exception", e).build()); result = ""; } } return result; }
@SuppressWarnings("rawtypes") protected Object getIndexFromArray(Object array, String arrayIndex, ErrorHandler errorHandler, Token token) { if ( array == null ) { errorHandler.error(NOT_ARRAY, token, new ModelBuilder("array", "[null]").build()); return ERROR_STRING; } else { if (array != ERROR_STRING) { errorHandler.error(INDEX_OUT_OF_BOUNDS, token, new ModelBuilder("arrayIndex", arrayIndex, "array", array.toString()).build()); errorHandler.error(INVALID_INDEX, token, new ModelBuilder("arrayIndex", arrayIndex, "array", array.toString()).build()); errorHandler.error(NOT_ARRAY, token, new ModelBuilder("array", array.toString()).build()); errorHandler.error(INDEX_OUT_OF_BOUNDS, token, new ModelBuilder("arrayIndex", arrayIndex, "array", array.toString()).build());
if (o instanceof String) { if (o != ERROR_STRING) { errorHandler.error(NO_CALL_ON_STRING, token, new ModelBuilder( "receiver", o.toString()).build()); final boolean arrayAccess = Util.isArrayAccess(attributeName); if (arrayAccess && !Util.isValidArrayAccess(attributeName)) { errorHandler.error(INVALID_ARRAY_SYNTAX, token, new ModelBuilder("arrayExpression", attributeName).build()); return ERROR_STRING; } catch (Exception e) { if (o != ERROR_STRING) { errorHandler.error(PROPERTY_ACCESS, token, new ModelBuilder("property", rawAttributeName, "object", o, "exception", e).build());
} else if (token instanceof ElseToken) { tokenStream.consume(); engine.getErrorHandler().error("else-out-of-scope", token); } else if (token instanceof EndToken) { tokenStream.consume(); engine.getErrorHandler().error("unmatched-end", token); } else if (token instanceof InvalidToken) { tokenStream.consume(); engine.getErrorHandler().error("invalid-expression", token); } else { tokenStream.consume();
ForEachToken feToken = (ForEachToken) tokenStream.currentToken(); if (feToken.getVarName() == ForEachToken.UNDEFINED_VARNAME) { this.context.engine.getErrorHandler().error(FOR_EACH_UNDEFINED_VARNAME, feToken); this.context.engine.getOutputAppender().append(this.getOutput(), "", feToken); this.context.engine.getErrorHandler().error(MISSING_END, feToken); this.context.engine.getOutputAppender().append(this.getOutput(), "", feToken); } else { this.context.engine.getErrorHandler().error(MISSING_END, feToken); this.context.engine.getOutputAppender().append(this.getOutput(), "", feToken); } else {
} else if (token instanceof ElseToken) { tokenStream.consume(); this.context.engine.getErrorHandler().error(ELSE_OUT_OF_SCOPE, token); this.context.engine.getOutputAppender().append(this.getOutput(), "", token); } else if (token instanceof EndToken) { tokenStream.consume(); this.context.engine.getErrorHandler().error(UNMATCHED_END, token); this.context.engine.getOutputAppender().append(this.getOutput(), "", token); } else if (token instanceof InvalidToken) { tokenStream.consume(); this.context.engine.getErrorHandler().error(INVALID_EXPRESSION, token); this.context.engine.getOutputAppender().append(this.getOutput(), "", token); } else {
engine.getErrorHandler().error("missing-end", ifToken); } else { tokenStream.consume();
this.context.engine.getErrorHandler().error(MISSING_END, ifToken); this.context.engine.getOutputAppender().append(this.getOutput(), null, ifToken); } else {