/** Executes this fragment with the provided context; returns its result as a string. The * provided context will be nested in the fragment's bound context. */ public String execute (Object context) { StringWriter out = new StringWriter(); execute(context, out); return out.toString(); }
/** Decompiles this fragment into {@code into}. See {@link #decompile()}. * @return {@code into} for call chaining. */ public abstract StringBuilder decompile (StringBuilder into); }
processCompiler(compiler).compile("{{> " + model.classname + "}}").execute(frag.context(), out); });
@Override public void execute(Template.Fragment fragment, Writer writer) throws IOException { String text = fragment.execute(); if (text == null || text.length() == 0) { return; } String prefixedIndention = StringUtils.repeat(new String(Character.toChars(spaceCode)), prefixSpaceCount); StringBuilder sb = new StringBuilder(); String[] lines = text.split(System.lineSeparator()); for (int i = 0; i < lines.length; i++) { String line = lines[i]; // Mustache will apply correct indentation to the first line of a template (to match declaration location). // So, we want to skip the first line. if (i > 0) { sb.append(prefixedIndention); if (prefix != null) sb.append(prefix); } sb.append(line); // We've split on the system's line separator. We don't want to add an additional trailing line. if (i < lines.length - 1) { sb.append(System.lineSeparator()); } } writer.write(sb.toString()); } }
@Override public void execute(Template.Fragment fragment, Writer writer) throws IOException { String text = fragment.execute(); if (delimiter == null) { writer.write(titleCase(text)); return; } // Split accepts regex. \Q and \E wrap the delimiter to create a literal regex, // so things like "." and "|" aren't treated as their regex equivalents. String[] parts = text.split("\\Q" + delimiter + "\\E"); for (int i = 0; i < parts.length; i++) { String part = parts[i]; writer.write(titleCase(part)); if (i != parts.length - 1) { writer.write(delimiter); } } } }
@Override public void execute(Template.Fragment fragment, Writer writer) throws IOException { String text = camelize(fragment.execute(), true); if (generator != null) { text = generator.sanitizeName(text); if (generator.reservedWords().contains(text)) { // Escaping must be done *after* camelize, because generators may escape using characters removed by camelize function. text = generator.escapeReservedWord(text); } if (escapeParam) { // NOTE: many generators call escapeReservedWord in toParamName, but we can't assume that's always the case. // Here, we'll have to accept that we may be duplicating some work. text = generator.toParamName(text); } } writer.write(text); } }
public void execute(Template.Fragment frag, Writer out) throws IOException { localize(request, frag.execute(), out); } };
@Override public void execute(Template.Fragment fragment, Writer writer) throws IOException { writer.write(fragment.execute().replaceAll("\\r|\\n", "")); } });
@Override public void execute(Template.Fragment fragment, Writer writer) throws IOException { writer.write(fragment.execute().replaceAll("\\r|\\n", "")); } });
@Override public void execute(Template.Fragment fragment, Writer writer) throws IOException { writer.write(fragment.execute().replaceAll("\"", Matcher.quoteReplacement("\\\""))); } });
@Override public void execute(Template.Fragment fragment, Writer writer) throws IOException { writer.write(modulized(fragment.execute())); } });
@Override public void execute(Template.Fragment fragment, Writer writer) throws IOException { writer.write(underscored(fragment.execute())); } });
@Override public void execute(Template.Fragment frag, Writer out) throws IOException { final StringWriter tempWriter = new StringWriter(); frag.execute(tempWriter); out.write(formatFragment(tempWriter.toString())); }
@Override public void execute(Template.Fragment frag, Writer out) throws IOException { final StringWriter tempWriter = new StringWriter(); frag.execute(tempWriter); out.write(formatFragment(tempWriter.toString())); }
@Override public void execute(Template.Fragment fragment, Writer writer) throws IOException { String[] substr = fragment.execute().trim().split(" "); writer.write(String.join(", ", substr)); } }
@Override public void execute(Template.Fragment fragment, Writer writer) throws IOException { writer.write(fragment.execute().replaceAll(from, to)); } }
/** Executes this fragment and returns its result as a string. */ public String execute () { StringWriter out = new StringWriter(); execute(out); return out.toString(); }
@Override public void execute(Fragment frag, Writer out) throws IOException { String classifier = frag.execute(); if (StringUtils.hasText(classifier)) { out.append("<classifier>"); out.append(classifier); out.append("</classifier>\n"); } }
@Override public void execute(Template.Fragment fragment, Writer writer) throws IOException { String text = fragment.execute().toLowerCase(Locale.ROOT); if (generator != null && generator.reservedWords().contains(text)) { text = generator.escapeReservedWord(text); } writer.write(text); } }