public Calc compileCall(ResolvedFunCall call, ExpCompiler compiler) { final Locale locale = compiler.getEvaluator().getConnectionLocale(); final StringCalc stringCalc = compiler.compileString(call.getArg(0)); if (stringCalc.getType().getClass().equals(NullType.class)) { throw newEvalException(this, "No method with the signature UCase(NULL) matches known functions."); } return new AbstractStringCalc(call, new Calc[]{stringCalc}) { public String evaluateString(Evaluator evaluator) { String value = stringCalc.evaluateString(evaluator); return value.toUpperCase(locale); } }; } });
public Calc compileCall(ResolvedFunCall call, ExpCompiler compiler) { final Exp[] args = call.getArgs(); final Calc calc = compiler.compileScalar(call.getArg(0), true); final Locale locale = compiler.getEvaluator().getConnectionLocale(); if (args[1] instanceof Literal) {