Some tweaks to the 'substitute name into null value' patch.
This commit is contained in:
@@ -39,9 +39,10 @@ public class Mustache
|
||||
/** A value to use when a variable resolves to null. If this value is null (which is the
|
||||
* default null value), an exception will be thrown. If {@link #missingIsNull} is also
|
||||
* true, this value will be used when a variable cannot be resolved.
|
||||
* If the nullValue contains a substring "{{name}}", then this substring
|
||||
* will be replaced by name of the variable. For example, if nullValue="?{{name}}?"
|
||||
* and the missing variable is "foo", then string "?foo?" will be used. */
|
||||
*
|
||||
* <p>If the nullValue contains a substring {@code {{name}}}, then this substring will be
|
||||
* replaced by name of the variable. For example, if nullValue is {@code ?{{name}}?} and
|
||||
* the missing variable is {@code foo}, then string {@code ?foo?} will be used.</p> */
|
||||
public final String nullValue;
|
||||
|
||||
/** If this value is true, missing variables will be treated like variables that return
|
||||
@@ -125,6 +126,12 @@ public class Mustache
|
||||
this.missingIsNull, this.emptyStringIsFalse, this.loader, collector);
|
||||
}
|
||||
|
||||
/** Returns the value to use in the template for the null-valued property {@code name}. See
|
||||
* {@link #nullValue} for more details. */
|
||||
public String computeNullValue (String name) {
|
||||
return (nullValue == null) ? null : nullValue.replace("{{name}}", name);
|
||||
}
|
||||
|
||||
protected Compiler (boolean escapeHTML, boolean standardsMode, String nullValue,
|
||||
boolean missingIsNull, boolean emptyStringIsFalse, TemplateLoader loader,
|
||||
Collector collector) {
|
||||
|
||||
Reference in New Issue
Block a user