/** * For {@link TemplateMethodModel} calls, but not for {@link TemplateMethodModelEx}-es, returns the list of * arguments as {@link String}-s. */ List/*<String>*/ getValueList(Environment env) throws TemplateException { int size = items.size(); switch(size) { case 0: { return Collections.EMPTY_LIST; } case 1: { return Collections.singletonList(((Expression) items.get(0)).evalAndCoerceToPlainText(env)); } default: { List result = new ArrayList(items.size()); for (ListIterator iterator = items.listIterator(); iterator.hasNext(); ) { Expression exp = (Expression) iterator.next(); result.add(exp.evalAndCoerceToPlainText(env)); } return result; } } }
@Override TemplateModel _eval(Environment env) throws TemplateException { return new ConstructorFunction(target.evalAndCoerceToPlainText(env), env, target.getTemplate()); }
@Override TemplateElement[] accept(Environment env) throws TemplateException { if (exp == null) { throw new StopException(env); } throw new StopException(env, exp.evalAndCoerceToPlainText(env)); }
Expression keyExp = (Expression) keys.get(i); Expression valExp = (Expression) values.get(i); String key = keyExp.evalAndCoerceToPlainText(env); TemplateModel value = valExp.eval(env); if (env == null || !env.isClassicCompatible()) { Expression keyExp = (Expression) keys.get(i); Expression valExp = (Expression) values.get(i); String key = keyExp.evalAndCoerceToPlainText(env); TemplateModel value = valExp.eval(env); if (env == null || !env.isClassicCompatible()) {
String s = target.evalAndCoerceToPlainText(env); try { return new SimpleScalar(s.substring(index, index + 1));
@Override TemplateModel _eval(Environment env) throws TemplateException { TemplateModel model = target.eval(env); if (model instanceof TemplateDateModel) { TemplateDateModel dmodel = (TemplateDateModel) model; int dtype = dmodel.getDateType(); // Any date model can be coerced into its own type if (dateType == dtype) { return model; } // unknown and datetime can be coerced into any date type if (dtype == TemplateDateModel.UNKNOWN || dtype == TemplateDateModel.DATETIME) { return new SimpleDate(dmodel.getAsDate(), dateType); } throw new _MiscTemplateException(this, "Cannot convert ", TemplateDateModel.TYPE_NAMES.get(dtype), " to ", TemplateDateModel.TYPE_NAMES.get(dateType)); } // Otherwise, interpret as a string and attempt // to parse it into a date. String s = target.evalAndCoerceToPlainText(env); return new DateParser(s, env); }
targetSeq = null; try { targetStr = target.evalAndCoerceToPlainText(env); } catch (NonStringException e) { throw new UnexpectedTypeException(
@Override TemplateElement[] accept(Environment env) throws TemplateException, IOException { final String includedTemplateName = includedTemplateNameExp.evalAndCoerceToPlainText(env); final String fullIncludedTemplateName; try { ? this.encoding : (encodingExp != null ? encodingExp.evalAndCoerceToPlainText(env) : null);
sourceExpr = ((Expression) new DynamicKeyName(target, new NumberLiteral(Integer.valueOf(0))).copyLocationFrom(target)); if (((TemplateSequenceModel) model).size() > 1) { id = ((Expression) new DynamicKeyName(target, new NumberLiteral(Integer.valueOf(1))).copyLocationFrom(target)).evalAndCoerceToPlainText(env); env); String templateSource = sourceExpr.evalAndCoerceToPlainText(env); Template parentTemplate = env.getConfiguration().getIncompatibleImprovements().intValue() >= _TemplateAPI.VERSION_INT_2_3_26 ? env.getCurrentTemplate() : env.getTemplate();
if (parseExp instanceof StringLiteral) { parse = Boolean.valueOf(StringUtil.getYesNo(parseExp.evalAndCoerceToPlainText(null))); } else { try {
@Override TemplateElement[] accept(Environment env) throws TemplateException, IOException { final String importedTemplateName = importedTemplateNameExp.evalAndCoerceToPlainText(env); final String fullImportedTemplateName; try { fullImportedTemplateName = env.toFullTemplateName(getTemplate().getName(), importedTemplateName); } catch (MalformedTemplateNameException e) { throw new _MiscTemplateException(e, env, "Malformed template name ", new _DelayedJQuote(e.getTemplateName()), ":\n", e.getMalformednessDescription()); } try { env.importLib(fullImportedTemplateName, targetNsVarName); } catch (IOException e) { throw new _MiscTemplateException(e, env, "Template importing failed (for parameter value ", new _DelayedJQuote(importedTemplateName), "):\n", new _DelayedGetMessage(e)); } return null; }
cmpResult = (leftBool ? 1 : 0) - (rightBool ? 1 : 0); } else if (env.isClassicCompatible()) { String leftSting = leftExp.evalAndCoerceToPlainText(env); String rightString = rightExp.evalAndCoerceToPlainText(env); cmpResult = env.getCollator().compare(leftSting, rightString); } else {
/** * For {@link TemplateMethodModel} calls, but not for {@link TemplateMethodModelEx}-es, returns the list of * arguments as {@link String}-s. */ List/*<String>*/ getValueList(Environment env) throws TemplateException { int size = items.size(); switch(size) { case 0: { return Collections.EMPTY_LIST; } case 1: { return Collections.singletonList(((Expression) items.get(0)).evalAndCoerceToPlainText(env)); } default: { List result = new ArrayList(items.size()); for (ListIterator iterator = items.listIterator(); iterator.hasNext(); ) { Expression exp = (Expression) iterator.next(); result.add(exp.evalAndCoerceToPlainText(env)); } return result; } } }
@Override TemplateModel _eval(Environment env) throws TemplateException { return new ConstructorFunction(target.evalAndCoerceToPlainText(env), env, target.getTemplate()); }
@Override TemplateModel _eval(Environment env) throws TemplateException { return new ConstructorFunction(target.evalAndCoerceToPlainText(env), env, target.getTemplate()); }
@Override TemplateElement[] accept(Environment env) throws TemplateException { if (exp == null) { throw new StopException(env); } throw new StopException(env, exp.evalAndCoerceToPlainText(env)); }
@Override TemplateElement[] accept(Environment env) throws TemplateException { if (exp == null) { throw new StopException(env); } throw new StopException(env, exp.evalAndCoerceToPlainText(env)); }
@Override TemplateModel _eval(Environment env) throws TemplateException { TemplateModel model = target.eval(env); if (model instanceof TemplateDateModel) { TemplateDateModel dmodel = (TemplateDateModel) model; int dtype = dmodel.getDateType(); // Any date model can be coerced into its own type if (dateType == dtype) { return model; } // unknown and datetime can be coerced into any date type if (dtype == TemplateDateModel.UNKNOWN || dtype == TemplateDateModel.DATETIME) { return new SimpleDate(dmodel.getAsDate(), dateType); } throw new _MiscTemplateException(this, "Cannot convert ", TemplateDateModel.TYPE_NAMES.get(dtype), " to ", TemplateDateModel.TYPE_NAMES.get(dateType)); } // Otherwise, interpret as a string and attempt // to parse it into a date. String s = target.evalAndCoerceToPlainText(env); return new DateParser(s, env); }
@Override TemplateElement[] accept(Environment env) throws TemplateException, IOException { final String importedTemplateName = importedTemplateNameExp.evalAndCoerceToPlainText(env); final String fullImportedTemplateName; try { fullImportedTemplateName = env.toFullTemplateName(getTemplate().getName(), importedTemplateName); } catch (MalformedTemplateNameException e) { throw new _MiscTemplateException(e, env, "Malformed template name ", new _DelayedJQuote(e.getTemplateName()), ":\n", e.getMalformednessDescription()); } try { env.importLib(fullImportedTemplateName, targetNsVarName); } catch (IOException e) { throw new _MiscTemplateException(e, env, "Template importing failed (for parameter value ", new _DelayedJQuote(importedTemplateName), "):\n", new _DelayedGetMessage(e)); } return null; }
@Override TemplateElement[] accept(Environment env) throws TemplateException, IOException { final String importedTemplateName = importedTemplateNameExp.evalAndCoerceToPlainText(env); final String fullImportedTemplateName; try { fullImportedTemplateName = env.toFullTemplateName(getTemplate().getName(), importedTemplateName); } catch (MalformedTemplateNameException e) { throw new _MiscTemplateException(e, env, "Malformed template name ", new _DelayedJQuote(e.getTemplateName()), ":\n", e.getMalformednessDescription()); } try { env.importLib(fullImportedTemplateName, targetNsVarName); } catch (IOException e) { throw new _MiscTemplateException(e, env, "Template importing failed (for parameter value ", new _DelayedJQuote(importedTemplateName), "):\n", new _DelayedGetMessage(e)); } return null; }