<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<!-- NewPage -->
<html lang="en">
<head>
<!-- Generated by javadoc (1.8.0_281) on Sun Jan 15 15:58:33 CET 2023 -->
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Configurable (FreeMarker 2.3.32 API)</title>
<meta name="date" content="2023-01-15">
<link rel="stylesheet" type="text/css" href="../../stylesheet.css" title="Style">
<script type="text/javascript" src="../../script.js"></script>
</head>
<body>
<script type="text/javascript"><!--
    try {
        if (location.href.indexOf('is-external=true') == -1) {
            parent.document.title="Configurable (FreeMarker 2.3.32 API)";
        }
    }
    catch(err) {
    }
//-->
var methods = {"i0":10,"i1":10,"i2":10,"i3":10,"i4":10,"i5":10,"i6":10,"i7":10,"i8":10,"i9":10,"i10":10,"i11":10,"i12":10,"i13":10,"i14":10,"i15":10,"i16":10,"i17":10,"i18":10,"i19":10,"i20":10,"i21":10,"i22":10,"i23":10,"i24":10,"i25":10,"i26":10,"i27":10,"i28":10,"i29":10,"i30":10,"i31":10,"i32":10,"i33":10,"i34":10,"i35":42,"i36":10,"i37":42,"i38":10,"i39":10,"i40":10,"i41":10,"i42":10,"i43":10,"i44":10,"i45":10,"i46":10,"i47":10,"i48":10,"i49":10,"i50":10,"i51":10,"i52":10,"i53":10,"i54":10,"i55":10,"i56":10,"i57":10,"i58":10,"i59":10,"i60":10,"i61":10,"i62":10,"i63":10,"i64":10,"i65":10,"i66":10,"i67":10,"i68":10,"i69":10,"i70":10,"i71":10,"i72":10,"i73":10,"i74":10,"i75":10,"i76":10,"i77":10,"i78":10,"i79":10,"i80":10,"i81":10,"i82":10,"i83":10,"i84":10,"i85":10,"i86":10,"i87":10,"i88":10,"i89":10,"i90":10,"i91":10,"i92":10,"i93":10,"i94":10,"i95":10,"i96":10,"i97":10,"i98":10,"i99":10,"i100":10,"i101":10,"i102":10,"i103":10,"i104":10,"i105":10,"i106":10,"i107":10,"i108":10,"i109":10,"i110":10,"i111":10,"i112":10,"i113":42,"i114":10,"i115":10,"i116":10,"i117":10,"i118":10,"i119":10,"i120":10,"i121":10};
var tabs = {65535:["t0","All Methods"],2:["t2","Instance Methods"],8:["t4","Concrete Methods"],32:["t6","Deprecated Methods"]};
var altColor = "altColor";
var rowColor = "rowColor";
var tableTab = "tableTab";
var activeTableTab = "activeTableTab";
</script>
<noscript>
<div>JavaScript is disabled on your browser.</div>
</noscript>
<!-- ========= START OF TOP NAVBAR ======= -->
<div class="topNav"><a name="navbar.top">
<!--   -->
</a>
<div class="skipNav"><a href="#skip.navbar.top" title="Skip navigation links">Skip navigation links</a></div>
<a name="navbar.top.firstrow">
<!--   -->
</a>
<ul class="navList" title="Navigation">
<li><a href="../../overview-summary.html">Overview</a></li>
<li><a href="package-summary.html">Package</a></li>
<li class="navBarCell1Rev">Class</li>
<li><a href="class-use/Configurable.html">Use</a></li>
<li><a href="package-tree.html">Tree</a></li>
<li><a href="../../deprecated-list.html">Deprecated</a></li>
<li><a href="../../index-all.html">Index</a></li>
<li><a href="../../help-doc.html">Help</a></li>
</ul>
</div>
<div class="subNav">
<ul class="navList">
<li><a href="../../freemarker/core/CommonTemplateMarkupOutputModel.html" title="class in freemarker.core"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
<li><a href="../../freemarker/core/Configurable.SettingValueAssignmentException.html" title="class in freemarker.core"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
</ul>
<ul class="navList">
<li><a href="../../index.html?freemarker/core/Configurable.html" target="_top">Frames</a></li>
<li><a href="Configurable.html" target="_top">No&nbsp;Frames</a></li>
</ul>
<ul class="navList" id="allclasses_navbar_top">
<li><a href="../../allclasses-noframe.html">All&nbsp;Classes</a></li>
</ul>
<div>
<script type="text/javascript"><!--
  allClassesLink = document.getElementById("allclasses_navbar_top");
  if(window==top) {
    allClassesLink.style.display = "block";
  }
  else {
    allClassesLink.style.display = "none";
  }
  //-->
</script>
</div>
<div>
<ul class="subNavList">
<li>Summary:&nbsp;</li>
<li><a href="#nested.class.summary">Nested</a>&nbsp;|&nbsp;</li>
<li><a href="#field.summary">Field</a>&nbsp;|&nbsp;</li>
<li><a href="#constructor.summary">Constr</a>&nbsp;|&nbsp;</li>
<li><a href="#method.summary">Method</a></li>
</ul>
<ul class="subNavList">
<li>Detail:&nbsp;</li>
<li><a href="#field.detail">Field</a>&nbsp;|&nbsp;</li>
<li><a href="#constructor.detail">Constr</a>&nbsp;|&nbsp;</li>
<li><a href="#method.detail">Method</a></li>
</ul>
</div>
<a name="skip.navbar.top">
<!--   -->
</a></div>
<!-- ========= END OF TOP NAVBAR ========= -->
<!-- ======== START OF CLASS DATA ======== -->
<div class="header">
<div class="subTitle">freemarker.core</div>
<h2 title="Class Configurable" class="title">Class Configurable</h2>
</div>
<div class="contentContainer">
<ul class="inheritance">
<li>java.lang.Object</li>
<li>
<ul class="inheritance">
<li>freemarker.core.Configurable</li>
</ul>
</li>
</ul>
<div class="description">
<ul class="blockList">
<li class="blockList">
<dl>
<dt>Direct Known Subclasses:</dt>
<dd><a href="../../freemarker/template/Configuration.html" title="class in freemarker.template">Configuration</a>, <a href="../../freemarker/core/Environment.html" title="class in freemarker.core">Environment</a>, <a href="../../freemarker/template/Template.html" title="class in freemarker.template">Template</a>, <a href="../../freemarker/core/TemplateConfiguration.html" title="class in freemarker.core">TemplateConfiguration</a></dd>
</dl>
<hr>
<br>
<pre>public class <span class="typeNameLabel">Configurable</span>
extends java.lang.Object</pre>
<div class="block">This is a common superclass of <a href="../../freemarker/template/Configuration.html" title="class in freemarker.template"><code>Configuration</code></a>,
 <a href="../../freemarker/template/Template.html" title="class in freemarker.template"><code>Template</code></a>, and <a href="../../freemarker/core/Environment.html" title="class in freemarker.core"><code>Environment</code></a> classes.
 It provides settings that are common to each of them. FreeMarker
 uses a three-level setting hierarchy - the return value of every setting
 getter method on <code>Configurable</code> objects inherits its value from its parent 
 <code>Configurable</code> object, unless explicitly overridden by a call to a 
 corresponding setter method on the object itself. The parent of an 
 <code>Environment</code> object is a <code>Template</code> object, the
 parent of a <code>Template</code> object is a <code>Configuration</code>
 object.</div>
</li>
</ul>
</div>
<div class="summary">
<ul class="blockList">
<li class="blockList">
<!-- ======== NESTED CLASS SUMMARY ======== -->
<ul class="blockList">
<li class="blockList"><a name="nested.class.summary">
<!--   -->
</a>
<h3>Nested Class Summary</h3>
<table class="memberSummary" border="0" cellpadding="3" cellspacing="0" summary="Nested Class Summary table, listing nested classes, and an explanation">
<caption><span>Nested Classes</span><span class="tabEnd">&nbsp;</span></caption>
<tr>
<th class="colFirst" scope="col">Modifier and Type</th>
<th class="colLast" scope="col">Class and Description</th>
</tr>
<tr class="altColor">
<td class="colFirst"><code>static class&nbsp;</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../freemarker/core/Configurable.SettingValueAssignmentException.html" title="class in freemarker.core">Configurable.SettingValueAssignmentException</a></span></code>
<div class="block">The setting name was recognized, but its value couldn't be parsed or the setting couldn't be set for some 
 other reason.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>static class&nbsp;</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../freemarker/core/Configurable.UnknownSettingException.html" title="class in freemarker.core">Configurable.UnknownSettingException</a></span></code>
<div class="block">The setting name was not recognized.</div>
</td>
</tr>
</table>
</li>
</ul>
<!-- =========== FIELD SUMMARY =========== -->
<ul class="blockList">
<li class="blockList"><a name="field.summary">
<!--   -->
</a>
<h3>Field Summary</h3>
<table class="memberSummary" border="0" cellpadding="3" cellspacing="0" summary="Field Summary table, listing fields, and an explanation">
<caption><span>Fields</span><span class="tabEnd">&nbsp;</span></caption>
<tr>
<th class="colFirst" scope="col">Modifier and Type</th>
<th class="colLast" scope="col">Field and Description</th>
</tr>
<tr class="altColor">
<td class="colFirst"><code>static java.lang.String</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../freemarker/core/Configurable.html#API_BUILTIN_ENABLED_KEY">API_BUILTIN_ENABLED_KEY</a></span></code>
<div class="block">Alias to the <code>..._SNAKE_CASE</code> variation due to backward compatibility constraints.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>static java.lang.String</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../freemarker/core/Configurable.html#API_BUILTIN_ENABLED_KEY_CAMEL_CASE">API_BUILTIN_ENABLED_KEY_CAMEL_CASE</a></span></code>
<div class="block">Modern, camel case (<code>likeThis</code>) variation of the setting name.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>static java.lang.String</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../freemarker/core/Configurable.html#API_BUILTIN_ENABLED_KEY_SNAKE_CASE">API_BUILTIN_ENABLED_KEY_SNAKE_CASE</a></span></code>
<div class="block">Legacy, snake case (<code>like_this</code>) variation of the setting name.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>static java.lang.String</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../freemarker/core/Configurable.html#ARITHMETIC_ENGINE_KEY">ARITHMETIC_ENGINE_KEY</a></span></code>
<div class="block">Alias to the <code>..._SNAKE_CASE</code> variation due to backward compatibility constraints.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>static java.lang.String</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../freemarker/core/Configurable.html#ARITHMETIC_ENGINE_KEY_CAMEL_CASE">ARITHMETIC_ENGINE_KEY_CAMEL_CASE</a></span></code>
<div class="block">Modern, camel case (<code>likeThis</code>) variation of the setting name.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>static java.lang.String</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../freemarker/core/Configurable.html#ARITHMETIC_ENGINE_KEY_SNAKE_CASE">ARITHMETIC_ENGINE_KEY_SNAKE_CASE</a></span></code>
<div class="block">Legacy, snake case (<code>like_this</code>) variation of the setting name.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>static java.lang.String</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../freemarker/core/Configurable.html#ATTEMPT_EXCEPTION_REPORTER_KEY">ATTEMPT_EXCEPTION_REPORTER_KEY</a></span></code>
<div class="block">Alias to the <code>..._SNAKE_CASE</code> variation due to backward compatibility constraints.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>static java.lang.String</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../freemarker/core/Configurable.html#ATTEMPT_EXCEPTION_REPORTER_KEY_CAMEL_CASE">ATTEMPT_EXCEPTION_REPORTER_KEY_CAMEL_CASE</a></span></code>
<div class="block">Modern, camel case (<code>likeThis</code>) variation of the setting name.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>static java.lang.String</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../freemarker/core/Configurable.html#ATTEMPT_EXCEPTION_REPORTER_KEY_SNAKE_CASE">ATTEMPT_EXCEPTION_REPORTER_KEY_SNAKE_CASE</a></span></code>
<div class="block">Legacy, snake case (<code>like_this</code>) variation of the setting name.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>static java.lang.String</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../freemarker/core/Configurable.html#AUTO_FLUSH_KEY">AUTO_FLUSH_KEY</a></span></code>
<div class="block">Alias to the <code>..._SNAKE_CASE</code> variation due to backward compatibility constraints.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>static java.lang.String</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../freemarker/core/Configurable.html#AUTO_FLUSH_KEY_CAMEL_CASE">AUTO_FLUSH_KEY_CAMEL_CASE</a></span></code>
<div class="block">Modern, camel case (<code>likeThis</code>) variation of the setting name.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>static java.lang.String</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../freemarker/core/Configurable.html#AUTO_FLUSH_KEY_SNAKE_CASE">AUTO_FLUSH_KEY_SNAKE_CASE</a></span></code>
<div class="block">Legacy, snake case (<code>like_this</code>) variation of the setting name.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>static java.lang.String</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../freemarker/core/Configurable.html#AUTO_IMPORT_KEY">AUTO_IMPORT_KEY</a></span></code>
<div class="block">Alias to the <code>..._SNAKE_CASE</code> variation due to backward compatibility constraints.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>static java.lang.String</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../freemarker/core/Configurable.html#AUTO_IMPORT_KEY_CAMEL_CASE">AUTO_IMPORT_KEY_CAMEL_CASE</a></span></code>
<div class="block">Modern, camel case (<code>likeThis</code>) variation of the setting name.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>static java.lang.String</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../freemarker/core/Configurable.html#AUTO_IMPORT_KEY_SNAKE_CASE">AUTO_IMPORT_KEY_SNAKE_CASE</a></span></code>
<div class="block">Legacy, snake case (<code>like_this</code>) variation of the setting name.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>static java.lang.String</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../freemarker/core/Configurable.html#AUTO_INCLUDE_KEY">AUTO_INCLUDE_KEY</a></span></code>
<div class="block">Alias to the <code>..._SNAKE_CASE</code> variation due to backward compatibility constraints.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>static java.lang.String</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../freemarker/core/Configurable.html#AUTO_INCLUDE_KEY_CAMEL_CASE">AUTO_INCLUDE_KEY_CAMEL_CASE</a></span></code>
<div class="block">Modern, camel case (<code>likeThis</code>) variation of the setting name.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>static java.lang.String</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../freemarker/core/Configurable.html#AUTO_INCLUDE_KEY_SNAKE_CASE">AUTO_INCLUDE_KEY_SNAKE_CASE</a></span></code>
<div class="block">Legacy, snake case (<code>like_this</code>) variation of the setting name.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>static java.lang.String</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../freemarker/core/Configurable.html#BOOLEAN_FORMAT_KEY">BOOLEAN_FORMAT_KEY</a></span></code>
<div class="block">Alias to the <code>..._SNAKE_CASE</code> variation due to backward compatibility constraints.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>static java.lang.String</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../freemarker/core/Configurable.html#BOOLEAN_FORMAT_KEY_CAMEL_CASE">BOOLEAN_FORMAT_KEY_CAMEL_CASE</a></span></code>
<div class="block">Modern, camel case (<code>likeThis</code>) variation of the setting name.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>static java.lang.String</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../freemarker/core/Configurable.html#BOOLEAN_FORMAT_KEY_SNAKE_CASE">BOOLEAN_FORMAT_KEY_SNAKE_CASE</a></span></code>
<div class="block">Legacy, snake case (<code>like_this</code>) variation of the setting name.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>static java.lang.String</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../freemarker/core/Configurable.html#C_FORMAT_KEY">C_FORMAT_KEY</a></span></code>
<div class="block">Alias to the <code>..._SNAKE_CASE</code> variation due to backward compatibility constraints.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>static java.lang.String</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../freemarker/core/Configurable.html#C_FORMAT_KEY_CAMEL_CASE">C_FORMAT_KEY_CAMEL_CASE</a></span></code>
<div class="block">Modern, camel case (<code>likeThis</code>) variation of the setting name.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>static java.lang.String</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../freemarker/core/Configurable.html#C_FORMAT_KEY_SNAKE_CASE">C_FORMAT_KEY_SNAKE_CASE</a></span></code>
<div class="block">Legacy, snake case (<code>like_this</code>) variation of the setting name.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>static java.lang.String</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../freemarker/core/Configurable.html#CLASSIC_COMPATIBLE_KEY">CLASSIC_COMPATIBLE_KEY</a></span></code>
<div class="block">Alias to the <code>..._SNAKE_CASE</code> variation due to backward compatibility constraints.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>static java.lang.String</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../freemarker/core/Configurable.html#CLASSIC_COMPATIBLE_KEY_CAMEL_CASE">CLASSIC_COMPATIBLE_KEY_CAMEL_CASE</a></span></code>
<div class="block">Modern, camel case (<code>likeThis</code>) variation of the setting name.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>static java.lang.String</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../freemarker/core/Configurable.html#CLASSIC_COMPATIBLE_KEY_SNAKE_CASE">CLASSIC_COMPATIBLE_KEY_SNAKE_CASE</a></span></code>
<div class="block">Legacy, snake case (<code>like_this</code>) variation of the setting name.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>static java.lang.String</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../freemarker/core/Configurable.html#CUSTOM_DATE_FORMATS_KEY">CUSTOM_DATE_FORMATS_KEY</a></span></code>
<div class="block">Alias to the <code>..._SNAKE_CASE</code> variation due to backward compatibility constraints.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>static java.lang.String</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../freemarker/core/Configurable.html#CUSTOM_DATE_FORMATS_KEY_CAMEL_CASE">CUSTOM_DATE_FORMATS_KEY_CAMEL_CASE</a></span></code>
<div class="block">Modern, camel case (<code>likeThis</code>) variation of the setting name.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>static java.lang.String</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../freemarker/core/Configurable.html#CUSTOM_DATE_FORMATS_KEY_SNAKE_CASE">CUSTOM_DATE_FORMATS_KEY_SNAKE_CASE</a></span></code>
<div class="block">Legacy, snake case (<code>like_this</code>) variation of the setting name.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>static java.lang.String</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../freemarker/core/Configurable.html#CUSTOM_NUMBER_FORMATS_KEY">CUSTOM_NUMBER_FORMATS_KEY</a></span></code>
<div class="block">Alias to the <code>..._SNAKE_CASE</code> variation due to backward compatibility constraints.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>static java.lang.String</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../freemarker/core/Configurable.html#CUSTOM_NUMBER_FORMATS_KEY_CAMEL_CASE">CUSTOM_NUMBER_FORMATS_KEY_CAMEL_CASE</a></span></code>
<div class="block">Modern, camel case (<code>likeThis</code>) variation of the setting name.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>static java.lang.String</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../freemarker/core/Configurable.html#CUSTOM_NUMBER_FORMATS_KEY_SNAKE_CASE">CUSTOM_NUMBER_FORMATS_KEY_SNAKE_CASE</a></span></code>
<div class="block">Legacy, snake case (<code>like_this</code>) variation of the setting name.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>static java.lang.String</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../freemarker/core/Configurable.html#DATE_FORMAT_KEY">DATE_FORMAT_KEY</a></span></code>
<div class="block">Alias to the <code>..._SNAKE_CASE</code> variation due to backward compatibility constraints.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>static java.lang.String</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../freemarker/core/Configurable.html#DATE_FORMAT_KEY_CAMEL_CASE">DATE_FORMAT_KEY_CAMEL_CASE</a></span></code>
<div class="block">Modern, camel case (<code>likeThis</code>) variation of the setting name.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>static java.lang.String</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../freemarker/core/Configurable.html#DATE_FORMAT_KEY_SNAKE_CASE">DATE_FORMAT_KEY_SNAKE_CASE</a></span></code>
<div class="block">Legacy, snake case (<code>like_this</code>) variation of the setting name.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>static java.lang.String</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../freemarker/core/Configurable.html#DATETIME_FORMAT_KEY">DATETIME_FORMAT_KEY</a></span></code>
<div class="block">Alias to the <code>..._SNAKE_CASE</code> variation due to backward compatibility constraints.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>static java.lang.String</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../freemarker/core/Configurable.html#DATETIME_FORMAT_KEY_CAMEL_CASE">DATETIME_FORMAT_KEY_CAMEL_CASE</a></span></code>
<div class="block">Modern, camel case (<code>likeThis</code>) variation of the setting name.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>static java.lang.String</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../freemarker/core/Configurable.html#DATETIME_FORMAT_KEY_SNAKE_CASE">DATETIME_FORMAT_KEY_SNAKE_CASE</a></span></code>
<div class="block">Legacy, snake case (<code>like_this</code>) variation of the setting name.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>static java.lang.String</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../freemarker/core/Configurable.html#LAZY_AUTO_IMPORTS_KEY">LAZY_AUTO_IMPORTS_KEY</a></span></code>
<div class="block">Alias to the <code>..._SNAKE_CASE</code> variation due to backward compatibility constraints.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>static java.lang.String</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../freemarker/core/Configurable.html#LAZY_AUTO_IMPORTS_KEY_CAMEL_CASE">LAZY_AUTO_IMPORTS_KEY_CAMEL_CASE</a></span></code>
<div class="block">Modern, camel case (<code>likeThis</code>) variation of the setting name.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>static java.lang.String</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../freemarker/core/Configurable.html#LAZY_AUTO_IMPORTS_KEY_SNAKE_CASE">LAZY_AUTO_IMPORTS_KEY_SNAKE_CASE</a></span></code>
<div class="block">Legacy, snake case (<code>like_this</code>) variation of the setting name.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>static java.lang.String</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../freemarker/core/Configurable.html#LAZY_IMPORTS_KEY">LAZY_IMPORTS_KEY</a></span></code>
<div class="block">Alias to the <code>..._SNAKE_CASE</code> variation due to backward compatibility constraints.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>static java.lang.String</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../freemarker/core/Configurable.html#LAZY_IMPORTS_KEY_CAMEL_CASE">LAZY_IMPORTS_KEY_CAMEL_CASE</a></span></code>
<div class="block">Modern, camel case (<code>likeThis</code>) variation of the setting name.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>static java.lang.String</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../freemarker/core/Configurable.html#LAZY_IMPORTS_KEY_SNAKE_CASE">LAZY_IMPORTS_KEY_SNAKE_CASE</a></span></code>
<div class="block">Legacy, snake case (<code>like_this</code>) variation of the setting name.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>static java.lang.String</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../freemarker/core/Configurable.html#LOCALE_KEY">LOCALE_KEY</a></span></code>
<div class="block">Alias to the <code>..._SNAKE_CASE</code> variation due to backward compatibility constraints.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>static java.lang.String</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../freemarker/core/Configurable.html#LOCALE_KEY_CAMEL_CASE">LOCALE_KEY_CAMEL_CASE</a></span></code>
<div class="block">Modern, camel case (<code>likeThis</code>) variation of the setting name.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>static java.lang.String</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../freemarker/core/Configurable.html#LOCALE_KEY_SNAKE_CASE">LOCALE_KEY_SNAKE_CASE</a></span></code>
<div class="block">Legacy, snake case (<code>like_this</code>) variation of the setting name.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>static java.lang.String</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../freemarker/core/Configurable.html#LOG_TEMPLATE_EXCEPTIONS_KEY">LOG_TEMPLATE_EXCEPTIONS_KEY</a></span></code>
<div class="block">Alias to the <code>..._SNAKE_CASE</code> variation due to backward compatibility constraints.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>static java.lang.String</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../freemarker/core/Configurable.html#LOG_TEMPLATE_EXCEPTIONS_KEY_CAMEL_CASE">LOG_TEMPLATE_EXCEPTIONS_KEY_CAMEL_CASE</a></span></code>
<div class="block">Modern, camel case (<code>likeThis</code>) variation of the setting name.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>static java.lang.String</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../freemarker/core/Configurable.html#LOG_TEMPLATE_EXCEPTIONS_KEY_SNAKE_CASE">LOG_TEMPLATE_EXCEPTIONS_KEY_SNAKE_CASE</a></span></code>
<div class="block">Legacy, snake case (<code>like_this</code>) variation of the setting name.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>static java.lang.String</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../freemarker/core/Configurable.html#NEW_BUILTIN_CLASS_RESOLVER_KEY">NEW_BUILTIN_CLASS_RESOLVER_KEY</a></span></code>
<div class="block">Alias to the <code>..._SNAKE_CASE</code> variation due to backward compatibility constraints.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>static java.lang.String</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../freemarker/core/Configurable.html#NEW_BUILTIN_CLASS_RESOLVER_KEY_CAMEL_CASE">NEW_BUILTIN_CLASS_RESOLVER_KEY_CAMEL_CASE</a></span></code>
<div class="block">Modern, camel case (<code>likeThis</code>) variation of the setting name.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>static java.lang.String</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../freemarker/core/Configurable.html#NEW_BUILTIN_CLASS_RESOLVER_KEY_SNAKE_CASE">NEW_BUILTIN_CLASS_RESOLVER_KEY_SNAKE_CASE</a></span></code>
<div class="block">Legacy, snake case (<code>like_this</code>) variation of the setting name.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>static java.lang.String</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../freemarker/core/Configurable.html#NUMBER_FORMAT_KEY">NUMBER_FORMAT_KEY</a></span></code>
<div class="block">Alias to the <code>..._SNAKE_CASE</code> variation due to backward compatibility constraints.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>static java.lang.String</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../freemarker/core/Configurable.html#NUMBER_FORMAT_KEY_CAMEL_CASE">NUMBER_FORMAT_KEY_CAMEL_CASE</a></span></code>
<div class="block">Modern, camel case (<code>likeThis</code>) variation of the setting name.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>static java.lang.String</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../freemarker/core/Configurable.html#NUMBER_FORMAT_KEY_SNAKE_CASE">NUMBER_FORMAT_KEY_SNAKE_CASE</a></span></code>
<div class="block">Legacy, snake case (<code>like_this</code>) variation of the setting name.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>static java.lang.String</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../freemarker/core/Configurable.html#OBJECT_WRAPPER_KEY">OBJECT_WRAPPER_KEY</a></span></code>
<div class="block">Alias to the <code>..._SNAKE_CASE</code> variation due to backward compatibility constraints.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>static java.lang.String</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../freemarker/core/Configurable.html#OBJECT_WRAPPER_KEY_CAMEL_CASE">OBJECT_WRAPPER_KEY_CAMEL_CASE</a></span></code>
<div class="block">Modern, camel case (<code>likeThis</code>) variation of the setting name.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>static java.lang.String</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../freemarker/core/Configurable.html#OBJECT_WRAPPER_KEY_SNAKE_CASE">OBJECT_WRAPPER_KEY_SNAKE_CASE</a></span></code>
<div class="block">Legacy, snake case (<code>like_this</code>) variation of the setting name.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>static java.lang.String</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../freemarker/core/Configurable.html#OUTPUT_ENCODING_KEY">OUTPUT_ENCODING_KEY</a></span></code>
<div class="block">Alias to the <code>..._SNAKE_CASE</code> variation due to backward compatibility constraints.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>static java.lang.String</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../freemarker/core/Configurable.html#OUTPUT_ENCODING_KEY_CAMEL_CASE">OUTPUT_ENCODING_KEY_CAMEL_CASE</a></span></code>
<div class="block">Modern, camel case (<code>likeThis</code>) variation of the setting name.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>static java.lang.String</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../freemarker/core/Configurable.html#OUTPUT_ENCODING_KEY_SNAKE_CASE">OUTPUT_ENCODING_KEY_SNAKE_CASE</a></span></code>
<div class="block">Legacy, snake case (<code>like_this</code>) variation of the setting name.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>static java.lang.String</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../freemarker/core/Configurable.html#SHOW_ERROR_TIPS_KEY">SHOW_ERROR_TIPS_KEY</a></span></code>
<div class="block">Alias to the <code>..._SNAKE_CASE</code> variation due to backward compatibility constraints.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>static java.lang.String</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../freemarker/core/Configurable.html#SHOW_ERROR_TIPS_KEY_CAMEL_CASE">SHOW_ERROR_TIPS_KEY_CAMEL_CASE</a></span></code>
<div class="block">Modern, camel case (<code>likeThis</code>) variation of the setting name.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>static java.lang.String</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../freemarker/core/Configurable.html#SHOW_ERROR_TIPS_KEY_SNAKE_CASE">SHOW_ERROR_TIPS_KEY_SNAKE_CASE</a></span></code>
<div class="block">Legacy, snake case (<code>like_this</code>) variation of the setting name.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>static java.lang.String</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../freemarker/core/Configurable.html#SQL_DATE_AND_TIME_TIME_ZONE_KEY">SQL_DATE_AND_TIME_TIME_ZONE_KEY</a></span></code>
<div class="block">Alias to the <code>..._SNAKE_CASE</code> variation due to backward compatibility constraints.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>static java.lang.String</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../freemarker/core/Configurable.html#SQL_DATE_AND_TIME_TIME_ZONE_KEY_CAMEL_CASE">SQL_DATE_AND_TIME_TIME_ZONE_KEY_CAMEL_CASE</a></span></code>
<div class="block">Modern, camel case (<code>likeThis</code>) variation of the setting name.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>static java.lang.String</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../freemarker/core/Configurable.html#SQL_DATE_AND_TIME_TIME_ZONE_KEY_SNAKE_CASE">SQL_DATE_AND_TIME_TIME_ZONE_KEY_SNAKE_CASE</a></span></code>
<div class="block">Legacy, snake case (<code>like_this</code>) variation of the setting name.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>static java.lang.String</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../freemarker/core/Configurable.html#STRICT_BEAN_MODELS">STRICT_BEAN_MODELS</a></span></code>
<div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;
<div class="block"><span class="deprecationComment">Use <a href="../../freemarker/core/Configurable.html#STRICT_BEAN_MODELS_KEY"><code>STRICT_BEAN_MODELS_KEY</code></a> instead.</span></div>
</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>static java.lang.String</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../freemarker/core/Configurable.html#STRICT_BEAN_MODELS_KEY">STRICT_BEAN_MODELS_KEY</a></span></code>
<div class="block">Alias to the <code>..._SNAKE_CASE</code> variation due to backward compatibility constraints.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>static java.lang.String</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../freemarker/core/Configurable.html#STRICT_BEAN_MODELS_KEY_CAMEL_CASE">STRICT_BEAN_MODELS_KEY_CAMEL_CASE</a></span></code>
<div class="block">Modern, camel case (<code>likeThis</code>) variation of the setting name.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>static java.lang.String</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../freemarker/core/Configurable.html#STRICT_BEAN_MODELS_KEY_SNAKE_CASE">STRICT_BEAN_MODELS_KEY_SNAKE_CASE</a></span></code>
<div class="block">Legacy, snake case (<code>like_this</code>) variation of the setting name.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>static java.lang.String</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../freemarker/core/Configurable.html#TEMPLATE_EXCEPTION_HANDLER_KEY">TEMPLATE_EXCEPTION_HANDLER_KEY</a></span></code>
<div class="block">Alias to the <code>..._SNAKE_CASE</code> variation due to backward compatibility constraints.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>static java.lang.String</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../freemarker/core/Configurable.html#TEMPLATE_EXCEPTION_HANDLER_KEY_CAMEL_CASE">TEMPLATE_EXCEPTION_HANDLER_KEY_CAMEL_CASE</a></span></code>
<div class="block">Modern, camel case (<code>likeThis</code>) variation of the setting name.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>static java.lang.String</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../freemarker/core/Configurable.html#TEMPLATE_EXCEPTION_HANDLER_KEY_SNAKE_CASE">TEMPLATE_EXCEPTION_HANDLER_KEY_SNAKE_CASE</a></span></code>
<div class="block">Legacy, snake case (<code>like_this</code>) variation of the setting name.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>static java.lang.String</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../freemarker/core/Configurable.html#TIME_FORMAT_KEY">TIME_FORMAT_KEY</a></span></code>
<div class="block">Alias to the <code>..._SNAKE_CASE</code> variation due to backward compatibility constraints.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>static java.lang.String</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../freemarker/core/Configurable.html#TIME_FORMAT_KEY_CAMEL_CASE">TIME_FORMAT_KEY_CAMEL_CASE</a></span></code>
<div class="block">Modern, camel case (<code>likeThis</code>) variation of the setting name.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>static java.lang.String</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../freemarker/core/Configurable.html#TIME_FORMAT_KEY_SNAKE_CASE">TIME_FORMAT_KEY_SNAKE_CASE</a></span></code>
<div class="block">Legacy, snake case (<code>like_this</code>) variation of the setting name.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>static java.lang.String</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../freemarker/core/Configurable.html#TIME_ZONE_KEY">TIME_ZONE_KEY</a></span></code>
<div class="block">Alias to the <code>..._SNAKE_CASE</code> variation due to backward compatibility constraints.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>static java.lang.String</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../freemarker/core/Configurable.html#TIME_ZONE_KEY_CAMEL_CASE">TIME_ZONE_KEY_CAMEL_CASE</a></span></code>
<div class="block">Modern, camel case (<code>likeThis</code>) variation of the setting name.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>static java.lang.String</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../freemarker/core/Configurable.html#TIME_ZONE_KEY_SNAKE_CASE">TIME_ZONE_KEY_SNAKE_CASE</a></span></code>
<div class="block">Legacy, snake case (<code>like_this</code>) variation of the setting name.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>static java.lang.String</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../freemarker/core/Configurable.html#TRUNCATE_BUILTIN_ALGORITHM_KEY">TRUNCATE_BUILTIN_ALGORITHM_KEY</a></span></code>
<div class="block">Alias to the <code>..._SNAKE_CASE</code> variation due to backward compatibility constraints.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>static java.lang.String</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../freemarker/core/Configurable.html#TRUNCATE_BUILTIN_ALGORITHM_KEY_CAMEL_CASE">TRUNCATE_BUILTIN_ALGORITHM_KEY_CAMEL_CASE</a></span></code>
<div class="block">Modern, camel case (<code>likeThis</code>) variation of the setting name.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>static java.lang.String</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../freemarker/core/Configurable.html#TRUNCATE_BUILTIN_ALGORITHM_KEY_SNAKE_CASE">TRUNCATE_BUILTIN_ALGORITHM_KEY_SNAKE_CASE</a></span></code>
<div class="block">Legacy, snake case (<code>like_this</code>) variation of the setting name.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>static java.lang.String</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../freemarker/core/Configurable.html#URL_ESCAPING_CHARSET_KEY">URL_ESCAPING_CHARSET_KEY</a></span></code>
<div class="block">Alias to the <code>..._SNAKE_CASE</code> variation due to backward compatibility constraints.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>static java.lang.String</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../freemarker/core/Configurable.html#URL_ESCAPING_CHARSET_KEY_CAMEL_CASE">URL_ESCAPING_CHARSET_KEY_CAMEL_CASE</a></span></code>
<div class="block">Modern, camel case (<code>likeThis</code>) variation of the setting name.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>static java.lang.String</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../freemarker/core/Configurable.html#URL_ESCAPING_CHARSET_KEY_SNAKE_CASE">URL_ESCAPING_CHARSET_KEY_SNAKE_CASE</a></span></code>
<div class="block">Legacy, snake case (<code>like_this</code>) variation of the setting name.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>static java.lang.String</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../freemarker/core/Configurable.html#WRAP_UNCHECKED_EXCEPTIONS_KEY">WRAP_UNCHECKED_EXCEPTIONS_KEY</a></span></code>
<div class="block">Alias to the <code>..._SNAKE_CASE</code> variation due to backward compatibility constraints.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>static java.lang.String</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../freemarker/core/Configurable.html#WRAP_UNCHECKED_EXCEPTIONS_KEY_CAMEL_CASE">WRAP_UNCHECKED_EXCEPTIONS_KEY_CAMEL_CASE</a></span></code>
<div class="block">Modern, camel case (<code>likeThis</code>) variation of the setting name.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>static java.lang.String</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../freemarker/core/Configurable.html#WRAP_UNCHECKED_EXCEPTIONS_KEY_SNAKE_CASE">WRAP_UNCHECKED_EXCEPTIONS_KEY_SNAKE_CASE</a></span></code>
<div class="block">Legacy, snake case (<code>like_this</code>) variation of the setting name.</div>
</td>
</tr>
</table>
</li>
</ul>
<!-- ======== CONSTRUCTOR SUMMARY ======== -->
<ul class="blockList">
<li class="blockList"><a name="constructor.summary">
<!--   -->
</a>
<h3>Constructor Summary</h3>
<table class="memberSummary" border="0" cellpadding="3" cellspacing="0" summary="Constructor Summary table, listing constructors, and an explanation">
<caption><span>Constructors</span><span class="tabEnd">&nbsp;</span></caption>
<tr>
<th class="colFirst" scope="col">Modifier</th>
<th class="colLast" scope="col">Constructor and Description</th>
</tr>
<tr class="altColor">
<td class="colFirst"><code>&nbsp;</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../freemarker/core/Configurable.html#Configurable--">Configurable</a></span>()</code>
<div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;
<div class="block"><span class="deprecationComment">This shouldn't even be public; don't use it.</span></div>
</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>&nbsp;</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../freemarker/core/Configurable.html#Configurable-freemarker.core.Configurable-">Configurable</a></span>(<a href="../../freemarker/core/Configurable.html" title="class in freemarker.core">Configurable</a>&nbsp;parent)</code>
<div class="block">Creates a new instance.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>protected </code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../freemarker/core/Configurable.html#Configurable-freemarker.template.Version-">Configurable</a></span>(<a href="../../freemarker/template/Version.html" title="class in freemarker.template">Version</a>&nbsp;incompatibleImprovements)</code>
<div class="block">Intended to be called from inside FreeMarker only.</div>
</td>
</tr>
</table>
</li>
</ul>
<!-- ========== METHOD SUMMARY =========== -->
<ul class="blockList">
<li class="blockList"><a name="method.summary">
<!--   -->
</a>
<h3>Method Summary</h3>
<table class="memberSummary" border="0" cellpadding="3" cellspacing="0" summary="Method Summary table, listing methods, and an explanation">
<caption><span id="t0" class="activeTableTab"><span>All Methods</span><span class="tabEnd">&nbsp;</span></span><span id="t2" class="tableTab"><span><a href="javascript:show(2);">Instance Methods</a></span><span class="tabEnd">&nbsp;</span></span><span id="t4" class="tableTab"><span><a href="javascript:show(8);">Concrete Methods</a></span><span class="tabEnd">&nbsp;</span></span><span id="t6" class="tableTab"><span><a href="javascript:show(32);">Deprecated Methods</a></span><span class="tabEnd">&nbsp;</span></span></caption>
<tr>
<th class="colFirst" scope="col">Modifier and Type</th>
<th class="colLast" scope="col">Method and Description</th>
</tr>
<tr id="i0" class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../freemarker/core/Configurable.html#addAutoImport-java.lang.String-java.lang.String-">addAutoImport</a></span>(java.lang.String&nbsp;namespaceVarName,
             java.lang.String&nbsp;templateName)</code>
<div class="block">Adds an invisible <code>#import <i>templateName</i> as <i>namespaceVarName</i></code> at the beginning of the
 main template (that's the top-level template that wasn't included/imported from another template).</div>
</td>
</tr>
<tr id="i1" class="rowColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../freemarker/core/Configurable.html#addAutoInclude-java.lang.String-">addAutoInclude</a></span>(java.lang.String&nbsp;templateName)</code>
<div class="block">Adds an invisible <code>#include <i>templateName</i></code> at the beginning of the main template (that's the
 top-level template that wasn't included/imported from another template).</div>
</td>
</tr>
<tr id="i2" class="altColor">
<td class="colFirst"><code>protected java.lang.Object</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../freemarker/core/Configurable.html#clone--">clone</a></span>()</code>&nbsp;</td>
</tr>
<tr id="i3" class="rowColor">
<td class="colFirst"><code>protected void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../freemarker/core/Configurable.html#doAutoImportsAndIncludes-freemarker.core.Environment-">doAutoImportsAndIncludes</a></span>(<a href="../../freemarker/core/Environment.html" title="class in freemarker.core">Environment</a>&nbsp;env)</code>
<div class="block">Executes the auto-imports and auto-includes for the main template of this environment.</div>
</td>
</tr>
<tr id="i4" class="altColor">
<td class="colFirst"><code><a href="../../freemarker/core/ArithmeticEngine.html" title="class in freemarker.core">ArithmeticEngine</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../freemarker/core/Configurable.html#getArithmeticEngine--">getArithmeticEngine</a></span>()</code>
<div class="block">The getter pair of <a href="../../freemarker/core/Configurable.html#setArithmeticEngine-freemarker.core.ArithmeticEngine-"><code>setArithmeticEngine(ArithmeticEngine)</code></a>.</div>
</td>
</tr>
<tr id="i5" class="rowColor">
<td class="colFirst"><code><a href="../../freemarker/template/AttemptExceptionReporter.html" title="interface in freemarker.template">AttemptExceptionReporter</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../freemarker/core/Configurable.html#getAttemptExceptionReporter--">getAttemptExceptionReporter</a></span>()</code>
<div class="block">The getter pair of <a href="../../freemarker/core/Configurable.html#setAttemptExceptionReporter-freemarker.template.AttemptExceptionReporter-"><code>setAttemptExceptionReporter(AttemptExceptionReporter)</code></a>.</div>
</td>
</tr>
<tr id="i6" class="altColor">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../freemarker/core/Configurable.html#getAutoFlush--">getAutoFlush</a></span>()</code>
<div class="block">See <a href="../../freemarker/core/Configurable.html#setAutoFlush-boolean-"><code>setAutoFlush(boolean)</code></a></div>
</td>
</tr>
<tr id="i7" class="rowColor">
<td class="colFirst"><code>java.util.Map&lt;java.lang.String,java.lang.String&gt;</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../freemarker/core/Configurable.html#getAutoImports--">getAutoImports</a></span>()</code>
<div class="block">Getter pair of <a href="../../freemarker/core/Configurable.html#setAutoImports-java.util.Map-"><code>setAutoImports(Map)</code></a>; do not modify the returned <code>Map</code>! To be consistent with other
 setting getters, if this setting was set directly on this <a href="../../freemarker/core/Configurable.html" title="class in freemarker.core"><code>Configurable</code></a> object, this simply returns that
 value, otherwise it returns the value from the parent <a href="../../freemarker/core/Configurable.html" title="class in freemarker.core"><code>Configurable</code></a>.</div>
</td>
</tr>
<tr id="i8" class="altColor">
<td class="colFirst"><code>java.util.Map&lt;java.lang.String,java.lang.String&gt;</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../freemarker/core/Configurable.html#getAutoImportsWithoutFallback--">getAutoImportsWithoutFallback</a></span>()</code>
<div class="block">Like <a href="../../freemarker/core/Configurable.html#getAutoImports--"><code>getAutoImports()</code></a>, but doesn't fall back to the parent <a href="../../freemarker/core/Configurable.html" title="class in freemarker.core"><code>Configurable</code></a> (and so it can be
 <code>null</code>).</div>
</td>
</tr>
<tr id="i9" class="rowColor">
<td class="colFirst"><code>java.util.List&lt;java.lang.String&gt;</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../freemarker/core/Configurable.html#getAutoIncludes--">getAutoIncludes</a></span>()</code>
<div class="block">Getter pair of <a href="../../freemarker/core/Configurable.html#setAutoIncludes-java.util.List-"><code>setAutoIncludes(List)</code></a>; do not modify the returned <code>List</code>! To be consistent with
 other setting getters, if this setting was set directly on this <a href="../../freemarker/core/Configurable.html" title="class in freemarker.core"><code>Configurable</code></a> object, this simply returns
 that value, otherwise it returns the value from the parent <a href="../../freemarker/core/Configurable.html" title="class in freemarker.core"><code>Configurable</code></a>.</div>
</td>
</tr>
<tr id="i10" class="altColor">
<td class="colFirst"><code>java.util.List&lt;java.lang.String&gt;</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../freemarker/core/Configurable.html#getAutoIncludesWithoutFallback--">getAutoIncludesWithoutFallback</a></span>()</code>
<div class="block">Like <a href="../../freemarker/core/Configurable.html#getAutoIncludes--"><code>getAutoIncludes()</code></a>, but doesn't fall back to the parent <a href="../../freemarker/core/Configurable.html" title="class in freemarker.core"><code>Configurable</code></a> (and so it can be
 <code>null</code>).</div>
</td>
</tr>
<tr id="i11" class="rowColor">
<td class="colFirst"><code>java.lang.String</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../freemarker/core/Configurable.html#getBooleanFormat--">getBooleanFormat</a></span>()</code>
<div class="block">The getter pair of <a href="../../freemarker/core/Configurable.html#setBooleanFormat-java.lang.String-"><code>setBooleanFormat(String)</code></a>.</div>
</td>
</tr>
<tr id="i12" class="altColor">
<td class="colFirst"><code><a href="../../freemarker/core/CFormat.html" title="class in freemarker.core">CFormat</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../freemarker/core/Configurable.html#getCFormat--">getCFormat</a></span>()</code>
<div class="block">Getter pair of <a href="../../freemarker/core/Configurable.html#setCFormat-freemarker.core.CFormat-"><code>setCFormat(CFormat)</code></a>.</div>
</td>
</tr>
<tr id="i13" class="rowColor">
<td class="colFirst"><code>int</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../freemarker/core/Configurable.html#getClassicCompatibleAsInt--">getClassicCompatibleAsInt</a></span>()</code>&nbsp;</td>
</tr>
<tr id="i14" class="altColor">
<td class="colFirst"><code>protected java.lang.String</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../freemarker/core/Configurable.html#getCorrectedNameForUnknownSetting-java.lang.String-">getCorrectedNameForUnknownSetting</a></span>(java.lang.String&nbsp;name)</code>&nbsp;</td>
</tr>
<tr id="i15" class="rowColor">
<td class="colFirst"><code>java.lang.Object</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../freemarker/core/Configurable.html#getCustomAttribute-java.lang.String-">getCustomAttribute</a></span>(java.lang.String&nbsp;name)</code>
<div class="block">Retrieves a named custom attribute for this configurable.</div>
</td>
</tr>
<tr id="i16" class="altColor">
<td class="colFirst"><code>java.lang.String[]</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../freemarker/core/Configurable.html#getCustomAttributeNames--">getCustomAttributeNames</a></span>()</code>
<div class="block">Returns an array with names of all custom attributes defined directly 
 on this configurable.</div>
</td>
</tr>
<tr id="i17" class="rowColor">
<td class="colFirst"><code><a href="../../freemarker/core/TemplateDateFormatFactory.html" title="class in freemarker.core">TemplateDateFormatFactory</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../freemarker/core/Configurable.html#getCustomDateFormat-java.lang.String-">getCustomDateFormat</a></span>(java.lang.String&nbsp;name)</code>
<div class="block">Gets the custom name format registered for the name.</div>
</td>
</tr>
<tr id="i18" class="altColor">
<td class="colFirst"><code>java.util.Map&lt;java.lang.String,? extends <a href="../../freemarker/core/TemplateDateFormatFactory.html" title="class in freemarker.core">TemplateDateFormatFactory</a>&gt;</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../freemarker/core/Configurable.html#getCustomDateFormats--">getCustomDateFormats</a></span>()</code>
<div class="block">Getter pair of <a href="../../freemarker/core/Configurable.html#setCustomDateFormats-java.util.Map-"><code>setCustomDateFormats(Map)</code></a>; do not modify the returned <code>Map</code>! To be consistent with
 other setting getters, if this setting was set directly on this <a href="../../freemarker/core/Configurable.html" title="class in freemarker.core"><code>Configurable</code></a> object, this simply returns
 that value, otherwise it returns the value from the parent <a href="../../freemarker/core/Configurable.html" title="class in freemarker.core"><code>Configurable</code></a>.</div>
</td>
</tr>
<tr id="i19" class="rowColor">
<td class="colFirst"><code>java.util.Map&lt;java.lang.String,? extends <a href="../../freemarker/core/TemplateDateFormatFactory.html" title="class in freemarker.core">TemplateDateFormatFactory</a>&gt;</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../freemarker/core/Configurable.html#getCustomDateFormatsWithoutFallback--">getCustomDateFormatsWithoutFallback</a></span>()</code>
<div class="block">Like <a href="../../freemarker/core/Configurable.html#getCustomDateFormats--"><code>getCustomDateFormats()</code></a>, but doesn't fall back to the parent <a href="../../freemarker/core/Configurable.html" title="class in freemarker.core"><code>Configurable</code></a>, nor does it
 provide a non-<code>null</code> default when called as the method of a <a href="../../freemarker/template/Configuration.html" title="class in freemarker.template"><code>Configuration</code></a>.</div>
</td>
</tr>
<tr id="i20" class="altColor">
<td class="colFirst"><code><a href="../../freemarker/core/TemplateNumberFormatFactory.html" title="class in freemarker.core">TemplateNumberFormatFactory</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../freemarker/core/Configurable.html#getCustomNumberFormat-java.lang.String-">getCustomNumberFormat</a></span>(java.lang.String&nbsp;name)</code>
<div class="block">Gets the custom name format registered for the name.</div>
</td>
</tr>
<tr id="i21" class="rowColor">
<td class="colFirst"><code>java.util.Map&lt;java.lang.String,? extends <a href="../../freemarker/core/TemplateNumberFormatFactory.html" title="class in freemarker.core">TemplateNumberFormatFactory</a>&gt;</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../freemarker/core/Configurable.html#getCustomNumberFormats--">getCustomNumberFormats</a></span>()</code>
<div class="block">Getter pair of <a href="../../freemarker/core/Configurable.html#setCustomNumberFormats-java.util.Map-"><code>setCustomNumberFormats(Map)</code></a>; do not modify the returned <code>Map</code>! To be consistent
 with other setting getters, if this setting was set directly on this <a href="../../freemarker/core/Configurable.html" title="class in freemarker.core"><code>Configurable</code></a> object, this simply
 returns that value, otherwise it returns the value from the parent <a href="../../freemarker/core/Configurable.html" title="class in freemarker.core"><code>Configurable</code></a>.</div>
</td>
</tr>
<tr id="i22" class="altColor">
<td class="colFirst"><code>java.util.Map&lt;java.lang.String,? extends <a href="../../freemarker/core/TemplateNumberFormatFactory.html" title="class in freemarker.core">TemplateNumberFormatFactory</a>&gt;</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../freemarker/core/Configurable.html#getCustomNumberFormatsWithoutFallback--">getCustomNumberFormatsWithoutFallback</a></span>()</code>
<div class="block">Like <a href="../../freemarker/core/Configurable.html#getCustomNumberFormats--"><code>getCustomNumberFormats()</code></a>, but doesn't fall back to the parent <a href="../../freemarker/core/Configurable.html" title="class in freemarker.core"><code>Configurable</code></a>.</div>
</td>
</tr>
<tr id="i23" class="rowColor">
<td class="colFirst"><code>java.lang.String</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../freemarker/core/Configurable.html#getDateFormat--">getDateFormat</a></span>()</code>
<div class="block">The getter pair of <a href="../../freemarker/core/Configurable.html#setDateFormat-java.lang.String-"><code>setDateFormat(String)</code></a>.</div>
</td>
</tr>
<tr id="i24" class="altColor">
<td class="colFirst"><code>java.lang.String</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../freemarker/core/Configurable.html#getDateTimeFormat--">getDateTimeFormat</a></span>()</code>
<div class="block">The getter pair of <a href="../../freemarker/core/Configurable.html#setDateTimeFormat-java.lang.String-"><code>setDateTimeFormat(String)</code></a>.</div>
</td>
</tr>
<tr id="i25" class="rowColor">
<td class="colFirst"><code>protected <a href="../../freemarker/core/Environment.html" title="class in freemarker.core">Environment</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../freemarker/core/Configurable.html#getEnvironment--">getEnvironment</a></span>()</code>&nbsp;</td>
</tr>
<tr id="i26" class="altColor">
<td class="colFirst"><code>java.lang.Boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../freemarker/core/Configurable.html#getLazyAutoImports--">getLazyAutoImports</a></span>()</code>
<div class="block">The getter pair of <a href="../../freemarker/core/Configurable.html#setLazyAutoImports-java.lang.Boolean-"><code>setLazyAutoImports(Boolean)</code></a>.</div>
</td>
</tr>
<tr id="i27" class="rowColor">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../freemarker/core/Configurable.html#getLazyImports--">getLazyImports</a></span>()</code>
<div class="block">The getter pair of <a href="../../freemarker/core/Configurable.html#setLazyImports-boolean-"><code>setLazyImports(boolean)</code></a>.</div>
</td>
</tr>
<tr id="i28" class="altColor">
<td class="colFirst"><code>java.util.Locale</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../freemarker/core/Configurable.html#getLocale--">getLocale</a></span>()</code>
<div class="block">Getter pair of <a href="../../freemarker/core/Configurable.html#setLocale-java.util.Locale-"><code>setLocale(Locale)</code></a>.</div>
</td>
</tr>
<tr id="i29" class="rowColor">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../freemarker/core/Configurable.html#getLogTemplateExceptions--">getLogTemplateExceptions</a></span>()</code>
<div class="block">See <a href="../../freemarker/core/Configurable.html#setLogTemplateExceptions-boolean-"><code>setLogTemplateExceptions(boolean)</code></a></div>
</td>
</tr>
<tr id="i30" class="altColor">
<td class="colFirst"><code><a href="../../freemarker/core/TemplateClassResolver.html" title="interface in freemarker.core">TemplateClassResolver</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../freemarker/core/Configurable.html#getNewBuiltinClassResolver--">getNewBuiltinClassResolver</a></span>()</code>
<div class="block">Retrieves the <a href="../../freemarker/core/TemplateClassResolver.html" title="interface in freemarker.core"><code>TemplateClassResolver</code></a> used
 to resolve classes when "SomeClassName"?new is called in a template.</div>
</td>
</tr>
<tr id="i31" class="rowColor">
<td class="colFirst"><code>java.lang.String</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../freemarker/core/Configurable.html#getNumberFormat--">getNumberFormat</a></span>()</code>
<div class="block">Getter pair of <a href="../../freemarker/core/Configurable.html#setNumberFormat-java.lang.String-"><code>setNumberFormat(String)</code></a>.</div>
</td>
</tr>
<tr id="i32" class="altColor">
<td class="colFirst"><code><a href="../../freemarker/template/ObjectWrapper.html" title="interface in freemarker.template">ObjectWrapper</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../freemarker/core/Configurable.html#getObjectWrapper--">getObjectWrapper</a></span>()</code>
<div class="block">The getter pair of <a href="../../freemarker/core/Configurable.html#setObjectWrapper-freemarker.template.ObjectWrapper-"><code>setObjectWrapper(ObjectWrapper)</code></a>.</div>
</td>
</tr>
<tr id="i33" class="rowColor">
<td class="colFirst"><code>java.lang.String</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../freemarker/core/Configurable.html#getOutputEncoding--">getOutputEncoding</a></span>()</code>
<div class="block">Getter pair of <a href="../../freemarker/core/Configurable.html#setOutputEncoding-java.lang.String-"><code>setOutputEncoding(String)</code></a>.</div>
</td>
</tr>
<tr id="i34" class="altColor">
<td class="colFirst"><code><a href="../../freemarker/core/Configurable.html" title="class in freemarker.core">Configurable</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../freemarker/core/Configurable.html#getParent--">getParent</a></span>()</code>
<div class="block">Returns the parent <a href="../../freemarker/core/Configurable.html" title="class in freemarker.core"><code>Configurable</code></a> object of this object.</div>
</td>
</tr>
<tr id="i35" class="rowColor">
<td class="colFirst"><code>java.lang.String</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../freemarker/core/Configurable.html#getSetting-java.lang.String-">getSetting</a></span>(java.lang.String&nbsp;key)</code>
<div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;
<div class="block"><span class="deprecationComment">It's not possible in general to convert setting values to string,
     and thus it's impossible to ensure that <a href="../../freemarker/core/Configurable.html#setSetting-java.lang.String-java.lang.String-"><code>setSetting(String, String)</code></a> will work with
     the returned value correctly.</span></div>
</div>
</td>
</tr>
<tr id="i36" class="altColor">
<td class="colFirst"><code>java.util.Set&lt;java.lang.String&gt;</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../freemarker/core/Configurable.html#getSettingNames-boolean-">getSettingNames</a></span>(boolean&nbsp;camelCase)</code>
<div class="block">Returns the valid setting names that aren't <a href="../../freemarker/template/Configuration.html" title="class in freemarker.template"><code>Configuration</code></a>-only.</div>
</td>
</tr>
<tr id="i37" class="rowColor">
<td class="colFirst"><code>java.util.Map</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../freemarker/core/Configurable.html#getSettings--">getSettings</a></span>()</code>
<div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;
<div class="block"><span class="deprecationComment">This method was always defective, and certainly it always
     will be. Don't use it. (Simply, it's hardly possible in general to
     convert setting values to text in a way that ensures that
     <a href="../../freemarker/core/Configurable.html#setSettings-java.util.Properties-"><code>setSettings(Properties)</code></a> will work with them correctly.)</span></div>
</div>
</td>
</tr>
<tr id="i38" class="altColor">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../freemarker/core/Configurable.html#getShowErrorTips--">getShowErrorTips</a></span>()</code>
<div class="block">See <a href="../../freemarker/core/Configurable.html#setShowErrorTips-boolean-"><code>setShowErrorTips(boolean)</code></a></div>
</td>
</tr>
<tr id="i39" class="rowColor">
<td class="colFirst"><code>java.util.TimeZone</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../freemarker/core/Configurable.html#getSQLDateAndTimeTimeZone--">getSQLDateAndTimeTimeZone</a></span>()</code>
<div class="block">The getter pair of <a href="../../freemarker/core/Configurable.html#setSQLDateAndTimeTimeZone-java.util.TimeZone-"><code>setSQLDateAndTimeTimeZone(TimeZone)</code></a>.</div>
</td>
</tr>
<tr id="i40" class="altColor">
<td class="colFirst"><code><a href="../../freemarker/template/TemplateExceptionHandler.html" title="interface in freemarker.template">TemplateExceptionHandler</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../freemarker/core/Configurable.html#getTemplateExceptionHandler--">getTemplateExceptionHandler</a></span>()</code>
<div class="block">The getter pair of <a href="../../freemarker/core/Configurable.html#setTemplateExceptionHandler-freemarker.template.TemplateExceptionHandler-"><code>setTemplateExceptionHandler(TemplateExceptionHandler)</code></a>.</div>
</td>
</tr>
<tr id="i41" class="rowColor">
<td class="colFirst"><code>java.lang.String</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../freemarker/core/Configurable.html#getTimeFormat--">getTimeFormat</a></span>()</code>
<div class="block">The getter pair of <a href="../../freemarker/core/Configurable.html#setTimeFormat-java.lang.String-"><code>setTimeFormat(String)</code></a>.</div>
</td>
</tr>
<tr id="i42" class="altColor">
<td class="colFirst"><code>java.util.TimeZone</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../freemarker/core/Configurable.html#getTimeZone--">getTimeZone</a></span>()</code>
<div class="block">The getter pair of <a href="../../freemarker/core/Configurable.html#setTimeZone-java.util.TimeZone-"><code>setTimeZone(TimeZone)</code></a>.</div>
</td>
</tr>
<tr id="i43" class="rowColor">
<td class="colFirst"><code><a href="../../freemarker/core/TruncateBuiltinAlgorithm.html" title="class in freemarker.core">TruncateBuiltinAlgorithm</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../freemarker/core/Configurable.html#getTruncateBuiltinAlgorithm--">getTruncateBuiltinAlgorithm</a></span>()</code>
<div class="block">See <a href="../../freemarker/core/Configurable.html#setTruncateBuiltinAlgorithm-freemarker.core.TruncateBuiltinAlgorithm-"><code>setTruncateBuiltinAlgorithm(TruncateBuiltinAlgorithm)</code></a></div>
</td>
</tr>
<tr id="i44" class="altColor">
<td class="colFirst"><code>java.lang.String</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../freemarker/core/Configurable.html#getURLEscapingCharset--">getURLEscapingCharset</a></span>()</code>&nbsp;</td>
</tr>
<tr id="i45" class="rowColor">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../freemarker/core/Configurable.html#getWrapUncheckedExceptions--">getWrapUncheckedExceptions</a></span>()</code>
<div class="block">The getter pair of <a href="../../freemarker/core/Configurable.html#setWrapUncheckedExceptions-boolean-"><code>setWrapUncheckedExceptions(boolean)</code></a>.</div>
</td>
</tr>
<tr id="i46" class="altColor">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../freemarker/core/Configurable.html#hasCustomFormats--">hasCustomFormats</a></span>()</code>
<div class="block">Tells if this configurable object or its parent defines any custom formats.</div>
</td>
</tr>
<tr id="i47" class="rowColor">
<td class="colFirst"><code>protected <a href="../../freemarker/template/TemplateException.html" title="class in freemarker.template">TemplateException</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../freemarker/core/Configurable.html#invalidSettingValueException-java.lang.String-java.lang.String-">invalidSettingValueException</a></span>(java.lang.String&nbsp;name,
                            java.lang.String&nbsp;value)</code>&nbsp;</td>
</tr>
<tr id="i48" class="altColor">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../freemarker/core/Configurable.html#isAPIBuiltinEnabled--">isAPIBuiltinEnabled</a></span>()</code>
<div class="block">See <a href="../../freemarker/core/Configurable.html#setAPIBuiltinEnabled-boolean-"><code>setAPIBuiltinEnabled(boolean)</code></a></div>
</td>
</tr>
<tr id="i49" class="rowColor">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../freemarker/core/Configurable.html#isAPIBuiltinEnabledSet--">isAPIBuiltinEnabledSet</a></span>()</code>
<div class="block">Tells if this setting is set directly in this object or its value is coming from the <a href="../../freemarker/core/Configurable.html#getParent--"><code>parent</code></a>.</div>
</td>
</tr>
<tr id="i50" class="altColor">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../freemarker/core/Configurable.html#isArithmeticEngineSet--">isArithmeticEngineSet</a></span>()</code>
<div class="block">Tells if this setting is set directly in this object or its value is coming from the <a href="../../freemarker/core/Configurable.html#getParent--"><code>parent</code></a>.</div>
</td>
</tr>
<tr id="i51" class="rowColor">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../freemarker/core/Configurable.html#isAttemptExceptionReporterSet--">isAttemptExceptionReporterSet</a></span>()</code>
<div class="block">Tells if this setting is set directly in this object or its value is coming from the <a href="../../freemarker/core/Configurable.html#getParent--"><code>parent</code></a>.</div>
</td>
</tr>
<tr id="i52" class="altColor">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../freemarker/core/Configurable.html#isAutoFlushSet--">isAutoFlushSet</a></span>()</code>
<div class="block">Tells if this setting is set directly in this object or its value is coming from the <a href="../../freemarker/core/Configurable.html#getParent--"><code>parent</code></a>.</div>
</td>
</tr>
<tr id="i53" class="rowColor">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../freemarker/core/Configurable.html#isAutoImportsSet--">isAutoImportsSet</a></span>()</code>
<div class="block">Tells if this setting is set directly in this object or its value is coming from the <a href="../../freemarker/core/Configurable.html#getParent--"><code>parent</code></a>.</div>
</td>
</tr>
<tr id="i54" class="altColor">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../freemarker/core/Configurable.html#isAutoIncludesSet--">isAutoIncludesSet</a></span>()</code>
<div class="block">Tells if this setting is set directly in this object or its value is coming from the <a href="../../freemarker/core/Configurable.html#getParent--"><code>parent</code></a>.</div>
</td>
</tr>
<tr id="i55" class="rowColor">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../freemarker/core/Configurable.html#isBooleanFormatSet--">isBooleanFormatSet</a></span>()</code>
<div class="block">Tells if this setting is set directly in this object or its value is coming from the <a href="../../freemarker/core/Configurable.html#getParent--"><code>parent</code></a>.</div>
</td>
</tr>
<tr id="i56" class="altColor">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../freemarker/core/Configurable.html#isCFormatSet--">isCFormatSet</a></span>()</code>
<div class="block">Tells if this setting is set directly in this object or its value is coming from the <a href="../../freemarker/core/Configurable.html#getParent--"><code>parent</code></a>.</div>
</td>
</tr>
<tr id="i57" class="rowColor">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../freemarker/core/Configurable.html#isClassicCompatible--">isClassicCompatible</a></span>()</code>
<div class="block">Returns whether the engine runs in the "Classic Compatibile" mode.</div>
</td>
</tr>
<tr id="i58" class="altColor">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../freemarker/core/Configurable.html#isClassicCompatibleSet--">isClassicCompatibleSet</a></span>()</code>
<div class="block">Tells if this setting is set directly in this object or its value is coming from the <a href="../../freemarker/core/Configurable.html#getParent--"><code>parent</code></a>.</div>
</td>
</tr>
<tr id="i59" class="rowColor">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../freemarker/core/Configurable.html#isCustomDateFormatsSet--">isCustomDateFormatsSet</a></span>()</code>
<div class="block">Tells if this setting is set directly in this object or its value is coming from the <a href="../../freemarker/core/Configurable.html#getParent--"><code>parent</code></a>.</div>
</td>
</tr>
<tr id="i60" class="altColor">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../freemarker/core/Configurable.html#isCustomNumberFormatsSet--">isCustomNumberFormatsSet</a></span>()</code>
<div class="block">Tells if this setting is set directly in this object or its value is coming from the <a href="../../freemarker/core/Configurable.html#getParent--"><code>parent</code></a>.</div>
</td>
</tr>
<tr id="i61" class="rowColor">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../freemarker/core/Configurable.html#isDateFormatSet--">isDateFormatSet</a></span>()</code>
<div class="block">Tells if this setting is set directly in this object or its value is coming from the <a href="../../freemarker/core/Configurable.html#getParent--"><code>parent</code></a>.</div>
</td>
</tr>
<tr id="i62" class="altColor">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../freemarker/core/Configurable.html#isDateTimeFormatSet--">isDateTimeFormatSet</a></span>()</code>
<div class="block">Tells if this setting is set directly in this object or its value is coming from the <a href="../../freemarker/core/Configurable.html#getParent--"><code>parent</code></a>.</div>
</td>
</tr>
<tr id="i63" class="rowColor">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../freemarker/core/Configurable.html#isLazyAutoImportsSet--">isLazyAutoImportsSet</a></span>()</code>
<div class="block">Tells if this setting is set directly in this object or its value is coming from the <a href="../../freemarker/core/Configurable.html#getParent--"><code>parent</code></a>.</div>
</td>
</tr>
<tr id="i64" class="altColor">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../freemarker/core/Configurable.html#isLazyImportsSet--">isLazyImportsSet</a></span>()</code>
<div class="block">Tells if this setting is set directly in this object or its value is coming from the <a href="../../freemarker/core/Configurable.html#getParent--"><code>parent</code></a>.</div>
</td>
</tr>
<tr id="i65" class="rowColor">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../freemarker/core/Configurable.html#isLocaleSet--">isLocaleSet</a></span>()</code>
<div class="block">Tells if this setting is set directly in this object or its value is coming from the <a href="../../freemarker/core/Configurable.html#getParent--"><code>parent</code></a>.</div>
</td>
</tr>
<tr id="i66" class="altColor">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../freemarker/core/Configurable.html#isLogTemplateExceptionsSet--">isLogTemplateExceptionsSet</a></span>()</code>
<div class="block">Tells if this setting is set directly in this object or its value is coming from the <a href="../../freemarker/core/Configurable.html#getParent--"><code>parent</code></a>.</div>
</td>
</tr>
<tr id="i67" class="rowColor">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../freemarker/core/Configurable.html#isNewBuiltinClassResolverSet--">isNewBuiltinClassResolverSet</a></span>()</code>
<div class="block">Tells if this setting is set directly in this object or its value is coming from the <a href="../../freemarker/core/Configurable.html#getParent--"><code>parent</code></a>.</div>
</td>
</tr>
<tr id="i68" class="altColor">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../freemarker/core/Configurable.html#isNumberFormatSet--">isNumberFormatSet</a></span>()</code>
<div class="block">Tells if this setting is set directly in this object or its value is coming from the <a href="../../freemarker/core/Configurable.html#getParent--"><code>parent</code></a>.</div>
</td>
</tr>
<tr id="i69" class="rowColor">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../freemarker/core/Configurable.html#isObjectWrapperSet--">isObjectWrapperSet</a></span>()</code>
<div class="block">Tells if this setting is set directly in this object or its value is coming from the <a href="../../freemarker/core/Configurable.html#getParent--"><code>parent</code></a>.</div>
</td>
</tr>
<tr id="i70" class="altColor">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../freemarker/core/Configurable.html#isOutputEncodingSet--">isOutputEncodingSet</a></span>()</code>
<div class="block">Tells if this setting is set directly in this object or its value is coming from the <a href="../../freemarker/core/Configurable.html#getParent--"><code>parent</code></a>.</div>
</td>
</tr>
<tr id="i71" class="rowColor">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../freemarker/core/Configurable.html#isShowErrorTipsSet--">isShowErrorTipsSet</a></span>()</code>
<div class="block">Tells if this setting is set directly in this object or its value is coming from the <a href="../../freemarker/core/Configurable.html#getParent--"><code>parent</code></a>.</div>
</td>
</tr>
<tr id="i72" class="altColor">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../freemarker/core/Configurable.html#isSQLDateAndTimeTimeZoneSet--">isSQLDateAndTimeTimeZoneSet</a></span>()</code>
<div class="block">Tells if this setting is set directly in this object or its value is coming from the <a href="../../freemarker/core/Configurable.html#getParent--"><code>parent</code></a>.</div>
</td>
</tr>
<tr id="i73" class="rowColor">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../freemarker/core/Configurable.html#isTemplateExceptionHandlerSet--">isTemplateExceptionHandlerSet</a></span>()</code>
<div class="block">Tells if this setting is set directly in this object or its value is coming from the <a href="../../freemarker/core/Configurable.html#getParent--"><code>parent</code></a>.</div>
</td>
</tr>
<tr id="i74" class="altColor">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../freemarker/core/Configurable.html#isTimeFormatSet--">isTimeFormatSet</a></span>()</code>
<div class="block">Tells if this setting is set directly in this object or its value is coming from the <a href="../../freemarker/core/Configurable.html#getParent--"><code>parent</code></a>.</div>
</td>
</tr>
<tr id="i75" class="rowColor">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../freemarker/core/Configurable.html#isTimeZoneSet--">isTimeZoneSet</a></span>()</code>
<div class="block">Tells if this setting is set directly in this object or its value is coming from the <a href="../../freemarker/core/Configurable.html#getParent--"><code>parent</code></a>.</div>
</td>
</tr>
<tr id="i76" class="altColor">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../freemarker/core/Configurable.html#isTruncateBuiltinAlgorithmSet--">isTruncateBuiltinAlgorithmSet</a></span>()</code>
<div class="block">Tells if this setting is set directly in this object or its value is coming from the <a href="../../freemarker/core/Configurable.html#getParent--"><code>parent</code></a>.</div>
</td>
</tr>
<tr id="i77" class="rowColor">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../freemarker/core/Configurable.html#isURLEscapingCharsetSet--">isURLEscapingCharsetSet</a></span>()</code>
<div class="block">Tells if this setting is set directly in this object or its value is coming from the <a href="../../freemarker/core/Configurable.html#getParent--"><code>parent</code></a>.</div>
</td>
</tr>
<tr id="i78" class="altColor">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../freemarker/core/Configurable.html#isWrapUncheckedExceptionsSet--">isWrapUncheckedExceptionsSet</a></span>()</code>&nbsp;</td>
</tr>
<tr id="i79" class="rowColor">
<td class="colFirst"><code>protected java.util.HashMap</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../freemarker/core/Configurable.html#parseAsImportList-java.lang.String-">parseAsImportList</a></span>(java.lang.String&nbsp;text)</code>&nbsp;</td>
</tr>
<tr id="i80" class="altColor">
<td class="colFirst"><code>protected java.util.ArrayList</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../freemarker/core/Configurable.html#parseAsList-java.lang.String-">parseAsList</a></span>(java.lang.String&nbsp;text)</code>&nbsp;</td>
</tr>
<tr id="i81" class="rowColor">
<td class="colFirst"><code>protected java.util.ArrayList</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../freemarker/core/Configurable.html#parseAsSegmentedList-java.lang.String-">parseAsSegmentedList</a></span>(java.lang.String&nbsp;text)</code>&nbsp;</td>
</tr>
<tr id="i82" class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../freemarker/core/Configurable.html#removeAutoImport-java.lang.String-">removeAutoImport</a></span>(java.lang.String&nbsp;namespaceVarName)</code>
<div class="block">Removes an auto-import from this <a href="../../freemarker/core/Configurable.html" title="class in freemarker.core"><code>Configurable</code></a> level (not from the parents or children);
 see <a href="../../freemarker/core/Configurable.html#addAutoImport-java.lang.String-java.lang.String-"><code>addAutoImport(String, String)</code></a>.</div>
</td>
</tr>
<tr id="i83" class="rowColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../freemarker/core/Configurable.html#removeAutoInclude-java.lang.String-">removeAutoInclude</a></span>(java.lang.String&nbsp;templateName)</code>
<div class="block">Removes the auto-include from this <a href="../../freemarker/core/Configurable.html" title="class in freemarker.core"><code>Configurable</code></a> level (not from the parents or children); see
 <a href="../../freemarker/core/Configurable.html#addAutoInclude-java.lang.String-"><code>addAutoInclude(String)</code></a>.</div>
</td>
</tr>
<tr id="i84" class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../freemarker/core/Configurable.html#removeCustomAttribute-java.lang.String-">removeCustomAttribute</a></span>(java.lang.String&nbsp;name)</code>
<div class="block">Removes a named custom attribute for this configurable.</div>
</td>
</tr>
<tr id="i85" class="rowColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../freemarker/core/Configurable.html#setAPIBuiltinEnabled-boolean-">setAPIBuiltinEnabled</a></span>(boolean&nbsp;value)</code>
<div class="block">Specifies if <code>?api</code> can be used in templates.</div>
</td>
</tr>
<tr id="i86" class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../freemarker/core/Configurable.html#setArithmeticEngine-freemarker.core.ArithmeticEngine-">setArithmeticEngine</a></span>(<a href="../../freemarker/core/ArithmeticEngine.html" title="class in freemarker.core">ArithmeticEngine</a>&nbsp;arithmeticEngine)</code>
<div class="block">Sets the arithmetic engine used to perform arithmetic operations.</div>
</td>
</tr>
<tr id="i87" class="rowColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../freemarker/core/Configurable.html#setAttemptExceptionReporter-freemarker.template.AttemptExceptionReporter-">setAttemptExceptionReporter</a></span>(<a href="../../freemarker/template/AttemptExceptionReporter.html" title="interface in freemarker.template">AttemptExceptionReporter</a>&nbsp;attemptExceptionReporter)</code>
<div class="block">Specifies how exceptions handled (and hence suppressed) by an <code>#attempt</code> blocks will be logged or otherwise
 reported.</div>
</td>
</tr>
<tr id="i88" class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../freemarker/core/Configurable.html#setAutoFlush-boolean-">setAutoFlush</a></span>(boolean&nbsp;autoFlush)</code>
<div class="block">Sets whether the output <code>Writer</code> is automatically flushed at
 the end of <a href="../../freemarker/template/Template.html#process-java.lang.Object-java.io.Writer-"><code>Template.process(Object, Writer)</code></a> (and its
 overloads).</div>
</td>
</tr>
<tr id="i89" class="rowColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../freemarker/core/Configurable.html#setAutoImports-java.util.Map-">setAutoImports</a></span>(java.util.Map&nbsp;map)</code>
<div class="block">Removes all auto-imports, then calls <a href="../../freemarker/core/Configurable.html#addAutoImport-java.lang.String-java.lang.String-"><code>addAutoImport(String, String)</code></a> for each <code>Map</code>-entry (the entry
 key is the <code>namespaceVarName</code>).</div>
</td>
</tr>
<tr id="i90" class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../freemarker/core/Configurable.html#setAutoIncludes-java.util.List-">setAutoIncludes</a></span>(java.util.List&nbsp;templateNames)</code>
<div class="block">Removes all auto-includes, then calls <a href="../../freemarker/core/Configurable.html#addAutoInclude-java.lang.String-"><code>addAutoInclude(String)</code></a> for each <code>List</code> items.</div>
</td>
</tr>
<tr id="i91" class="rowColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../freemarker/core/Configurable.html#setBooleanFormat-java.lang.String-">setBooleanFormat</a></span>(java.lang.String&nbsp;booleanFormat)</code>
<div class="block">The string value for the boolean <code>true</code> and <code>false</code> values, usually intended for human consumption
 (not for a computer language), separated with comma.</div>
</td>
</tr>
<tr id="i92" class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../freemarker/core/Configurable.html#setCFormat-freemarker.core.CFormat-">setCFormat</a></span>(<a href="../../freemarker/core/CFormat.html" title="class in freemarker.core">CFormat</a>&nbsp;cFormat)</code>
<div class="block">Sets the format (usually a computer language) used for <code>?c</code>, <code>?cn</code>, and for the
 <code>"c"</code> (<code>"computer"</code> before 2.3.32) <a href="../../freemarker/core/Configurable.html#setNumberFormat-java.lang.String-"><code>number_format</code></a>, and the
 <code>"c"</code> <a href="../../freemarker/core/Configurable.html#setBooleanFormat-java.lang.String-"><code>boolean_format</code></a>.</div>
</td>
</tr>
<tr id="i93" class="rowColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../freemarker/core/Configurable.html#setClassicCompatible-boolean-">setClassicCompatible</a></span>(boolean&nbsp;classicCompatibility)</code>
<div class="block">Toggles the "Classic Compatible" mode.</div>
</td>
</tr>
<tr id="i94" class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../freemarker/core/Configurable.html#setClassicCompatibleAsInt-int-">setClassicCompatibleAsInt</a></span>(int&nbsp;classicCompatibility)</code>
<div class="block">Same as <a href="../../freemarker/core/Configurable.html#setClassicCompatible-boolean-"><code>setClassicCompatible(boolean)</code></a>, but allows some extra values.</div>
</td>
</tr>
<tr id="i95" class="rowColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../freemarker/core/Configurable.html#setCustomAttribute-java.lang.String-java.lang.Object-">setCustomAttribute</a></span>(java.lang.String&nbsp;name,
                  java.lang.Object&nbsp;value)</code>
<div class="block">Sets a named custom attribute for this configurable.</div>
</td>
</tr>
<tr id="i96" class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../freemarker/core/Configurable.html#setCustomDateFormats-java.util.Map-">setCustomDateFormats</a></span>(java.util.Map&lt;java.lang.String,? extends <a href="../../freemarker/core/TemplateDateFormatFactory.html" title="class in freemarker.core">TemplateDateFormatFactory</a>&gt;&nbsp;customDateFormats)</code>
<div class="block">Associates names with formatter factories, which then can be referred by the <a href="../../freemarker/core/Configurable.html#setDateTimeFormat-java.lang.String-"><code>date_format</code></a>, <a href="../../freemarker/core/Configurable.html#setDateTimeFormat-java.lang.String-"><code>time_format</code></a>, and <a href="../../freemarker/core/Configurable.html#setDateTimeFormat-java.lang.String-"><code>datetime_format</code></a> settings with values starting with <code>@<i>name</i></code>.</div>
</td>
</tr>
<tr id="i97" class="rowColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../freemarker/core/Configurable.html#setCustomNumberFormats-java.util.Map-">setCustomNumberFormats</a></span>(java.util.Map&lt;java.lang.String,? extends <a href="../../freemarker/core/TemplateNumberFormatFactory.html" title="class in freemarker.core">TemplateNumberFormatFactory</a>&gt;&nbsp;customNumberFormats)</code>
<div class="block">Associates names with formatter factories, which then can be referred by the <a href="../../freemarker/core/Configurable.html#setNumberFormat-java.lang.String-"><code>number_format</code></a> setting with values starting with <code>@<i>name</i></code>.</div>
</td>
</tr>
<tr id="i98" class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../freemarker/core/Configurable.html#setDateFormat-java.lang.String-">setDateFormat</a></span>(java.lang.String&nbsp;dateFormat)</code>
<div class="block">Sets the format used to convert <code>Date</code>-s that are date-only (no time part) values to string-s,
 also the format that <code>someString?date</code> will use to parse strings.</div>
</td>
</tr>
<tr id="i99" class="rowColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../freemarker/core/Configurable.html#setDateTimeFormat-java.lang.String-">setDateTimeFormat</a></span>(java.lang.String&nbsp;dateTimeFormat)</code>
<div class="block">Sets the format used to convert <code>Date</code>-s that are date-time (timestamp) values to string-s,
 also the format that <code>someString?datetime</code> will use to parse strings.</div>
</td>
</tr>
<tr id="i100" class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../freemarker/core/Configurable.html#setLazyAutoImports-java.lang.Boolean-">setLazyAutoImports</a></span>(java.lang.Boolean&nbsp;lazyAutoImports)</code>
<div class="block">Specifies if <a href="../../freemarker/core/Configurable.html#setAutoImports-java.util.Map-">auto-imports</a> will be
 <a href="../../freemarker/core/Configurable.html#setLazyImports-boolean-"><code>lazy imports</code></a>.</div>
</td>
</tr>
<tr id="i101" class="rowColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../freemarker/core/Configurable.html#setLazyImports-boolean-">setLazyImports</a></span>(boolean&nbsp;lazyImports)</code>
<div class="block">Specifies if <code>&lt;#import ...&gt;</code> (and <a href="../../freemarker/core/Environment.html#importLib-java.lang.String-java.lang.String-"><code>Environment.importLib(String, String)</code></a>) should delay the loading
 and processing of the imported templates until the content of the imported namespace is actually accessed.</div>
</td>
</tr>
<tr id="i102" class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../freemarker/core/Configurable.html#setLocale-java.util.Locale-">setLocale</a></span>(java.util.Locale&nbsp;locale)</code>
<div class="block">Sets the locale used for number and date formatting (among others), also the locale used for searching
 localized template variations when no locale was explicitly requested.</div>
</td>
</tr>
<tr id="i103" class="rowColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../freemarker/core/Configurable.html#setLogTemplateExceptions-boolean-">setLogTemplateExceptions</a></span>(boolean&nbsp;value)</code>
<div class="block">Specifies if <a href="../../freemarker/template/TemplateException.html" title="class in freemarker.template"><code>TemplateException</code></a>-s thrown by template processing are logged by FreeMarker or not.</div>
</td>
</tr>
<tr id="i104" class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../freemarker/core/Configurable.html#setNewBuiltinClassResolver-freemarker.core.TemplateClassResolver-">setNewBuiltinClassResolver</a></span>(<a href="../../freemarker/core/TemplateClassResolver.html" title="interface in freemarker.core">TemplateClassResolver</a>&nbsp;newBuiltinClassResolver)</code>
<div class="block">Sets the <a href="../../freemarker/core/TemplateClassResolver.html" title="interface in freemarker.core"><code>TemplateClassResolver</code></a> that is used when the
 <code>new</code> built-in is called in a template.</div>
</td>
</tr>
<tr id="i105" class="rowColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../freemarker/core/Configurable.html#setNumberFormat-java.lang.String-">setNumberFormat</a></span>(java.lang.String&nbsp;numberFormat)</code>
<div class="block">Sets the number format used to convert numbers to strings.</div>
</td>
</tr>
<tr id="i106" class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../freemarker/core/Configurable.html#setObjectWrapper-freemarker.template.ObjectWrapper-">setObjectWrapper</a></span>(<a href="../../freemarker/template/ObjectWrapper.html" title="interface in freemarker.template">ObjectWrapper</a>&nbsp;objectWrapper)</code>
<div class="block">Sets the object wrapper used to wrap objects to <a href="../../freemarker/template/TemplateModel.html" title="interface in freemarker.template"><code>TemplateModel</code></a>-s.</div>
</td>
</tr>
<tr id="i107" class="rowColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../freemarker/core/Configurable.html#setOutputEncoding-java.lang.String-">setOutputEncoding</a></span>(java.lang.String&nbsp;outputEncoding)</code>
<div class="block">Informs FreeMarker about the charset used for the output.</div>
</td>
</tr>
<tr id="i108" class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../freemarker/core/Configurable.html#setSetting-java.lang.String-java.lang.String-">setSetting</a></span>(java.lang.String&nbsp;name,
          java.lang.String&nbsp;value)</code>
<div class="block">Sets a FreeMarker setting by a name and string value.</div>
</td>
</tr>
<tr id="i109" class="rowColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../freemarker/core/Configurable.html#setSettings-java.io.InputStream-">setSettings</a></span>(java.io.InputStream&nbsp;propsIn)</code>
<div class="block">Reads a setting list (key and element pairs) from the input stream.</div>
</td>
</tr>
<tr id="i110" class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../freemarker/core/Configurable.html#setSettings-java.util.Properties-">setSettings</a></span>(java.util.Properties&nbsp;props)</code>
<div class="block">Set the settings stored in a <code>Properties</code> object.</div>
</td>
</tr>
<tr id="i111" class="rowColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../freemarker/core/Configurable.html#setShowErrorTips-boolean-">setShowErrorTips</a></span>(boolean&nbsp;showTips)</code>
<div class="block">Sets if tips should be shown in error messages of errors arising during template processing.</div>
</td>
</tr>
<tr id="i112" class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../freemarker/core/Configurable.html#setSQLDateAndTimeTimeZone-java.util.TimeZone-">setSQLDateAndTimeTimeZone</a></span>(java.util.TimeZone&nbsp;tz)</code>
<div class="block">Sets the time zone used when dealing with <code>java.sql.Date</code> and
 <code>java.sql.Time</code> values.</div>
</td>
</tr>
<tr id="i113" class="rowColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../freemarker/core/Configurable.html#setStrictBeanModels-boolean-">setStrictBeanModels</a></span>(boolean&nbsp;strict)</code>
<div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;
<div class="block"><span class="deprecationComment">Set this on the <a href="../../freemarker/template/ObjectWrapper.html" title="interface in freemarker.template"><code>ObjectWrapper</code></a> itself.</span></div>
</div>
</td>
</tr>
<tr id="i114" class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../freemarker/core/Configurable.html#setTemplateExceptionHandler-freemarker.template.TemplateExceptionHandler-">setTemplateExceptionHandler</a></span>(<a href="../../freemarker/template/TemplateExceptionHandler.html" title="interface in freemarker.template">TemplateExceptionHandler</a>&nbsp;templateExceptionHandler)</code>
<div class="block">Sets the exception handler used to handle exceptions occurring inside templates.</div>
</td>
</tr>
<tr id="i115" class="rowColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../freemarker/core/Configurable.html#setTimeFormat-java.lang.String-">setTimeFormat</a></span>(java.lang.String&nbsp;timeFormat)</code>
<div class="block">Sets the format used to convert <code>Date</code>-s that are time (no date part) values to string-s, also
 the format that <code>someString?time</code> will use to parse strings.</div>
</td>
</tr>
<tr id="i116" class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../freemarker/core/Configurable.html#setTimeZone-java.util.TimeZone-">setTimeZone</a></span>(java.util.TimeZone&nbsp;timeZone)</code>
<div class="block">Sets the time zone to use when formatting date/time values.</div>
</td>
</tr>
<tr id="i117" class="rowColor">
<td class="colFirst"><code>protected <a href="../../freemarker/template/TemplateException.html" title="class in freemarker.template">TemplateException</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../freemarker/core/Configurable.html#settingValueAssignmentException-java.lang.String-java.lang.String-java.lang.Throwable-">settingValueAssignmentException</a></span>(java.lang.String&nbsp;name,
                               java.lang.String&nbsp;value,
                               java.lang.Throwable&nbsp;cause)</code>&nbsp;</td>
</tr>
<tr id="i118" class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../freemarker/core/Configurable.html#setTruncateBuiltinAlgorithm-freemarker.core.TruncateBuiltinAlgorithm-">setTruncateBuiltinAlgorithm</a></span>(<a href="../../freemarker/core/TruncateBuiltinAlgorithm.html" title="class in freemarker.core">TruncateBuiltinAlgorithm</a>&nbsp;truncateBuiltinAlgorithm)</code>
<div class="block">Specifies the algorithm used for <code>?truncate</code>.</div>
</td>
</tr>
<tr id="i119" class="rowColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../freemarker/core/Configurable.html#setURLEscapingCharset-java.lang.String-">setURLEscapingCharset</a></span>(java.lang.String&nbsp;urlEscapingCharset)</code>
<div class="block">Sets the URL escaping (URL encoding, percentage encoding) charset.</div>
</td>
</tr>
<tr id="i120" class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../freemarker/core/Configurable.html#setWrapUncheckedExceptions-boolean-">setWrapUncheckedExceptions</a></span>(boolean&nbsp;wrapUncheckedExceptions)</code>
<div class="block">Specifies if unchecked exceptions thrown during expression evaluation or during executing custom directives (and
 transform) will be wrapped into <a href="../../freemarker/template/TemplateException.html" title="class in freemarker.template"><code>TemplateException</code></a>-s, or will bubble up to the caller of
 <a href="../../freemarker/template/Template.html#process-java.lang.Object-java.io.Writer-freemarker.template.ObjectWrapper-"><code>Template.process(Object, Writer, ObjectWrapper)</code></a> as is.</div>
</td>
</tr>
<tr id="i121" class="rowColor">
<td class="colFirst"><code>protected <a href="../../freemarker/template/TemplateException.html" title="class in freemarker.template">TemplateException</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../freemarker/core/Configurable.html#unknownSettingException-java.lang.String-">unknownSettingException</a></span>(java.lang.String&nbsp;name)</code>
<div class="block">Creates the exception that should be thrown when a setting name isn't recognized.</div>
</td>
</tr>
</table>
<ul class="blockList">
<li class="blockList"><a name="methods.inherited.from.class.java.lang.Object">
<!--   -->
</a>
<h3>Methods inherited from class&nbsp;java.lang.Object</h3>
<code>equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait</code></li>
</ul>
</li>
</ul>
</li>
</ul>
</div>
<div class="details">
<ul class="blockList">
<li class="blockList">
<!-- ============ FIELD DETAIL =========== -->
<ul class="blockList">
<li class="blockList"><a name="field.detail">
<!--   -->
</a>
<h3>Field Detail</h3>
<a name="LOCALE_KEY_SNAKE_CASE">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>LOCALE_KEY_SNAKE_CASE</h4>
<pre>public static final&nbsp;java.lang.String LOCALE_KEY_SNAKE_CASE</pre>
<div class="block">Legacy, snake case (<code>like_this</code>) variation of the setting name. @since 2.3.23</div>
<dl>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../constant-values.html#freemarker.core.Configurable.LOCALE_KEY_SNAKE_CASE">Constant Field Values</a></dd>
</dl>
</li>
</ul>
<a name="LOCALE_KEY_CAMEL_CASE">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>LOCALE_KEY_CAMEL_CASE</h4>
<pre>public static final&nbsp;java.lang.String LOCALE_KEY_CAMEL_CASE</pre>
<div class="block">Modern, camel case (<code>likeThis</code>) variation of the setting name. @since 2.3.23</div>
<dl>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../constant-values.html#freemarker.core.Configurable.LOCALE_KEY_CAMEL_CASE">Constant Field Values</a></dd>
</dl>
</li>
</ul>
<a name="LOCALE_KEY">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>LOCALE_KEY</h4>
<pre>public static final&nbsp;java.lang.String LOCALE_KEY</pre>
<div class="block">Alias to the <code>..._SNAKE_CASE</code> variation due to backward compatibility constraints.</div>
<dl>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../constant-values.html#freemarker.core.Configurable.LOCALE_KEY">Constant Field Values</a></dd>
</dl>
</li>
</ul>
<a name="C_FORMAT_KEY_SNAKE_CASE">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>C_FORMAT_KEY_SNAKE_CASE</h4>
<pre>public static final&nbsp;java.lang.String C_FORMAT_KEY_SNAKE_CASE</pre>
<div class="block">Legacy, snake case (<code>like_this</code>) variation of the setting name. @since 2.3.23</div>
<dl>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../constant-values.html#freemarker.core.Configurable.C_FORMAT_KEY_SNAKE_CASE">Constant Field Values</a></dd>
</dl>
</li>
</ul>
<a name="C_FORMAT_KEY_CAMEL_CASE">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>C_FORMAT_KEY_CAMEL_CASE</h4>
<pre>public static final&nbsp;java.lang.String C_FORMAT_KEY_CAMEL_CASE</pre>
<div class="block">Modern, camel case (<code>likeThis</code>) variation of the setting name. @since 2.3.23</div>
<dl>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../constant-values.html#freemarker.core.Configurable.C_FORMAT_KEY_CAMEL_CASE">Constant Field Values</a></dd>
</dl>
</li>
</ul>
<a name="C_FORMAT_KEY">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>C_FORMAT_KEY</h4>
<pre>public static final&nbsp;java.lang.String C_FORMAT_KEY</pre>
<div class="block">Alias to the <code>..._SNAKE_CASE</code> variation due to backward compatibility constraints.</div>
<dl>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../constant-values.html#freemarker.core.Configurable.C_FORMAT_KEY">Constant Field Values</a></dd>
</dl>
</li>
</ul>
<a name="NUMBER_FORMAT_KEY_SNAKE_CASE">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>NUMBER_FORMAT_KEY_SNAKE_CASE</h4>
<pre>public static final&nbsp;java.lang.String NUMBER_FORMAT_KEY_SNAKE_CASE</pre>
<div class="block">Legacy, snake case (<code>like_this</code>) variation of the setting name. @since 2.3.23</div>
<dl>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../constant-values.html#freemarker.core.Configurable.NUMBER_FORMAT_KEY_SNAKE_CASE">Constant Field Values</a></dd>
</dl>
</li>
</ul>
<a name="NUMBER_FORMAT_KEY_CAMEL_CASE">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>NUMBER_FORMAT_KEY_CAMEL_CASE</h4>
<pre>public static final&nbsp;java.lang.String NUMBER_FORMAT_KEY_CAMEL_CASE</pre>
<div class="block">Modern, camel case (<code>likeThis</code>) variation of the setting name. @since 2.3.23</div>
<dl>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../constant-values.html#freemarker.core.Configurable.NUMBER_FORMAT_KEY_CAMEL_CASE">Constant Field Values</a></dd>
</dl>
</li>
</ul>
<a name="NUMBER_FORMAT_KEY">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>NUMBER_FORMAT_KEY</h4>
<pre>public static final&nbsp;java.lang.String NUMBER_FORMAT_KEY</pre>
<div class="block">Alias to the <code>..._SNAKE_CASE</code> variation due to backward compatibility constraints.</div>
<dl>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../constant-values.html#freemarker.core.Configurable.NUMBER_FORMAT_KEY">Constant Field Values</a></dd>
</dl>
</li>
</ul>
<a name="CUSTOM_NUMBER_FORMATS_KEY_SNAKE_CASE">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>CUSTOM_NUMBER_FORMATS_KEY_SNAKE_CASE</h4>
<pre>public static final&nbsp;java.lang.String CUSTOM_NUMBER_FORMATS_KEY_SNAKE_CASE</pre>
<div class="block">Legacy, snake case (<code>like_this</code>) variation of the setting name. @since 2.3.23</div>
<dl>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../constant-values.html#freemarker.core.Configurable.CUSTOM_NUMBER_FORMATS_KEY_SNAKE_CASE">Constant Field Values</a></dd>
</dl>
</li>
</ul>
<a name="CUSTOM_NUMBER_FORMATS_KEY_CAMEL_CASE">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>CUSTOM_NUMBER_FORMATS_KEY_CAMEL_CASE</h4>
<pre>public static final&nbsp;java.lang.String CUSTOM_NUMBER_FORMATS_KEY_CAMEL_CASE</pre>
<div class="block">Modern, camel case (<code>likeThis</code>) variation of the setting name. @since 2.3.23</div>
<dl>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../constant-values.html#freemarker.core.Configurable.CUSTOM_NUMBER_FORMATS_KEY_CAMEL_CASE">Constant Field Values</a></dd>
</dl>
</li>
</ul>
<a name="CUSTOM_NUMBER_FORMATS_KEY">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>CUSTOM_NUMBER_FORMATS_KEY</h4>
<pre>public static final&nbsp;java.lang.String CUSTOM_NUMBER_FORMATS_KEY</pre>
<div class="block">Alias to the <code>..._SNAKE_CASE</code> variation due to backward compatibility constraints.</div>
<dl>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../constant-values.html#freemarker.core.Configurable.CUSTOM_NUMBER_FORMATS_KEY">Constant Field Values</a></dd>
</dl>
</li>
</ul>
<a name="TIME_FORMAT_KEY_SNAKE_CASE">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>TIME_FORMAT_KEY_SNAKE_CASE</h4>
<pre>public static final&nbsp;java.lang.String TIME_FORMAT_KEY_SNAKE_CASE</pre>
<div class="block">Legacy, snake case (<code>like_this</code>) variation of the setting name. @since 2.3.23</div>
<dl>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../constant-values.html#freemarker.core.Configurable.TIME_FORMAT_KEY_SNAKE_CASE">Constant Field Values</a></dd>
</dl>
</li>
</ul>
<a name="TIME_FORMAT_KEY_CAMEL_CASE">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>TIME_FORMAT_KEY_CAMEL_CASE</h4>
<pre>public static final&nbsp;java.lang.String TIME_FORMAT_KEY_CAMEL_CASE</pre>
<div class="block">Modern, camel case (<code>likeThis</code>) variation of the setting name. @since 2.3.23</div>
<dl>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../constant-values.html#freemarker.core.Configurable.TIME_FORMAT_KEY_CAMEL_CASE">Constant Field Values</a></dd>
</dl>
</li>
</ul>
<a name="TIME_FORMAT_KEY">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>TIME_FORMAT_KEY</h4>
<pre>public static final&nbsp;java.lang.String TIME_FORMAT_KEY</pre>
<div class="block">Alias to the <code>..._SNAKE_CASE</code> variation due to backward compatibility constraints.</div>
<dl>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../constant-values.html#freemarker.core.Configurable.TIME_FORMAT_KEY">Constant Field Values</a></dd>
</dl>
</li>
</ul>
<a name="DATE_FORMAT_KEY_SNAKE_CASE">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>DATE_FORMAT_KEY_SNAKE_CASE</h4>
<pre>public static final&nbsp;java.lang.String DATE_FORMAT_KEY_SNAKE_CASE</pre>
<div class="block">Legacy, snake case (<code>like_this</code>) variation of the setting name. @since 2.3.23</div>
<dl>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../constant-values.html#freemarker.core.Configurable.DATE_FORMAT_KEY_SNAKE_CASE">Constant Field Values</a></dd>
</dl>
</li>
</ul>
<a name="DATE_FORMAT_KEY_CAMEL_CASE">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>DATE_FORMAT_KEY_CAMEL_CASE</h4>
<pre>public static final&nbsp;java.lang.String DATE_FORMAT_KEY_CAMEL_CASE</pre>
<div class="block">Modern, camel case (<code>likeThis</code>) variation of the setting name. @since 2.3.23</div>
<dl>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../constant-values.html#freemarker.core.Configurable.DATE_FORMAT_KEY_CAMEL_CASE">Constant Field Values</a></dd>
</dl>
</li>
</ul>
<a name="DATE_FORMAT_KEY">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>DATE_FORMAT_KEY</h4>
<pre>public static final&nbsp;java.lang.String DATE_FORMAT_KEY</pre>
<div class="block">Alias to the <code>..._SNAKE_CASE</code> variation due to backward compatibility constraints.</div>
<dl>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../constant-values.html#freemarker.core.Configurable.DATE_FORMAT_KEY">Constant Field Values</a></dd>
</dl>
</li>
</ul>
<a name="CUSTOM_DATE_FORMATS_KEY_SNAKE_CASE">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>CUSTOM_DATE_FORMATS_KEY_SNAKE_CASE</h4>
<pre>public static final&nbsp;java.lang.String CUSTOM_DATE_FORMATS_KEY_SNAKE_CASE</pre>
<div class="block">Legacy, snake case (<code>like_this</code>) variation of the setting name. @since 2.3.23</div>
<dl>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../constant-values.html#freemarker.core.Configurable.CUSTOM_DATE_FORMATS_KEY_SNAKE_CASE">Constant Field Values</a></dd>
</dl>
</li>
</ul>
<a name="CUSTOM_DATE_FORMATS_KEY_CAMEL_CASE">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>CUSTOM_DATE_FORMATS_KEY_CAMEL_CASE</h4>
<pre>public static final&nbsp;java.lang.String CUSTOM_DATE_FORMATS_KEY_CAMEL_CASE</pre>
<div class="block">Modern, camel case (<code>likeThis</code>) variation of the setting name. @since 2.3.23</div>
<dl>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../constant-values.html#freemarker.core.Configurable.CUSTOM_DATE_FORMATS_KEY_CAMEL_CASE">Constant Field Values</a></dd>
</dl>
</li>
</ul>
<a name="CUSTOM_DATE_FORMATS_KEY">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>CUSTOM_DATE_FORMATS_KEY</h4>
<pre>public static final&nbsp;java.lang.String CUSTOM_DATE_FORMATS_KEY</pre>
<div class="block">Alias to the <code>..._SNAKE_CASE</code> variation due to backward compatibility constraints.</div>
<dl>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../constant-values.html#freemarker.core.Configurable.CUSTOM_DATE_FORMATS_KEY">Constant Field Values</a></dd>
</dl>
</li>
</ul>
<a name="DATETIME_FORMAT_KEY_SNAKE_CASE">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>DATETIME_FORMAT_KEY_SNAKE_CASE</h4>
<pre>public static final&nbsp;java.lang.String DATETIME_FORMAT_KEY_SNAKE_CASE</pre>
<div class="block">Legacy, snake case (<code>like_this</code>) variation of the setting name. @since 2.3.23</div>
<dl>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../constant-values.html#freemarker.core.Configurable.DATETIME_FORMAT_KEY_SNAKE_CASE">Constant Field Values</a></dd>
</dl>
</li>
</ul>
<a name="DATETIME_FORMAT_KEY_CAMEL_CASE">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>DATETIME_FORMAT_KEY_CAMEL_CASE</h4>
<pre>public static final&nbsp;java.lang.String DATETIME_FORMAT_KEY_CAMEL_CASE</pre>
<div class="block">Modern, camel case (<code>likeThis</code>) variation of the setting name. @since 2.3.23</div>
<dl>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../constant-values.html#freemarker.core.Configurable.DATETIME_FORMAT_KEY_CAMEL_CASE">Constant Field Values</a></dd>
</dl>
</li>
</ul>
<a name="DATETIME_FORMAT_KEY">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>DATETIME_FORMAT_KEY</h4>
<pre>public static final&nbsp;java.lang.String DATETIME_FORMAT_KEY</pre>
<div class="block">Alias to the <code>..._SNAKE_CASE</code> variation due to backward compatibility constraints.</div>
<dl>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../constant-values.html#freemarker.core.Configurable.DATETIME_FORMAT_KEY">Constant Field Values</a></dd>
</dl>
</li>
</ul>
<a name="TIME_ZONE_KEY_SNAKE_CASE">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>TIME_ZONE_KEY_SNAKE_CASE</h4>
<pre>public static final&nbsp;java.lang.String TIME_ZONE_KEY_SNAKE_CASE</pre>
<div class="block">Legacy, snake case (<code>like_this</code>) variation of the setting name. @since 2.3.23</div>
<dl>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../constant-values.html#freemarker.core.Configurable.TIME_ZONE_KEY_SNAKE_CASE">Constant Field Values</a></dd>
</dl>
</li>
</ul>
<a name="TIME_ZONE_KEY_CAMEL_CASE">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>TIME_ZONE_KEY_CAMEL_CASE</h4>
<pre>public static final&nbsp;java.lang.String TIME_ZONE_KEY_CAMEL_CASE</pre>
<div class="block">Modern, camel case (<code>likeThis</code>) variation of the setting name. @since 2.3.23</div>
<dl>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../constant-values.html#freemarker.core.Configurable.TIME_ZONE_KEY_CAMEL_CASE">Constant Field Values</a></dd>
</dl>
</li>
</ul>
<a name="TIME_ZONE_KEY">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>TIME_ZONE_KEY</h4>
<pre>public static final&nbsp;java.lang.String TIME_ZONE_KEY</pre>
<div class="block">Alias to the <code>..._SNAKE_CASE</code> variation due to backward compatibility constraints.</div>
<dl>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../constant-values.html#freemarker.core.Configurable.TIME_ZONE_KEY">Constant Field Values</a></dd>
</dl>
</li>
</ul>
<a name="SQL_DATE_AND_TIME_TIME_ZONE_KEY_SNAKE_CASE">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>SQL_DATE_AND_TIME_TIME_ZONE_KEY_SNAKE_CASE</h4>
<pre>public static final&nbsp;java.lang.String SQL_DATE_AND_TIME_TIME_ZONE_KEY_SNAKE_CASE</pre>
<div class="block">Legacy, snake case (<code>like_this</code>) variation of the setting name. @since 2.3.23</div>
<dl>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../constant-values.html#freemarker.core.Configurable.SQL_DATE_AND_TIME_TIME_ZONE_KEY_SNAKE_CASE">Constant Field Values</a></dd>
</dl>
</li>
</ul>
<a name="SQL_DATE_AND_TIME_TIME_ZONE_KEY_CAMEL_CASE">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>SQL_DATE_AND_TIME_TIME_ZONE_KEY_CAMEL_CASE</h4>
<pre>public static final&nbsp;java.lang.String SQL_DATE_AND_TIME_TIME_ZONE_KEY_CAMEL_CASE</pre>
<div class="block">Modern, camel case (<code>likeThis</code>) variation of the setting name. @since 2.3.23</div>
<dl>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../constant-values.html#freemarker.core.Configurable.SQL_DATE_AND_TIME_TIME_ZONE_KEY_CAMEL_CASE">Constant Field Values</a></dd>
</dl>
</li>
</ul>
<a name="SQL_DATE_AND_TIME_TIME_ZONE_KEY">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>SQL_DATE_AND_TIME_TIME_ZONE_KEY</h4>
<pre>public static final&nbsp;java.lang.String SQL_DATE_AND_TIME_TIME_ZONE_KEY</pre>
<div class="block">Alias to the <code>..._SNAKE_CASE</code> variation due to backward compatibility constraints.</div>
<dl>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../constant-values.html#freemarker.core.Configurable.SQL_DATE_AND_TIME_TIME_ZONE_KEY">Constant Field Values</a></dd>
</dl>
</li>
</ul>
<a name="CLASSIC_COMPATIBLE_KEY_SNAKE_CASE">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>CLASSIC_COMPATIBLE_KEY_SNAKE_CASE</h4>
<pre>public static final&nbsp;java.lang.String CLASSIC_COMPATIBLE_KEY_SNAKE_CASE</pre>
<div class="block">Legacy, snake case (<code>like_this</code>) variation of the setting name. @since 2.3.23</div>
<dl>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../constant-values.html#freemarker.core.Configurable.CLASSIC_COMPATIBLE_KEY_SNAKE_CASE">Constant Field Values</a></dd>
</dl>
</li>
</ul>
<a name="CLASSIC_COMPATIBLE_KEY_CAMEL_CASE">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>CLASSIC_COMPATIBLE_KEY_CAMEL_CASE</h4>
<pre>public static final&nbsp;java.lang.String CLASSIC_COMPATIBLE_KEY_CAMEL_CASE</pre>
<div class="block">Modern, camel case (<code>likeThis</code>) variation of the setting name. @since 2.3.23</div>
<dl>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../constant-values.html#freemarker.core.Configurable.CLASSIC_COMPATIBLE_KEY_CAMEL_CASE">Constant Field Values</a></dd>
</dl>
</li>
</ul>
<a name="CLASSIC_COMPATIBLE_KEY">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>CLASSIC_COMPATIBLE_KEY</h4>
<pre>public static final&nbsp;java.lang.String CLASSIC_COMPATIBLE_KEY</pre>
<div class="block">Alias to the <code>..._SNAKE_CASE</code> variation due to backward compatibility constraints.</div>
<dl>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../constant-values.html#freemarker.core.Configurable.CLASSIC_COMPATIBLE_KEY">Constant Field Values</a></dd>
</dl>
</li>
</ul>
<a name="TEMPLATE_EXCEPTION_HANDLER_KEY_SNAKE_CASE">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>TEMPLATE_EXCEPTION_HANDLER_KEY_SNAKE_CASE</h4>
<pre>public static final&nbsp;java.lang.String TEMPLATE_EXCEPTION_HANDLER_KEY_SNAKE_CASE</pre>
<div class="block">Legacy, snake case (<code>like_this</code>) variation of the setting name. @since 2.3.23</div>
<dl>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../constant-values.html#freemarker.core.Configurable.TEMPLATE_EXCEPTION_HANDLER_KEY_SNAKE_CASE">Constant Field Values</a></dd>
</dl>
</li>
</ul>
<a name="TEMPLATE_EXCEPTION_HANDLER_KEY_CAMEL_CASE">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>TEMPLATE_EXCEPTION_HANDLER_KEY_CAMEL_CASE</h4>
<pre>public static final&nbsp;java.lang.String TEMPLATE_EXCEPTION_HANDLER_KEY_CAMEL_CASE</pre>
<div class="block">Modern, camel case (<code>likeThis</code>) variation of the setting name. @since 2.3.23</div>
<dl>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../constant-values.html#freemarker.core.Configurable.TEMPLATE_EXCEPTION_HANDLER_KEY_CAMEL_CASE">Constant Field Values</a></dd>
</dl>
</li>
</ul>
<a name="TEMPLATE_EXCEPTION_HANDLER_KEY">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>TEMPLATE_EXCEPTION_HANDLER_KEY</h4>
<pre>public static final&nbsp;java.lang.String TEMPLATE_EXCEPTION_HANDLER_KEY</pre>
<div class="block">Alias to the <code>..._SNAKE_CASE</code> variation due to backward compatibility constraints.</div>
<dl>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../constant-values.html#freemarker.core.Configurable.TEMPLATE_EXCEPTION_HANDLER_KEY">Constant Field Values</a></dd>
</dl>
</li>
</ul>
<a name="ATTEMPT_EXCEPTION_REPORTER_KEY_SNAKE_CASE">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>ATTEMPT_EXCEPTION_REPORTER_KEY_SNAKE_CASE</h4>
<pre>public static final&nbsp;java.lang.String ATTEMPT_EXCEPTION_REPORTER_KEY_SNAKE_CASE</pre>
<div class="block">Legacy, snake case (<code>like_this</code>) variation of the setting name. @since 2.3.27</div>
<dl>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../constant-values.html#freemarker.core.Configurable.ATTEMPT_EXCEPTION_REPORTER_KEY_SNAKE_CASE">Constant Field Values</a></dd>
</dl>
</li>
</ul>
<a name="ATTEMPT_EXCEPTION_REPORTER_KEY_CAMEL_CASE">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>ATTEMPT_EXCEPTION_REPORTER_KEY_CAMEL_CASE</h4>
<pre>public static final&nbsp;java.lang.String ATTEMPT_EXCEPTION_REPORTER_KEY_CAMEL_CASE</pre>
<div class="block">Modern, camel case (<code>likeThis</code>) variation of the setting name. @since 2.3.27</div>
<dl>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../constant-values.html#freemarker.core.Configurable.ATTEMPT_EXCEPTION_REPORTER_KEY_CAMEL_CASE">Constant Field Values</a></dd>
</dl>
</li>
</ul>
<a name="ATTEMPT_EXCEPTION_REPORTER_KEY">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>ATTEMPT_EXCEPTION_REPORTER_KEY</h4>
<pre>public static final&nbsp;java.lang.String ATTEMPT_EXCEPTION_REPORTER_KEY</pre>
<div class="block">Alias to the <code>..._SNAKE_CASE</code> variation due to backward compatibility constraints.</div>
<dl>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../constant-values.html#freemarker.core.Configurable.ATTEMPT_EXCEPTION_REPORTER_KEY">Constant Field Values</a></dd>
</dl>
</li>
</ul>
<a name="ARITHMETIC_ENGINE_KEY_SNAKE_CASE">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>ARITHMETIC_ENGINE_KEY_SNAKE_CASE</h4>
<pre>public static final&nbsp;java.lang.String ARITHMETIC_ENGINE_KEY_SNAKE_CASE</pre>
<div class="block">Legacy, snake case (<code>like_this</code>) variation of the setting name. @since 2.3.23</div>
<dl>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../constant-values.html#freemarker.core.Configurable.ARITHMETIC_ENGINE_KEY_SNAKE_CASE">Constant Field Values</a></dd>
</dl>
</li>
</ul>
<a name="ARITHMETIC_ENGINE_KEY_CAMEL_CASE">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>ARITHMETIC_ENGINE_KEY_CAMEL_CASE</h4>
<pre>public static final&nbsp;java.lang.String ARITHMETIC_ENGINE_KEY_CAMEL_CASE</pre>
<div class="block">Modern, camel case (<code>likeThis</code>) variation of the setting name. @since 2.3.23</div>
<dl>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../constant-values.html#freemarker.core.Configurable.ARITHMETIC_ENGINE_KEY_CAMEL_CASE">Constant Field Values</a></dd>
</dl>
</li>
</ul>
<a name="ARITHMETIC_ENGINE_KEY">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>ARITHMETIC_ENGINE_KEY</h4>
<pre>public static final&nbsp;java.lang.String ARITHMETIC_ENGINE_KEY</pre>
<div class="block">Alias to the <code>..._SNAKE_CASE</code> variation due to backward compatibility constraints.</div>
<dl>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../constant-values.html#freemarker.core.Configurable.ARITHMETIC_ENGINE_KEY">Constant Field Values</a></dd>
</dl>
</li>
</ul>
<a name="OBJECT_WRAPPER_KEY_SNAKE_CASE">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>OBJECT_WRAPPER_KEY_SNAKE_CASE</h4>
<pre>public static final&nbsp;java.lang.String OBJECT_WRAPPER_KEY_SNAKE_CASE</pre>
<div class="block">Legacy, snake case (<code>like_this</code>) variation of the setting name. @since 2.3.23</div>
<dl>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../constant-values.html#freemarker.core.Configurable.OBJECT_WRAPPER_KEY_SNAKE_CASE">Constant Field Values</a></dd>
</dl>
</li>
</ul>
<a name="OBJECT_WRAPPER_KEY_CAMEL_CASE">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>OBJECT_WRAPPER_KEY_CAMEL_CASE</h4>
<pre>public static final&nbsp;java.lang.String OBJECT_WRAPPER_KEY_CAMEL_CASE</pre>
<div class="block">Modern, camel case (<code>likeThis</code>) variation of the setting name. @since 2.3.23</div>
<dl>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../constant-values.html#freemarker.core.Configurable.OBJECT_WRAPPER_KEY_CAMEL_CASE">Constant Field Values</a></dd>
</dl>
</li>
</ul>
<a name="OBJECT_WRAPPER_KEY">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>OBJECT_WRAPPER_KEY</h4>
<pre>public static final&nbsp;java.lang.String OBJECT_WRAPPER_KEY</pre>
<div class="block">Alias to the <code>..._SNAKE_CASE</code> variation due to backward compatibility constraints.</div>
<dl>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../constant-values.html#freemarker.core.Configurable.OBJECT_WRAPPER_KEY">Constant Field Values</a></dd>
</dl>
</li>
</ul>
<a name="BOOLEAN_FORMAT_KEY_SNAKE_CASE">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>BOOLEAN_FORMAT_KEY_SNAKE_CASE</h4>
<pre>public static final&nbsp;java.lang.String BOOLEAN_FORMAT_KEY_SNAKE_CASE</pre>
<div class="block">Legacy, snake case (<code>like_this</code>) variation of the setting name. @since 2.3.23</div>
<dl>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../constant-values.html#freemarker.core.Configurable.BOOLEAN_FORMAT_KEY_SNAKE_CASE">Constant Field Values</a></dd>
</dl>
</li>
</ul>
<a name="BOOLEAN_FORMAT_KEY_CAMEL_CASE">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>BOOLEAN_FORMAT_KEY_CAMEL_CASE</h4>
<pre>public static final&nbsp;java.lang.String BOOLEAN_FORMAT_KEY_CAMEL_CASE</pre>
<div class="block">Modern, camel case (<code>likeThis</code>) variation of the setting name. @since 2.3.23</div>
<dl>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../constant-values.html#freemarker.core.Configurable.BOOLEAN_FORMAT_KEY_CAMEL_CASE">Constant Field Values</a></dd>
</dl>
</li>
</ul>
<a name="BOOLEAN_FORMAT_KEY">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>BOOLEAN_FORMAT_KEY</h4>
<pre>public static final&nbsp;java.lang.String BOOLEAN_FORMAT_KEY</pre>
<div class="block">Alias to the <code>..._SNAKE_CASE</code> variation due to backward compatibility constraints.</div>
<dl>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../constant-values.html#freemarker.core.Configurable.BOOLEAN_FORMAT_KEY">Constant Field Values</a></dd>
</dl>
</li>
</ul>
<a name="OUTPUT_ENCODING_KEY_SNAKE_CASE">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>OUTPUT_ENCODING_KEY_SNAKE_CASE</h4>
<pre>public static final&nbsp;java.lang.String OUTPUT_ENCODING_KEY_SNAKE_CASE</pre>
<div class="block">Legacy, snake case (<code>like_this</code>) variation of the setting name. @since 2.3.23</div>
<dl>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../constant-values.html#freemarker.core.Configurable.OUTPUT_ENCODING_KEY_SNAKE_CASE">Constant Field Values</a></dd>
</dl>
</li>
</ul>
<a name="OUTPUT_ENCODING_KEY_CAMEL_CASE">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>OUTPUT_ENCODING_KEY_CAMEL_CASE</h4>
<pre>public static final&nbsp;java.lang.String OUTPUT_ENCODING_KEY_CAMEL_CASE</pre>
<div class="block">Modern, camel case (<code>likeThis</code>) variation of the setting name. @since 2.3.23</div>
<dl>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../constant-values.html#freemarker.core.Configurable.OUTPUT_ENCODING_KEY_CAMEL_CASE">Constant Field Values</a></dd>
</dl>
</li>
</ul>
<a name="OUTPUT_ENCODING_KEY">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>OUTPUT_ENCODING_KEY</h4>
<pre>public static final&nbsp;java.lang.String OUTPUT_ENCODING_KEY</pre>
<div class="block">Alias to the <code>..._SNAKE_CASE</code> variation due to backward compatibility constraints.</div>
<dl>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../constant-values.html#freemarker.core.Configurable.OUTPUT_ENCODING_KEY">Constant Field Values</a></dd>
</dl>
</li>
</ul>
<a name="URL_ESCAPING_CHARSET_KEY_SNAKE_CASE">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>URL_ESCAPING_CHARSET_KEY_SNAKE_CASE</h4>
<pre>public static final&nbsp;java.lang.String URL_ESCAPING_CHARSET_KEY_SNAKE_CASE</pre>
<div class="block">Legacy, snake case (<code>like_this</code>) variation of the setting name. @since 2.3.23</div>
<dl>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../constant-values.html#freemarker.core.Configurable.URL_ESCAPING_CHARSET_KEY_SNAKE_CASE">Constant Field Values</a></dd>
</dl>
</li>
</ul>
<a name="URL_ESCAPING_CHARSET_KEY_CAMEL_CASE">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>URL_ESCAPING_CHARSET_KEY_CAMEL_CASE</h4>
<pre>public static final&nbsp;java.lang.String URL_ESCAPING_CHARSET_KEY_CAMEL_CASE</pre>
<div class="block">Modern, camel case (<code>likeThis</code>) variation of the setting name. @since 2.3.23</div>
<dl>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../constant-values.html#freemarker.core.Configurable.URL_ESCAPING_CHARSET_KEY_CAMEL_CASE">Constant Field Values</a></dd>
</dl>
</li>
</ul>
<a name="URL_ESCAPING_CHARSET_KEY">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>URL_ESCAPING_CHARSET_KEY</h4>
<pre>public static final&nbsp;java.lang.String URL_ESCAPING_CHARSET_KEY</pre>
<div class="block">Alias to the <code>..._SNAKE_CASE</code> variation due to backward compatibility constraints.</div>
<dl>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../constant-values.html#freemarker.core.Configurable.URL_ESCAPING_CHARSET_KEY">Constant Field Values</a></dd>
</dl>
</li>
</ul>
<a name="STRICT_BEAN_MODELS_KEY_SNAKE_CASE">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>STRICT_BEAN_MODELS_KEY_SNAKE_CASE</h4>
<pre>public static final&nbsp;java.lang.String STRICT_BEAN_MODELS_KEY_SNAKE_CASE</pre>
<div class="block">Legacy, snake case (<code>like_this</code>) variation of the setting name. @since 2.3.23</div>
<dl>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../constant-values.html#freemarker.core.Configurable.STRICT_BEAN_MODELS_KEY_SNAKE_CASE">Constant Field Values</a></dd>
</dl>
</li>
</ul>
<a name="STRICT_BEAN_MODELS_KEY_CAMEL_CASE">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>STRICT_BEAN_MODELS_KEY_CAMEL_CASE</h4>
<pre>public static final&nbsp;java.lang.String STRICT_BEAN_MODELS_KEY_CAMEL_CASE</pre>
<div class="block">Modern, camel case (<code>likeThis</code>) variation of the setting name. @since 2.3.23</div>
<dl>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../constant-values.html#freemarker.core.Configurable.STRICT_BEAN_MODELS_KEY_CAMEL_CASE">Constant Field Values</a></dd>
</dl>
</li>
</ul>
<a name="STRICT_BEAN_MODELS_KEY">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>STRICT_BEAN_MODELS_KEY</h4>
<pre>public static final&nbsp;java.lang.String STRICT_BEAN_MODELS_KEY</pre>
<div class="block">Alias to the <code>..._SNAKE_CASE</code> variation due to backward compatibility constraints. @since 2.3.22</div>
<dl>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../constant-values.html#freemarker.core.Configurable.STRICT_BEAN_MODELS_KEY">Constant Field Values</a></dd>
</dl>
</li>
</ul>
<a name="AUTO_FLUSH_KEY_SNAKE_CASE">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>AUTO_FLUSH_KEY_SNAKE_CASE</h4>
<pre>public static final&nbsp;java.lang.String AUTO_FLUSH_KEY_SNAKE_CASE</pre>
<div class="block">Legacy, snake case (<code>like_this</code>) variation of the setting name. @since 2.3.23</div>
<dl>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../constant-values.html#freemarker.core.Configurable.AUTO_FLUSH_KEY_SNAKE_CASE">Constant Field Values</a></dd>
</dl>
</li>
</ul>
<a name="AUTO_FLUSH_KEY_CAMEL_CASE">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>AUTO_FLUSH_KEY_CAMEL_CASE</h4>
<pre>public static final&nbsp;java.lang.String AUTO_FLUSH_KEY_CAMEL_CASE</pre>
<div class="block">Modern, camel case (<code>likeThis</code>) variation of the setting name. @since 2.3.23</div>
<dl>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../constant-values.html#freemarker.core.Configurable.AUTO_FLUSH_KEY_CAMEL_CASE">Constant Field Values</a></dd>
</dl>
</li>
</ul>
<a name="AUTO_FLUSH_KEY">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>AUTO_FLUSH_KEY</h4>
<pre>public static final&nbsp;java.lang.String AUTO_FLUSH_KEY</pre>
<div class="block">Alias to the <code>..._SNAKE_CASE</code> variation due to backward compatibility constraints. @since 2.3.17</div>
<dl>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../constant-values.html#freemarker.core.Configurable.AUTO_FLUSH_KEY">Constant Field Values</a></dd>
</dl>
</li>
</ul>
<a name="NEW_BUILTIN_CLASS_RESOLVER_KEY_SNAKE_CASE">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>NEW_BUILTIN_CLASS_RESOLVER_KEY_SNAKE_CASE</h4>
<pre>public static final&nbsp;java.lang.String NEW_BUILTIN_CLASS_RESOLVER_KEY_SNAKE_CASE</pre>
<div class="block">Legacy, snake case (<code>like_this</code>) variation of the setting name. @since 2.3.23</div>
<dl>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../constant-values.html#freemarker.core.Configurable.NEW_BUILTIN_CLASS_RESOLVER_KEY_SNAKE_CASE">Constant Field Values</a></dd>
</dl>
</li>
</ul>
<a name="NEW_BUILTIN_CLASS_RESOLVER_KEY_CAMEL_CASE">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>NEW_BUILTIN_CLASS_RESOLVER_KEY_CAMEL_CASE</h4>
<pre>public static final&nbsp;java.lang.String NEW_BUILTIN_CLASS_RESOLVER_KEY_CAMEL_CASE</pre>
<div class="block">Modern, camel case (<code>likeThis</code>) variation of the setting name. @since 2.3.23</div>
<dl>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../constant-values.html#freemarker.core.Configurable.NEW_BUILTIN_CLASS_RESOLVER_KEY_CAMEL_CASE">Constant Field Values</a></dd>
</dl>
</li>
</ul>
<a name="NEW_BUILTIN_CLASS_RESOLVER_KEY">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>NEW_BUILTIN_CLASS_RESOLVER_KEY</h4>
<pre>public static final&nbsp;java.lang.String NEW_BUILTIN_CLASS_RESOLVER_KEY</pre>
<div class="block">Alias to the <code>..._SNAKE_CASE</code> variation due to backward compatibility constraints. @since 2.3.17</div>
<dl>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../constant-values.html#freemarker.core.Configurable.NEW_BUILTIN_CLASS_RESOLVER_KEY">Constant Field Values</a></dd>
</dl>
</li>
</ul>
<a name="SHOW_ERROR_TIPS_KEY_SNAKE_CASE">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>SHOW_ERROR_TIPS_KEY_SNAKE_CASE</h4>
<pre>public static final&nbsp;java.lang.String SHOW_ERROR_TIPS_KEY_SNAKE_CASE</pre>
<div class="block">Legacy, snake case (<code>like_this</code>) variation of the setting name. @since 2.3.23</div>
<dl>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../constant-values.html#freemarker.core.Configurable.SHOW_ERROR_TIPS_KEY_SNAKE_CASE">Constant Field Values</a></dd>
</dl>
</li>
</ul>
<a name="SHOW_ERROR_TIPS_KEY_CAMEL_CASE">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>SHOW_ERROR_TIPS_KEY_CAMEL_CASE</h4>
<pre>public static final&nbsp;java.lang.String SHOW_ERROR_TIPS_KEY_CAMEL_CASE</pre>
<div class="block">Modern, camel case (<code>likeThis</code>) variation of the setting name. @since 2.3.23</div>
<dl>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../constant-values.html#freemarker.core.Configurable.SHOW_ERROR_TIPS_KEY_CAMEL_CASE">Constant Field Values</a></dd>
</dl>
</li>
</ul>
<a name="SHOW_ERROR_TIPS_KEY">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>SHOW_ERROR_TIPS_KEY</h4>
<pre>public static final&nbsp;java.lang.String SHOW_ERROR_TIPS_KEY</pre>
<div class="block">Alias to the <code>..._SNAKE_CASE</code> variation due to backward compatibility constraints. @since 2.3.21</div>
<dl>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../constant-values.html#freemarker.core.Configurable.SHOW_ERROR_TIPS_KEY">Constant Field Values</a></dd>
</dl>
</li>
</ul>
<a name="API_BUILTIN_ENABLED_KEY_SNAKE_CASE">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>API_BUILTIN_ENABLED_KEY_SNAKE_CASE</h4>
<pre>public static final&nbsp;java.lang.String API_BUILTIN_ENABLED_KEY_SNAKE_CASE</pre>
<div class="block">Legacy, snake case (<code>like_this</code>) variation of the setting name. @since 2.3.23</div>
<dl>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../constant-values.html#freemarker.core.Configurable.API_BUILTIN_ENABLED_KEY_SNAKE_CASE">Constant Field Values</a></dd>
</dl>
</li>
</ul>
<a name="API_BUILTIN_ENABLED_KEY_CAMEL_CASE">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>API_BUILTIN_ENABLED_KEY_CAMEL_CASE</h4>
<pre>public static final&nbsp;java.lang.String API_BUILTIN_ENABLED_KEY_CAMEL_CASE</pre>
<div class="block">Modern, camel case (<code>likeThis</code>) variation of the setting name. @since 2.3.23</div>
<dl>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../constant-values.html#freemarker.core.Configurable.API_BUILTIN_ENABLED_KEY_CAMEL_CASE">Constant Field Values</a></dd>
</dl>
</li>
</ul>
<a name="API_BUILTIN_ENABLED_KEY">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>API_BUILTIN_ENABLED_KEY</h4>
<pre>public static final&nbsp;java.lang.String API_BUILTIN_ENABLED_KEY</pre>
<div class="block">Alias to the <code>..._SNAKE_CASE</code> variation due to backward compatibility constraints. @since 2.3.22</div>
<dl>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../constant-values.html#freemarker.core.Configurable.API_BUILTIN_ENABLED_KEY">Constant Field Values</a></dd>
</dl>
</li>
</ul>
<a name="TRUNCATE_BUILTIN_ALGORITHM_KEY_SNAKE_CASE">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>TRUNCATE_BUILTIN_ALGORITHM_KEY_SNAKE_CASE</h4>
<pre>public static final&nbsp;java.lang.String TRUNCATE_BUILTIN_ALGORITHM_KEY_SNAKE_CASE</pre>
<div class="block">Legacy, snake case (<code>like_this</code>) variation of the setting name. @since 2.3.29</div>
<dl>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../constant-values.html#freemarker.core.Configurable.TRUNCATE_BUILTIN_ALGORITHM_KEY_SNAKE_CASE">Constant Field Values</a></dd>
</dl>
</li>
</ul>
<a name="TRUNCATE_BUILTIN_ALGORITHM_KEY_CAMEL_CASE">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>TRUNCATE_BUILTIN_ALGORITHM_KEY_CAMEL_CASE</h4>
<pre>public static final&nbsp;java.lang.String TRUNCATE_BUILTIN_ALGORITHM_KEY_CAMEL_CASE</pre>
<div class="block">Modern, camel case (<code>likeThis</code>) variation of the setting name. @since 2.3.29</div>
<dl>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../constant-values.html#freemarker.core.Configurable.TRUNCATE_BUILTIN_ALGORITHM_KEY_CAMEL_CASE">Constant Field Values</a></dd>
</dl>
</li>
</ul>
<a name="TRUNCATE_BUILTIN_ALGORITHM_KEY">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>TRUNCATE_BUILTIN_ALGORITHM_KEY</h4>
<pre>public static final&nbsp;java.lang.String TRUNCATE_BUILTIN_ALGORITHM_KEY</pre>
<div class="block">Alias to the <code>..._SNAKE_CASE</code> variation due to backward compatibility constraints.</div>
<dl>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../constant-values.html#freemarker.core.Configurable.TRUNCATE_BUILTIN_ALGORITHM_KEY">Constant Field Values</a></dd>
</dl>
</li>
</ul>
<a name="LOG_TEMPLATE_EXCEPTIONS_KEY_SNAKE_CASE">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>LOG_TEMPLATE_EXCEPTIONS_KEY_SNAKE_CASE</h4>
<pre>public static final&nbsp;java.lang.String LOG_TEMPLATE_EXCEPTIONS_KEY_SNAKE_CASE</pre>
<div class="block">Legacy, snake case (<code>like_this</code>) variation of the setting name. @since 2.3.23</div>
<dl>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../constant-values.html#freemarker.core.Configurable.LOG_TEMPLATE_EXCEPTIONS_KEY_SNAKE_CASE">Constant Field Values</a></dd>
</dl>
</li>
</ul>
<a name="LOG_TEMPLATE_EXCEPTIONS_KEY_CAMEL_CASE">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>LOG_TEMPLATE_EXCEPTIONS_KEY_CAMEL_CASE</h4>
<pre>public static final&nbsp;java.lang.String LOG_TEMPLATE_EXCEPTIONS_KEY_CAMEL_CASE</pre>
<div class="block">Modern, camel case (<code>likeThis</code>) variation of the setting name. @since 2.3.23</div>
<dl>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../constant-values.html#freemarker.core.Configurable.LOG_TEMPLATE_EXCEPTIONS_KEY_CAMEL_CASE">Constant Field Values</a></dd>
</dl>
</li>
</ul>
<a name="LOG_TEMPLATE_EXCEPTIONS_KEY">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>LOG_TEMPLATE_EXCEPTIONS_KEY</h4>
<pre>public static final&nbsp;java.lang.String LOG_TEMPLATE_EXCEPTIONS_KEY</pre>
<div class="block">Alias to the <code>..._SNAKE_CASE</code> variation due to backward compatibility constraints. @since 2.3.22</div>
<dl>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../constant-values.html#freemarker.core.Configurable.LOG_TEMPLATE_EXCEPTIONS_KEY">Constant Field Values</a></dd>
</dl>
</li>
</ul>
<a name="WRAP_UNCHECKED_EXCEPTIONS_KEY_SNAKE_CASE">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>WRAP_UNCHECKED_EXCEPTIONS_KEY_SNAKE_CASE</h4>
<pre>public static final&nbsp;java.lang.String WRAP_UNCHECKED_EXCEPTIONS_KEY_SNAKE_CASE</pre>
<div class="block">Legacy, snake case (<code>like_this</code>) variation of the setting name. @since 2.3.27</div>
<dl>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../constant-values.html#freemarker.core.Configurable.WRAP_UNCHECKED_EXCEPTIONS_KEY_SNAKE_CASE">Constant Field Values</a></dd>
</dl>
</li>
</ul>
<a name="WRAP_UNCHECKED_EXCEPTIONS_KEY_CAMEL_CASE">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>WRAP_UNCHECKED_EXCEPTIONS_KEY_CAMEL_CASE</h4>
<pre>public static final&nbsp;java.lang.String WRAP_UNCHECKED_EXCEPTIONS_KEY_CAMEL_CASE</pre>
<div class="block">Modern, camel case (<code>likeThis</code>) variation of the setting name. @since 2.3.27</div>
<dl>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../constant-values.html#freemarker.core.Configurable.WRAP_UNCHECKED_EXCEPTIONS_KEY_CAMEL_CASE">Constant Field Values</a></dd>
</dl>
</li>
</ul>
<a name="WRAP_UNCHECKED_EXCEPTIONS_KEY">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>WRAP_UNCHECKED_EXCEPTIONS_KEY</h4>
<pre>public static final&nbsp;java.lang.String WRAP_UNCHECKED_EXCEPTIONS_KEY</pre>
<div class="block">Alias to the <code>..._SNAKE_CASE</code> variation due to backward compatibility constraints. @since 2.3.27</div>
<dl>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../constant-values.html#freemarker.core.Configurable.WRAP_UNCHECKED_EXCEPTIONS_KEY">Constant Field Values</a></dd>
</dl>
</li>
</ul>
<a name="LAZY_IMPORTS_KEY_SNAKE_CASE">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>LAZY_IMPORTS_KEY_SNAKE_CASE</h4>
<pre>public static final&nbsp;java.lang.String LAZY_IMPORTS_KEY_SNAKE_CASE</pre>
<div class="block">Legacy, snake case (<code>like_this</code>) variation of the setting name. @since 2.3.25</div>
<dl>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../constant-values.html#freemarker.core.Configurable.LAZY_IMPORTS_KEY_SNAKE_CASE">Constant Field Values</a></dd>
</dl>
</li>
</ul>
<a name="LAZY_IMPORTS_KEY_CAMEL_CASE">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>LAZY_IMPORTS_KEY_CAMEL_CASE</h4>
<pre>public static final&nbsp;java.lang.String LAZY_IMPORTS_KEY_CAMEL_CASE</pre>
<div class="block">Modern, camel case (<code>likeThis</code>) variation of the setting name. @since 2.3.25</div>
<dl>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../constant-values.html#freemarker.core.Configurable.LAZY_IMPORTS_KEY_CAMEL_CASE">Constant Field Values</a></dd>
</dl>
</li>
</ul>
<a name="LAZY_IMPORTS_KEY">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>LAZY_IMPORTS_KEY</h4>
<pre>public static final&nbsp;java.lang.String LAZY_IMPORTS_KEY</pre>
<div class="block">Alias to the <code>..._SNAKE_CASE</code> variation due to backward compatibility constraints.</div>
<dl>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../constant-values.html#freemarker.core.Configurable.LAZY_IMPORTS_KEY">Constant Field Values</a></dd>
</dl>
</li>
</ul>
<a name="LAZY_AUTO_IMPORTS_KEY_SNAKE_CASE">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>LAZY_AUTO_IMPORTS_KEY_SNAKE_CASE</h4>
<pre>public static final&nbsp;java.lang.String LAZY_AUTO_IMPORTS_KEY_SNAKE_CASE</pre>
<div class="block">Legacy, snake case (<code>like_this</code>) variation of the setting name. @since 2.3.25</div>
<dl>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../constant-values.html#freemarker.core.Configurable.LAZY_AUTO_IMPORTS_KEY_SNAKE_CASE">Constant Field Values</a></dd>
</dl>
</li>
</ul>
<a name="LAZY_AUTO_IMPORTS_KEY_CAMEL_CASE">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>LAZY_AUTO_IMPORTS_KEY_CAMEL_CASE</h4>
<pre>public static final&nbsp;java.lang.String LAZY_AUTO_IMPORTS_KEY_CAMEL_CASE</pre>
<div class="block">Modern, camel case (<code>likeThis</code>) variation of the setting name. @since 2.3.25</div>
<dl>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../constant-values.html#freemarker.core.Configurable.LAZY_AUTO_IMPORTS_KEY_CAMEL_CASE">Constant Field Values</a></dd>
</dl>
</li>
</ul>
<a name="LAZY_AUTO_IMPORTS_KEY">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>LAZY_AUTO_IMPORTS_KEY</h4>
<pre>public static final&nbsp;java.lang.String LAZY_AUTO_IMPORTS_KEY</pre>
<div class="block">Alias to the <code>..._SNAKE_CASE</code> variation due to backward compatibility constraints.</div>
<dl>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../constant-values.html#freemarker.core.Configurable.LAZY_AUTO_IMPORTS_KEY">Constant Field Values</a></dd>
</dl>
</li>
</ul>
<a name="AUTO_IMPORT_KEY_SNAKE_CASE">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>AUTO_IMPORT_KEY_SNAKE_CASE</h4>
<pre>public static final&nbsp;java.lang.String AUTO_IMPORT_KEY_SNAKE_CASE</pre>
<div class="block">Legacy, snake case (<code>like_this</code>) variation of the setting name. @since 2.3.25</div>
<dl>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../constant-values.html#freemarker.core.Configurable.AUTO_IMPORT_KEY_SNAKE_CASE">Constant Field Values</a></dd>
</dl>
</li>
</ul>
<a name="AUTO_IMPORT_KEY_CAMEL_CASE">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>AUTO_IMPORT_KEY_CAMEL_CASE</h4>
<pre>public static final&nbsp;java.lang.String AUTO_IMPORT_KEY_CAMEL_CASE</pre>
<div class="block">Modern, camel case (<code>likeThis</code>) variation of the setting name. @since 2.3.25</div>
<dl>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../constant-values.html#freemarker.core.Configurable.AUTO_IMPORT_KEY_CAMEL_CASE">Constant Field Values</a></dd>
</dl>
</li>
</ul>
<a name="AUTO_IMPORT_KEY">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>AUTO_IMPORT_KEY</h4>
<pre>public static final&nbsp;java.lang.String AUTO_IMPORT_KEY</pre>
<div class="block">Alias to the <code>..._SNAKE_CASE</code> variation due to backward compatibility constraints.</div>
<dl>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../constant-values.html#freemarker.core.Configurable.AUTO_IMPORT_KEY">Constant Field Values</a></dd>
</dl>
</li>
</ul>
<a name="AUTO_INCLUDE_KEY_SNAKE_CASE">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>AUTO_INCLUDE_KEY_SNAKE_CASE</h4>
<pre>public static final&nbsp;java.lang.String AUTO_INCLUDE_KEY_SNAKE_CASE</pre>
<div class="block">Legacy, snake case (<code>like_this</code>) variation of the setting name. @since 2.3.25</div>
<dl>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../constant-values.html#freemarker.core.Configurable.AUTO_INCLUDE_KEY_SNAKE_CASE">Constant Field Values</a></dd>
</dl>
</li>
</ul>
<a name="AUTO_INCLUDE_KEY_CAMEL_CASE">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>AUTO_INCLUDE_KEY_CAMEL_CASE</h4>
<pre>public static final&nbsp;java.lang.String AUTO_INCLUDE_KEY_CAMEL_CASE</pre>
<div class="block">Modern, camel case (<code>likeThis</code>) variation of the setting name. @since 2.3.25</div>
<dl>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../constant-values.html#freemarker.core.Configurable.AUTO_INCLUDE_KEY_CAMEL_CASE">Constant Field Values</a></dd>
</dl>
</li>
</ul>
<a name="AUTO_INCLUDE_KEY">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>AUTO_INCLUDE_KEY</h4>
<pre>public static final&nbsp;java.lang.String AUTO_INCLUDE_KEY</pre>
<div class="block">Alias to the <code>..._SNAKE_CASE</code> variation due to backward compatibility constraints.</div>
<dl>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../constant-values.html#freemarker.core.Configurable.AUTO_INCLUDE_KEY">Constant Field Values</a></dd>
</dl>
</li>
</ul>
<a name="STRICT_BEAN_MODELS">
<!--   -->
</a>
<ul class="blockListLast">
<li class="blockList">
<h4>STRICT_BEAN_MODELS</h4>
<pre>@Deprecated
public static final&nbsp;java.lang.String STRICT_BEAN_MODELS</pre>
<div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;<span class="deprecationComment">Use <a href="../../freemarker/core/Configurable.html#STRICT_BEAN_MODELS_KEY"><code>STRICT_BEAN_MODELS_KEY</code></a> instead.</span></div>
<dl>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../constant-values.html#freemarker.core.Configurable.STRICT_BEAN_MODELS">Constant Field Values</a></dd>
</dl>
</li>
</ul>
</li>
</ul>
<!-- ========= CONSTRUCTOR DETAIL ======== -->
<ul class="blockList">
<li class="blockList"><a name="constructor.detail">
<!--   -->
</a>
<h3>Constructor Detail</h3>
<a name="Configurable--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>Configurable</h4>
<pre>@Deprecated
public&nbsp;Configurable()</pre>
<div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;<span class="deprecationComment">This shouldn't even be public; don't use it.</span></div>
<div class="block">Creates a top-level configurable, one that doesn't inherit from a parent, and thus stores the default values.</div>
</li>
</ul>
<a name="Configurable-freemarker.template.Version-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>Configurable</h4>
<pre>protected&nbsp;Configurable(<a href="../../freemarker/template/Version.html" title="class in freemarker.template">Version</a>&nbsp;incompatibleImprovements)</pre>
<div class="block">Intended to be called from inside FreeMarker only.
 Creates a top-level configurable, one that doesn't inherit from a parent, and thus stores the default values.
 Called by the <a href="../../freemarker/template/Configuration.html" title="class in freemarker.template"><code>Configuration</code></a> constructor.</div>
</li>
</ul>
<a name="Configurable-freemarker.core.Configurable-">
<!--   -->
</a>
<ul class="blockListLast">
<li class="blockList">
<h4>Configurable</h4>
<pre>public&nbsp;Configurable(<a href="../../freemarker/core/Configurable.html" title="class in freemarker.core">Configurable</a>&nbsp;parent)</pre>
<div class="block">Creates a new instance. Normally you do not need to use this constructor,
 as you don't use <code>Configurable</code> directly, but its subclasses.</div>
</li>
</ul>
</li>
</ul>
<!-- ============ METHOD DETAIL ========== -->
<ul class="blockList">
<li class="blockList"><a name="method.detail">
<!--   -->
</a>
<h3>Method Detail</h3>
<a name="clone--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>clone</h4>
<pre>protected&nbsp;java.lang.Object&nbsp;clone()
                          throws java.lang.CloneNotSupportedException</pre>
<dl>
<dt><span class="overrideSpecifyLabel">Overrides:</span></dt>
<dd><code>clone</code>&nbsp;in class&nbsp;<code>java.lang.Object</code></dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code>java.lang.CloneNotSupportedException</code></dd>
</dl>
</li>
</ul>
<a name="getParent--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getParent</h4>
<pre>public final&nbsp;<a href="../../freemarker/core/Configurable.html" title="class in freemarker.core">Configurable</a>&nbsp;getParent()</pre>
<div class="block">Returns the parent <a href="../../freemarker/core/Configurable.html" title="class in freemarker.core"><code>Configurable</code></a> object of this object. The parent stores the default setting values for
 this <a href="../../freemarker/core/Configurable.html" title="class in freemarker.core"><code>Configurable</code></a>. For example, the parent of a <a href="../../freemarker/template/Template.html" title="class in freemarker.template"><code>Template</code></a> object is a
 <a href="../../freemarker/template/Configuration.html" title="class in freemarker.template"><code>Configuration</code></a> object, so values not specified on <a href="../../freemarker/template/Template.html" title="class in freemarker.template"><code>Template</code></a>-level are get from the
 <a href="../../freemarker/template/Configuration.html" title="class in freemarker.template"><code>Configuration</code></a> object.
 
 <p>
 Note on the parent of <a href="../../freemarker/core/Environment.html" title="class in freemarker.core"><code>Environment</code></a>: If you set <a href="../../freemarker/template/Configuration.html#setIncompatibleImprovements-freemarker.template.Version-"><code>incompatible_improvements</code></a> to at least 2.3.22, it will be always the "main" <a href="../../freemarker/template/Template.html" title="class in freemarker.template"><code>Template</code></a>, that is, the
 template for whose processing the <a href="../../freemarker/core/Environment.html" title="class in freemarker.core"><code>Environment</code></a> was created. With lower <code>incompatible_improvements</code>,
 the current parent can temporary change <em>during template execution</em>, for example when your are inside an
 <code>#include</code>-d template (among others). Thus, don't build on which <a href="../../freemarker/template/Template.html" title="class in freemarker.template"><code>Template</code></a> the parent of
 <a href="../../freemarker/core/Environment.html" title="class in freemarker.core"><code>Environment</code></a> is during template execution, unless you set <code>incompatible_improvements</code> to 2.3.22 or
 higher.</div>
<dl>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>The parent <a href="../../freemarker/core/Configurable.html" title="class in freemarker.core"><code>Configurable</code></a> object, or <code>null</code> if this is the root <a href="../../freemarker/core/Configurable.html" title="class in freemarker.core"><code>Configurable</code></a> object
         (i.e, if it's the <a href="../../freemarker/template/Configuration.html" title="class in freemarker.template"><code>Configuration</code></a> object).</dd>
</dl>
</li>
</ul>
<a name="setClassicCompatible-boolean-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setClassicCompatible</h4>
<pre>public&nbsp;void&nbsp;setClassicCompatible(boolean&nbsp;classicCompatibility)</pre>
<div class="block">Toggles the "Classic Compatible" mode. For a comprehensive description
 of this mode, see <a href="../../freemarker/core/Configurable.html#isClassicCompatible--"><code>isClassicCompatible()</code></a>.</div>
</li>
</ul>
<a name="setClassicCompatibleAsInt-int-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setClassicCompatibleAsInt</h4>
<pre>public&nbsp;void&nbsp;setClassicCompatibleAsInt(int&nbsp;classicCompatibility)</pre>
<div class="block">Same as <a href="../../freemarker/core/Configurable.html#setClassicCompatible-boolean-"><code>setClassicCompatible(boolean)</code></a>, but allows some extra values.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>classicCompatibility</code> - <code>0</code> means <code>false</code>, <code>1</code> means <code>true</code>,
     <code>2</code> means <code>true</code> but with emulating bugs in early 2.x classic-compatibility mode. Currently
     <code>2</code> affects how booleans are converted to string; with <code>1</code> it's always <code>"true"</code>/<code>""</code>,
     but with <code>2</code> it's <code>"true"</code>/<code>"false"</code> for values wrapped by <a href="../../freemarker/ext/beans/BeansWrapper.html" title="class in freemarker.ext.beans"><code>BeansWrapper</code></a> as then
     <code>Boolean.toString()</code> prevails. Note that <code>someBoolean?string</code> will always consistently format the
     boolean according the <code>boolean_format</code> setting, just like in FreeMarker 2.3 and later.</dd>
</dl>
</li>
</ul>
<a name="isClassicCompatible--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>isClassicCompatible</h4>
<pre>public&nbsp;boolean&nbsp;isClassicCompatible()</pre>
<div class="block">Returns whether the engine runs in the "Classic Compatibile" mode.
 When this mode is active, the engine behavior is altered in following
 way: (these resemble the behavior of the 1.7.x line of FreeMarker engine,
 now named "FreeMarker Classic", hence the name).
 <ul>
 <li>handle undefined expressions gracefully. Namely when an expression
   "expr" evaluates to null:
   <ul>
     <li>
       in <tt>&lt;assign varname=expr&gt;</tt> directive, 
       or in <tt>${expr}</tt> directive,
       or in <tt>otherexpr == expr</tt>,
       or in <tt>otherexpr != expr</tt>, 
       or in <tt>hash[expr]</tt>,
       or in <tt>expr[keyOrIndex]</tt> (since 2.3.20),
       or in <tt>expr.key</tt> (since 2.3.20),
       then it's treated as empty string.
     </li>
     <li>as argument of <tt>&lt;list expr as item&gt;</tt> or 
       <tt>&lt;foreach item in expr&gt;</tt>, the loop body is not executed
       (as if it were a 0-length list)
     </li>
     <li>as argument of <tt>&lt;if&gt;</tt> directive, or on other places where a
       boolean expression is expected, it's treated as false
     </li>
   </ul>
 </li>
 <li>Non-boolean models are accepted in <tt>&lt;if&gt;</tt> directive,
   or as operands of logical operators. "Empty" models (zero-length string,
 empty sequence or hash) are evaluated as false, all others are evaluated as
 true.</li>
 <li>When boolean value is treated as a string (i.e. output in 
   <tt>${...}</tt> directive, or concatenated with other string), true 
 values are converted to string "true", false values are converted to 
 empty string. Except, if the value of the setting is <tt>2</tt>, it will be
 formatted according the <tt>boolean_format</tt> setting, just like in
 2.3.20 and later.
 </li>
 <li>Scalar models supplied to <tt>&lt;list&gt;</tt> and 
   <tt>&lt;foreach&gt;</tt> are treated as a one-element list consisting
   of the passed model.
 </li>
 <li>Paths parameter of <tt>&lt;include&gt;</tt> will be interpreted as
 absolute path.
 </li>
 </ul>
 In all other aspects, the engine is a 2.1 engine even in compatibility
 mode - you don't lose any of the new functionality by enabling it.</div>
</li>
</ul>
<a name="getClassicCompatibleAsInt--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getClassicCompatibleAsInt</h4>
<pre>public&nbsp;int&nbsp;getClassicCompatibleAsInt()</pre>
</li>
</ul>
<a name="isClassicCompatibleSet--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>isClassicCompatibleSet</h4>
<pre>public&nbsp;boolean&nbsp;isClassicCompatibleSet()</pre>
<div class="block">Tells if this setting is set directly in this object or its value is coming from the <a href="../../freemarker/core/Configurable.html#getParent--"><code>parent</code></a>.</div>
<dl>
<dt><span class="simpleTagLabel">Since:</span></dt>
<dd>2.3.24</dd>
</dl>
</li>
</ul>
<a name="setLocale-java.util.Locale-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setLocale</h4>
<pre>public&nbsp;void&nbsp;setLocale(java.util.Locale&nbsp;locale)</pre>
<div class="block">Sets the locale used for number and date formatting (among others), also the locale used for searching
 localized template variations when no locale was explicitly requested. On the <a href="../../freemarker/template/Configuration.html" title="class in freemarker.template"><code>Configuration</code></a> level it
 defaults to the default locale of system (of the JVM), for server-side application usually you should set it
 explicitly in the <a href="../../freemarker/template/Configuration.html" title="class in freemarker.template"><code>Configuration</code></a> to use the preferred locale of your application instead.</div>
<dl>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../freemarker/template/Configuration.html#getTemplate-java.lang.String-java.util.Locale-"><code>Configuration.getTemplate(String, Locale)</code></a></dd>
</dl>
</li>
</ul>
<a name="getLocale--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getLocale</h4>
<pre>public&nbsp;java.util.Locale&nbsp;getLocale()</pre>
<div class="block">Getter pair of <a href="../../freemarker/core/Configurable.html#setLocale-java.util.Locale-"><code>setLocale(Locale)</code></a>. Not <code>null</code>.</div>
</li>
</ul>
<a name="isCFormatSet--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>isCFormatSet</h4>
<pre>public&nbsp;boolean&nbsp;isCFormatSet()</pre>
<div class="block">Tells if this setting is set directly in this object or its value is coming from the <a href="../../freemarker/core/Configurable.html#getParent--"><code>parent</code></a>.</div>
<dl>
<dt><span class="simpleTagLabel">Since:</span></dt>
<dd>2.3.32</dd>
</dl>
</li>
</ul>
<a name="setCFormat-freemarker.core.CFormat-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setCFormat</h4>
<pre>public&nbsp;void&nbsp;setCFormat(<a href="../../freemarker/core/CFormat.html" title="class in freemarker.core">CFormat</a>&nbsp;cFormat)</pre>
<div class="block">Sets the format (usually a computer language) used for <code>?c</code>, <code>?cn</code>, and for the
 <code>"c"</code> (<code>"computer"</code> before 2.3.32) <a href="../../freemarker/core/Configurable.html#setNumberFormat-java.lang.String-"><code>number_format</code></a>, and the
 <code>"c"</code> <a href="../../freemarker/core/Configurable.html#setBooleanFormat-java.lang.String-"><code>boolean_format</code></a>.

 <p>The default value depends on <a href="../../freemarker/template/Configuration.html#Configuration-freemarker.template.Version-"><code>incompatible_improvements</code></a>.
 If that's 2.3.32 or higher, then it's <a href="../../freemarker/core/JavaScriptOrJSONCFormat.html#INSTANCE"><code>"JavaScript or JSON"</code></a>,
 otherwise it's <a href="../../freemarker/core/LegacyCFormat.html#INSTANCE"><code>"legacy"</code></a>.</div>
<dl>
<dt><span class="simpleTagLabel">Since:</span></dt>
<dd>2.3.32</dd>
</dl>
</li>
</ul>
<a name="getCFormat--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getCFormat</h4>
<pre>public&nbsp;<a href="../../freemarker/core/CFormat.html" title="class in freemarker.core">CFormat</a>&nbsp;getCFormat()</pre>
<div class="block">Getter pair of <a href="../../freemarker/core/Configurable.html#setCFormat-freemarker.core.CFormat-"><code>setCFormat(CFormat)</code></a>. Not <code>null</code>.</div>
<dl>
<dt><span class="simpleTagLabel">Since:</span></dt>
<dd>2.3.32</dd>
</dl>
</li>
</ul>
<a name="isLocaleSet--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>isLocaleSet</h4>
<pre>public&nbsp;boolean&nbsp;isLocaleSet()</pre>
<div class="block">Tells if this setting is set directly in this object or its value is coming from the <a href="../../freemarker/core/Configurable.html#getParent--"><code>parent</code></a>.</div>
<dl>
<dt><span class="simpleTagLabel">Since:</span></dt>
<dd>2.3.24</dd>
</dl>
</li>
</ul>
<a name="setTimeZone-java.util.TimeZone-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setTimeZone</h4>
<pre>public&nbsp;void&nbsp;setTimeZone(java.util.TimeZone&nbsp;timeZone)</pre>
<div class="block">Sets the time zone to use when formatting date/time values.
 Defaults to the system time zone (<code>TimeZone.getDefault()</code>), regardless of the "locale" FreeMarker setting,
 so in a server application you probably want to set it explicitly in the <a href="../../freemarker/core/Environment.html" title="class in freemarker.core"><code>Environment</code></a> to match the
 preferred time zone of target audience (like the Web page visitor).
 
 <p>If you or the templates set the time zone, you should probably also set
 <a href="../../freemarker/core/Configurable.html#setSQLDateAndTimeTimeZone-java.util.TimeZone-"><code>setSQLDateAndTimeTimeZone(TimeZone)</code></a>!</div>
<dl>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../freemarker/core/Configurable.html#setSQLDateAndTimeTimeZone-java.util.TimeZone-"><code>setSQLDateAndTimeTimeZone(TimeZone)</code></a></dd>
</dl>
</li>
</ul>
<a name="getTimeZone--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getTimeZone</h4>
<pre>public&nbsp;java.util.TimeZone&nbsp;getTimeZone()</pre>
<div class="block">The getter pair of <a href="../../freemarker/core/Configurable.html#setTimeZone-java.util.TimeZone-"><code>setTimeZone(TimeZone)</code></a>.</div>
</li>
</ul>
<a name="isTimeZoneSet--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>isTimeZoneSet</h4>
<pre>public&nbsp;boolean&nbsp;isTimeZoneSet()</pre>
<div class="block">Tells if this setting is set directly in this object or its value is coming from the <a href="../../freemarker/core/Configurable.html#getParent--"><code>parent</code></a>.</div>
<dl>
<dt><span class="simpleTagLabel">Since:</span></dt>
<dd>2.3.24</dd>
</dl>
</li>
</ul>
<a name="setSQLDateAndTimeTimeZone-java.util.TimeZone-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setSQLDateAndTimeTimeZone</h4>
<pre>public&nbsp;void&nbsp;setSQLDateAndTimeTimeZone(java.util.TimeZone&nbsp;tz)</pre>
<div class="block">Sets the time zone used when dealing with <code>java.sql.Date</code> and
 <code>java.sql.Time</code> values. It defaults to <code>null</code> for backward compatibility, but in most
 applications this should be set to the JVM default time zone (server default time zone), because that's what
 most JDBC drivers will use when constructing the <code>java.sql.Date</code> and
 <code>java.sql.Time</code> values. If this setting is <code>null</code>, FreeMarker will use the value of
 (<a href="../../freemarker/core/Configurable.html#getTimeZone--"><code>getTimeZone()</code></a>) for <code>java.sql.Date</code> and <code>java.sql.Time</code> values,
 which often gives bad results.
 
 <p>This setting doesn't influence the formatting of other kind of values (like of
 <code>java.sql.Timestamp</code> or plain <code>java.util.Date</code> values).
 
 <p>To decide what value you need, a few things has to be understood:
 <ul>
   <li>Date-only and time-only values in SQL-oriented databases usually store calendar and clock field
   values directly (year, month, day, or hour, minute, seconds (with decimals)), as opposed to a set of points
   on the physical time line. Thus, unlike SQL timestamps, these values usually aren't meant to be shown
   differently depending on the time zone of the audience.
   
   <li>When a JDBC query has to return a date-only or time-only value, it has to convert it to a point on the
   physical time line, because that's what <code>Date</code> and its subclasses store (milliseconds since
   the epoch). Obviously, this is impossible to do. So JDBC just chooses a physical time which, when rendered
   <em>with the JVM default time zone</em>, will give the same field values as those stored
   in the database. (Actually, you can give JDBC a calendar, and so it can use other time zones too, but most
   application won't care using those overloads.) For example, assume that the system time zone is GMT+02:00.
   Then, 2014-07-12 in the database will be translated to physical time 2014-07-11 22:00:00 UTC, because that
   rendered in GMT+02:00 gives 2014-07-12 00:00:00. Similarly, 11:57:00 in the database will be translated to
   physical time 1970-01-01 09:57:00 UTC. Thus, the physical time stored in the returned value depends on the
   default system time zone of the JDBC client, not just on the content of the database. (This used to be the
   default behavior of ORM-s, like Hibernate, too.)
   
   <li>The value of the <code>time_zone</code> FreeMarker configuration setting sets the time zone used for the
   template output. For example, when a web page visitor has a preferred time zone, the web application framework
   may calls <a href="../../freemarker/core/Environment.html#setTimeZone-java.util.TimeZone-"><code>Environment.setTimeZone(TimeZone)</code></a> with that time zone. Thus, the visitor will
   see <code>java.sql.Timestamp</code> and plain <code>java.util.Date</code> values as
   they look in his own time zone. While
   this is desirable for those types, as they meant to represent physical points on the time line, this is not
   necessarily desirable for date-only and time-only values. When <code>sql_date_and_time_time_zone</code> is
   <code>null</code>, <code>time_zone</code> is used for rendering all kind of date/time/dateTime values, including
   <code>java.sql.Date</code> and <code>java.sql.Time</code>, and then if, for example,
   <code>time_zone</code> is GMT+00:00, the
   values from the earlier examples will be shown as 2014-07-11 (one day off) and 09:57:00 (2 hours off). While
   those are the time zone correct renderings, those values are probably meant to be shown "as is".
   
   <li>You may wonder why this setting isn't simply "SQL time zone", that is, why's this time zone not applied to
   <code>java.sql.Timestamp</code> values as well. Timestamps in databases refer to a point on
   the physical time line, and thus doesn't have the inherent problem of date-only and time-only values.
   FreeMarker assumes that the JDBC driver converts time stamps coming from the database so that they store
   the distance from the epoch (1970-01-01 00:00:00 UTC), as requested by the <code>Date</code> API.
   Then time stamps can be safely rendered in different time zones, and thus need no special treatment.
 </ul></div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>tz</code> - Maybe <code>null</code>, in which case <code>java.sql.Date</code> and
          <code>java.sql.Time</code> values will be formatted in the time zone returned by
          <a href="../../freemarker/core/Configurable.html#getTimeZone--"><code>getTimeZone()</code></a>.
          (Note that since <code>null</code> is an allowed value for this setting, it will not cause
          <a href="../../freemarker/core/Configurable.html#getSQLDateAndTimeTimeZone--"><code>getSQLDateAndTimeTimeZone()</code></a> to fall back to the parent configuration.)</dd>
<dt><span class="simpleTagLabel">Since:</span></dt>
<dd>2.3.21</dd>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../freemarker/core/Configurable.html#setTimeZone-java.util.TimeZone-"><code>setTimeZone(TimeZone)</code></a></dd>
</dl>
</li>
</ul>
<a name="getSQLDateAndTimeTimeZone--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getSQLDateAndTimeTimeZone</h4>
<pre>public&nbsp;java.util.TimeZone&nbsp;getSQLDateAndTimeTimeZone()</pre>
<div class="block">The getter pair of <a href="../../freemarker/core/Configurable.html#setSQLDateAndTimeTimeZone-java.util.TimeZone-"><code>setSQLDateAndTimeTimeZone(TimeZone)</code></a>.</div>
<dl>
<dt><span class="returnLabel">Returns:</span></dt>
<dd><code>null</code> if the value of <a href="../../freemarker/core/Configurable.html#getTimeZone--"><code>getTimeZone()</code></a> should be used for formatting
     <code>java.sql.Date</code> and <code>java.sql.Time</code> values, otherwise the time zone
     that should be used to format the values of those two types.</dd>
<dt><span class="simpleTagLabel">Since:</span></dt>
<dd>2.3.21</dd>
</dl>
</li>
</ul>
<a name="isSQLDateAndTimeTimeZoneSet--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>isSQLDateAndTimeTimeZoneSet</h4>
<pre>public&nbsp;boolean&nbsp;isSQLDateAndTimeTimeZoneSet()</pre>
<div class="block">Tells if this setting is set directly in this object or its value is coming from the <a href="../../freemarker/core/Configurable.html#getParent--"><code>parent</code></a>.</div>
<dl>
<dt><span class="simpleTagLabel">Since:</span></dt>
<dd>2.3.24</dd>
</dl>
</li>
</ul>
<a name="setNumberFormat-java.lang.String-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setNumberFormat</h4>
<pre>public&nbsp;void&nbsp;setNumberFormat(java.lang.String&nbsp;numberFormat)</pre>
<div class="block">Sets the number format used to convert numbers to strings. Currently, this is one of these:
 <ul>
   <li><code>"number"</code>: The number format returned by <code>NumberFormat.getNumberInstance(Locale)</code>. This is the
       default.</li>
   <li><code>"c"</code> (recognized since 2.3.32): The number format used by FTL's <code>c</code> built-in (like in
       <code>someNumber?c</code>). So with this <code>${someNumber}</code> will output the same as
       <code>${someNumber?c}</code>. This should only be used if the template solely generates source code,
       configuration file, or other content that's not read by normal users. If the template contains parts that's
       read by normal users (like typical a web page), you are not supposed to use this.</li>
   <li><code>"computer"</code>: The old (deprecated) name for <code>"c"</code>. Recognized by all FreeMarker versions.</li>
   <li><code>"currency"</code>: The number format returned by <code>NumberFormat.getCurrencyInstance(Locale)</code></li>
   <li><code>"percent"</code>: The number format returned by <code>NumberFormat.getPercentInstance(Locale)</code></li>
   <li><code>DecimalFormat</code> pattern (like <code>"0.##"</code>). This syntax is extended by FreeMarker
       so that you can specify options like the rounding mode and the symbols used after a 2nd semicolon. For
       example, <code>",000;; roundingMode=halfUp groupingSeparator=_"</code> will format numbers like <code>",000"</code>
       would, but with half-up rounding mode, and <code>_</code> as the group separator. See more about "extended Java
       decimal format" in the FreeMarker Manual.
       </li>
   <li>If the string starts with <code>@</code> character followed by a letter then it's interpreted as a custom number
       format, but only if either <a href="../../freemarker/template/Configuration.html#getIncompatibleImprovements--"><code>Configuration.getIncompatibleImprovements()</code></a> is at least 2.3.24, or
       there's any custom formats defined (even if custom date/time/dateTime format). The format of a such string
       is <code>"@<i>name</i>"</code> or <code>"@<i>name</i> <i>parameters</i>"</code>, where
       <code><i>name</i></code> is the key in the <code>Map</code> set by <a href="../../freemarker/core/Configurable.html#setCustomNumberFormats-java.util.Map-"><code>setCustomNumberFormats(Map)</code></a>, and
       <code><i>parameters</i></code> is parsed by the custom <a href="../../freemarker/core/TemplateNumberFormat.html" title="class in freemarker.core"><code>TemplateNumberFormat</code></a>.
   </li>
 </ul>

 <p>Defaults to <tt>"number"</tt>.</div>
</li>
</ul>
<a name="getNumberFormat--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getNumberFormat</h4>
<pre>public&nbsp;java.lang.String&nbsp;getNumberFormat()</pre>
<div class="block">Getter pair of <a href="../../freemarker/core/Configurable.html#setNumberFormat-java.lang.String-"><code>setNumberFormat(String)</code></a>.</div>
</li>
</ul>
<a name="isNumberFormatSet--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>isNumberFormatSet</h4>
<pre>public&nbsp;boolean&nbsp;isNumberFormatSet()</pre>
<div class="block">Tells if this setting is set directly in this object or its value is coming from the <a href="../../freemarker/core/Configurable.html#getParent--"><code>parent</code></a>.</div>
<dl>
<dt><span class="simpleTagLabel">Since:</span></dt>
<dd>2.3.24</dd>
</dl>
</li>
</ul>
<a name="getCustomNumberFormats--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getCustomNumberFormats</h4>
<pre>public&nbsp;java.util.Map&lt;java.lang.String,? extends <a href="../../freemarker/core/TemplateNumberFormatFactory.html" title="class in freemarker.core">TemplateNumberFormatFactory</a>&gt;&nbsp;getCustomNumberFormats()</pre>
<div class="block">Getter pair of <a href="../../freemarker/core/Configurable.html#setCustomNumberFormats-java.util.Map-"><code>setCustomNumberFormats(Map)</code></a>; do not modify the returned <code>Map</code>! To be consistent
 with other setting getters, if this setting was set directly on this <a href="../../freemarker/core/Configurable.html" title="class in freemarker.core"><code>Configurable</code></a> object, this simply
 returns that value, otherwise it returns the value from the parent <a href="../../freemarker/core/Configurable.html" title="class in freemarker.core"><code>Configurable</code></a>. So beware, the returned
 value doesn't reflect the <code>Map</code> key granularity fallback logic that FreeMarker actually uses for this
 setting (for that, use <a href="../../freemarker/core/Configurable.html#getCustomNumberFormat-java.lang.String-"><code>getCustomNumberFormat(String)</code></a>). The returned value isn't a snapshot; it may or
 may not shows the changes later made to this setting on this <a href="../../freemarker/core/Configurable.html" title="class in freemarker.core"><code>Configurable</code></a> level (but usually it's well
 defined if until what point settings are possibly modified).
 
 <p>
 The return value is never <code>null</code>; called on the <a href="../../freemarker/template/Configuration.html" title="class in freemarker.template"><code>Configuration</code></a> (top) level, it defaults to an empty
 <code>Map</code>.</div>
<dl>
<dt><span class="simpleTagLabel">Since:</span></dt>
<dd>2.3.24</dd>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../freemarker/core/Configurable.html#getCustomNumberFormatsWithoutFallback--"><code>getCustomNumberFormatsWithoutFallback()</code></a></dd>
</dl>
</li>
</ul>
<a name="getCustomNumberFormatsWithoutFallback--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getCustomNumberFormatsWithoutFallback</h4>
<pre>public&nbsp;java.util.Map&lt;java.lang.String,? extends <a href="../../freemarker/core/TemplateNumberFormatFactory.html" title="class in freemarker.core">TemplateNumberFormatFactory</a>&gt;&nbsp;getCustomNumberFormatsWithoutFallback()</pre>
<div class="block">Like <a href="../../freemarker/core/Configurable.html#getCustomNumberFormats--"><code>getCustomNumberFormats()</code></a>, but doesn't fall back to the parent <a href="../../freemarker/core/Configurable.html" title="class in freemarker.core"><code>Configurable</code></a>.</div>
<dl>
<dt><span class="simpleTagLabel">Since:</span></dt>
<dd>2.3.25</dd>
</dl>
</li>
</ul>
<a name="setCustomNumberFormats-java.util.Map-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setCustomNumberFormats</h4>
<pre>public&nbsp;void&nbsp;setCustomNumberFormats(java.util.Map&lt;java.lang.String,? extends <a href="../../freemarker/core/TemplateNumberFormatFactory.html" title="class in freemarker.core">TemplateNumberFormatFactory</a>&gt;&nbsp;customNumberFormats)</pre>
<div class="block">Associates names with formatter factories, which then can be referred by the <a href="../../freemarker/core/Configurable.html#setNumberFormat-java.lang.String-"><code>number_format</code></a> setting with values starting with <code>@<i>name</i></code>. Beware, if you specify any custom
 formats here, an initial <code>@</code> followed by a letter will have special meaning in number/date/time/datetime
 format strings, even if <a href="../../freemarker/template/Configuration.html#getIncompatibleImprovements--"><code>incompatible_improvements</code></a> is less
 than 2.3.24 (starting with <a href="../../freemarker/template/Configuration.html#getIncompatibleImprovements--"><code>incompatible_improvements</code></a> 2.3.24
 <code>@</code> always has special meaning).</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>customNumberFormats</code> - Can't be <code>null</code>. The name must start with an UNICODE letter, and can only contain UNICODE
            letters and digits (not <code>_</code>).</dd>
<dt><span class="simpleTagLabel">Since:</span></dt>
<dd>2.3.24</dd>
</dl>
</li>
</ul>
<a name="isCustomNumberFormatsSet--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>isCustomNumberFormatsSet</h4>
<pre>public&nbsp;boolean&nbsp;isCustomNumberFormatsSet()</pre>
<div class="block">Tells if this setting is set directly in this object or its value is coming from the <a href="../../freemarker/core/Configurable.html#getParent--"><code>parent</code></a>.</div>
<dl>
<dt><span class="simpleTagLabel">Since:</span></dt>
<dd>2.3.24</dd>
</dl>
</li>
</ul>
<a name="getCustomNumberFormat-java.lang.String-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getCustomNumberFormat</h4>
<pre>public&nbsp;<a href="../../freemarker/core/TemplateNumberFormatFactory.html" title="class in freemarker.core">TemplateNumberFormatFactory</a>&nbsp;getCustomNumberFormat(java.lang.String&nbsp;name)</pre>
<div class="block">Gets the custom name format registered for the name.</div>
<dl>
<dt><span class="simpleTagLabel">Since:</span></dt>
<dd>2.3.24</dd>
</dl>
</li>
</ul>
<a name="hasCustomFormats--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>hasCustomFormats</h4>
<pre>public&nbsp;boolean&nbsp;hasCustomFormats()</pre>
<div class="block">Tells if this configurable object or its parent defines any custom formats.</div>
<dl>
<dt><span class="simpleTagLabel">Since:</span></dt>
<dd>2.3.24</dd>
</dl>
</li>
</ul>
<a name="setBooleanFormat-java.lang.String-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setBooleanFormat</h4>
<pre>public&nbsp;void&nbsp;setBooleanFormat(java.lang.String&nbsp;booleanFormat)</pre>
<div class="block">The string value for the boolean <code>true</code> and <code>false</code> values, usually intended for human consumption
 (not for a computer language), separated with comma. For example, <code>"yes,no"</code>. Note that white-space is
 significant, so <code>"yes, no"</code> is WRONG (unless you want that leading space before "no"). Because the proper
 way of formatting booleans depends on the context too much, it's probably the best to leave this setting on its
 default, which will enforce explicit formatting, like <code>${aBoolean?string('on', 'off')}</code>.
 
 <p>For backward compatibility the default is <code>"true,false"</code>, but using that value is denied for automatic
 boolean-to-string conversion, like <code>${myBoolean}</code> will fail with it. If you generate the piece of
 output for "computer audience" as opposed to "human audience", then you should write
 <code>${myBoolean?c}</code>, which will print <code>true</code> or <code>false</code>. If you really want to always
 format for computer audience, then it's might be reasonable to set this setting to <code>c</code>.
 
 <p>Note that automatic boolean-to-string conversion only exists since FreeMarker 2.3.20. Earlier this setting
 only influenced the result of <code>myBool?string</code>.</div>
</li>
</ul>
<a name="getBooleanFormat--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getBooleanFormat</h4>
<pre>public&nbsp;java.lang.String&nbsp;getBooleanFormat()</pre>
<div class="block">The getter pair of <a href="../../freemarker/core/Configurable.html#setBooleanFormat-java.lang.String-"><code>setBooleanFormat(String)</code></a>.</div>
</li>
</ul>
<a name="isBooleanFormatSet--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>isBooleanFormatSet</h4>
<pre>public&nbsp;boolean&nbsp;isBooleanFormatSet()</pre>
<div class="block">Tells if this setting is set directly in this object or its value is coming from the <a href="../../freemarker/core/Configurable.html#getParent--"><code>parent</code></a>.</div>
<dl>
<dt><span class="simpleTagLabel">Since:</span></dt>
<dd>2.3.24</dd>
</dl>
</li>
</ul>
<a name="setTimeFormat-java.lang.String-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setTimeFormat</h4>
<pre>public&nbsp;void&nbsp;setTimeFormat(java.lang.String&nbsp;timeFormat)</pre>
<div class="block">Sets the format used to convert <code>Date</code>-s that are time (no date part) values to string-s, also
 the format that <code>someString?time</code> will use to parse strings.

 <p>For the possible values see <a href="../../freemarker/core/Configurable.html#setDateTimeFormat-java.lang.String-"><code>setDateTimeFormat(String)</code></a>.

 <p>Defaults to <code>""</code>, which is equivalent to <code>"medium"</code>.</div>
</li>
</ul>
<a name="getTimeFormat--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getTimeFormat</h4>
<pre>public&nbsp;java.lang.String&nbsp;getTimeFormat()</pre>
<div class="block">The getter pair of <a href="../../freemarker/core/Configurable.html#setTimeFormat-java.lang.String-"><code>setTimeFormat(String)</code></a>.</div>
</li>
</ul>
<a name="isTimeFormatSet--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>isTimeFormatSet</h4>
<pre>public&nbsp;boolean&nbsp;isTimeFormatSet()</pre>
<div class="block">Tells if this setting is set directly in this object or its value is coming from the <a href="../../freemarker/core/Configurable.html#getParent--"><code>parent</code></a>.</div>
<dl>
<dt><span class="simpleTagLabel">Since:</span></dt>
<dd>2.3.24</dd>
</dl>
</li>
</ul>
<a name="setDateFormat-java.lang.String-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setDateFormat</h4>
<pre>public&nbsp;void&nbsp;setDateFormat(java.lang.String&nbsp;dateFormat)</pre>
<div class="block">Sets the format used to convert <code>Date</code>-s that are date-only (no time part) values to string-s,
 also the format that <code>someString?date</code> will use to parse strings.
 
 <p>For the possible values see <a href="../../freemarker/core/Configurable.html#setDateTimeFormat-java.lang.String-"><code>setDateTimeFormat(String)</code></a>.
   
 <p>Defaults to <code>""</code> which is equivalent to <code>"medium"</code>.</div>
</li>
</ul>
<a name="getDateFormat--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getDateFormat</h4>
<pre>public&nbsp;java.lang.String&nbsp;getDateFormat()</pre>
<div class="block">The getter pair of <a href="../../freemarker/core/Configurable.html#setDateFormat-java.lang.String-"><code>setDateFormat(String)</code></a>.</div>
</li>
</ul>
<a name="isDateFormatSet--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>isDateFormatSet</h4>
<pre>public&nbsp;boolean&nbsp;isDateFormatSet()</pre>
<div class="block">Tells if this setting is set directly in this object or its value is coming from the <a href="../../freemarker/core/Configurable.html#getParent--"><code>parent</code></a>.</div>
<dl>
<dt><span class="simpleTagLabel">Since:</span></dt>
<dd>2.3.24</dd>
</dl>
</li>
</ul>
<a name="setDateTimeFormat-java.lang.String-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setDateTimeFormat</h4>
<pre>public&nbsp;void&nbsp;setDateTimeFormat(java.lang.String&nbsp;dateTimeFormat)</pre>
<div class="block">Sets the format used to convert <code>Date</code>-s that are date-time (timestamp) values to string-s,
 also the format that <code>someString?datetime</code> will use to parse strings.
 
 <p>The possible setting values are (the quotation marks aren't part of the value itself):
 
 <ul>
   <li><p>Patterns accepted by Java's <code>SimpleDateFormat</code>, for example <code>"dd.MM.yyyy HH:mm:ss"</code> (where
       <code>HH</code> means 24 hours format) or <code>"MM/dd/yyyy hh:mm:ss a"</code> (where <code>a</code> prints AM or PM, if
       the current language is English).
   
   <li><p><code>"xs"</code> for XML Schema format, or <code>"iso"</code> for ISO 8601:2004 format.
       These formats allow various additional options, separated with space, like in
       <code>"iso m nz"</code> (or with <code>_</code>, like in <code>"iso_m_nz"</code>; this is useful in a case like
       <code>lastModified?string.iso_m_nz</code>). The options and their meanings are:
       
       <ul>
         <li><p>Accuracy options:<br>
             <code>ms</code> = Milliseconds, always shown with all 3 digits, even if it's all 0-s.
                     Example: <code>13:45:05.800</code><br>
             <code>s</code> = Seconds (fraction seconds are dropped even if non-0), like <code>13:45:05</code><br>
             <code>m</code> = Minutes, like <code>13:45</code>. This isn't allowed for "xs".<br>
             <code>h</code> = Hours, like <code>13</code>. This isn't allowed for "xs".<br>
             Neither = Up to millisecond accuracy, but trailing millisecond 0-s are removed, also the whole
                     milliseconds part if it would be 0 otherwise. Example: <code>13:45:05.8</code>
                     
         <li><p>Time zone offset visibility options:<br>
             <code>fz</code> = "Force Zone", always show time zone offset (even for for
                     <code>java.sql.Date</code> and <code>java.sql.Time</code> values).
                     But, because ISO 8601 doesn't allow for dates (means date without time of the day) to
                     show the zone offset, this option will have no effect in the case of <code>"iso"</code> with
                     dates.<br>
             <code>nz</code> = "No Zone", never show time zone offset<br>
             Neither = always show time zone offset, except for <code>java.sql.Date</code>
                     and <code>java.sql.Time</code>, and for <code>"iso"</code> date values.
                     
         <li><p>Time zone options:<br>
             <code>u</code> = Use UTC instead of what the <code>time_zone</code> setting suggests. However,
                     <code>java.sql.Date</code> and <code>java.sql.Time</code> aren't affected
                     by this (see <a href="../../freemarker/core/Configurable.html#setSQLDateAndTimeTimeZone-java.util.TimeZone-"><code>setSQLDateAndTimeTimeZone(TimeZone)</code></a> to understand why)<br>
             <code>fu</code> = "Force UTC", that is, use UTC instead of what the <code>time_zone</code> or the
                     <code>sql_date_and_time_time_zone</code> setting suggests. This also effects
                     <code>java.sql.Date</code> and <code>java.sql.Time</code> values<br>
             Neither = Use the time zone suggested by the <code>time_zone</code> or the
                     <code>sql_date_and_time_time_zone</code> configuration setting (<a href="../../freemarker/core/Configurable.html#setTimeZone-java.util.TimeZone-"><code>setTimeZone(TimeZone)</code></a> and
                     <a href="../../freemarker/core/Configurable.html#setSQLDateAndTimeTimeZone-java.util.TimeZone-"><code>setSQLDateAndTimeTimeZone(TimeZone)</code></a>).
       </ul>
       
       <p>The options can be specified in any order.</p>
       
       <p>Options from the same category are mutually exclusive, like using <code>m</code> and <code>s</code>
       together is an error.
       
       <p>The accuracy and time zone offset visibility options don't influence parsing, only formatting.
       For example, even if you use "iso m nz", "2012-01-01T15:30:05.125+01" will be parsed successfully and with
       milliseconds accuracy.
       The time zone options (like "u") influence what time zone is chosen only when parsing a string that doesn't
       contain time zone offset.
       
       <p>Parsing with <code>"iso"</code> understands both extend format and basic format, like
       <code>20141225T235018</code>. It doesn't, however, support the parsing of all kind of ISO 8601 strings: if
       there's a date part, it must use year, month and day of the month values (not week of the year), and the
       day can't be omitted.
       
       <p>The output of <code>"iso"</code> is deliberately so that it's also a good representation of the value with
       XML Schema format, except for 0 and negative years, where it's impossible. Also note that the time zone
       offset is omitted for date values in the <code>"iso"</code> format, while it's preserved for the <code>"xs"</code>
       format.
       
   <li><p><code>"short"</code>, <code>"medium"</code>, <code>"long"</code>, or <code>"full"</code>, which that has locale-dependent
       meaning defined by the Java platform (see in the documentation of <code>DateFormat</code>).
       For date-time values, you can specify the length of the date and time part independently, be separating
       them with <code>_</code>, like <code>"short_medium"</code>. (<code>"medium"</code> means
       <code>"medium_medium"</code> for date-time values.)
       
   <li><p>Anything that starts with <code>"@"</code> followed by a letter is interpreted as a custom
       date/time/dateTime format, but only if either <a href="../../freemarker/template/Configuration.html#getIncompatibleImprovements--"><code>Configuration.getIncompatibleImprovements()</code></a>
       is at least 2.3.24, or there's any custom formats defined (even if custom number format). The format of
       such string is <code>"@<i>name</i>"</code> or <code>"@<i>name</i> <i>parameters</i>"</code>, where
       <code><i>name</i></code> is the key in the <code>Map</code> set by <a href="../../freemarker/core/Configurable.html#setCustomDateFormats-java.util.Map-"><code>setCustomDateFormats(Map)</code></a>, and
       <code><i>parameters</i></code> is parsed by the custom number format.
       
 </ul> 
 
 <p>Defaults to <code>""</code>, which is equivalent to <code>"medium_medium"</code>.</div>
</li>
</ul>
<a name="getDateTimeFormat--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getDateTimeFormat</h4>
<pre>public&nbsp;java.lang.String&nbsp;getDateTimeFormat()</pre>
<div class="block">The getter pair of <a href="../../freemarker/core/Configurable.html#setDateTimeFormat-java.lang.String-"><code>setDateTimeFormat(String)</code></a>.</div>
</li>
</ul>
<a name="isDateTimeFormatSet--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>isDateTimeFormatSet</h4>
<pre>public&nbsp;boolean&nbsp;isDateTimeFormatSet()</pre>
<div class="block">Tells if this setting is set directly in this object or its value is coming from the <a href="../../freemarker/core/Configurable.html#getParent--"><code>parent</code></a>.</div>
<dl>
<dt><span class="simpleTagLabel">Since:</span></dt>
<dd>2.3.24</dd>
</dl>
</li>
</ul>
<a name="getCustomDateFormats--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getCustomDateFormats</h4>
<pre>public&nbsp;java.util.Map&lt;java.lang.String,? extends <a href="../../freemarker/core/TemplateDateFormatFactory.html" title="class in freemarker.core">TemplateDateFormatFactory</a>&gt;&nbsp;getCustomDateFormats()</pre>
<div class="block">Getter pair of <a href="../../freemarker/core/Configurable.html#setCustomDateFormats-java.util.Map-"><code>setCustomDateFormats(Map)</code></a>; do not modify the returned <code>Map</code>! To be consistent with
 other setting getters, if this setting was set directly on this <a href="../../freemarker/core/Configurable.html" title="class in freemarker.core"><code>Configurable</code></a> object, this simply returns
 that value, otherwise it returns the value from the parent <a href="../../freemarker/core/Configurable.html" title="class in freemarker.core"><code>Configurable</code></a>. So beware, the returned value
 doesn't reflect the <code>Map</code> key granularity fallback logic that FreeMarker actually uses for this setting
 (for that, use <a href="../../freemarker/core/Configurable.html#getCustomDateFormat-java.lang.String-"><code>getCustomDateFormat(String)</code></a>). The returned value isn't a snapshot; it may or may not
 shows the changes later made to this setting on this <a href="../../freemarker/core/Configurable.html" title="class in freemarker.core"><code>Configurable</code></a> level (but usually it's well defined if
 until what point settings are possibly modified).
 
 <p>
 The return value is never <code>null</code>; called on the <a href="../../freemarker/template/Configuration.html" title="class in freemarker.template"><code>Configuration</code></a> (top) level, it defaults to an empty
 <code>Map</code>.</div>
<dl>
<dt><span class="simpleTagLabel">Since:</span></dt>
<dd>2.3.24</dd>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../freemarker/core/Configurable.html#getCustomDateFormatsWithoutFallback--"><code>getCustomDateFormatsWithoutFallback()</code></a></dd>
</dl>
</li>
</ul>
<a name="getCustomDateFormatsWithoutFallback--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getCustomDateFormatsWithoutFallback</h4>
<pre>public&nbsp;java.util.Map&lt;java.lang.String,? extends <a href="../../freemarker/core/TemplateDateFormatFactory.html" title="class in freemarker.core">TemplateDateFormatFactory</a>&gt;&nbsp;getCustomDateFormatsWithoutFallback()</pre>
<div class="block">Like <a href="../../freemarker/core/Configurable.html#getCustomDateFormats--"><code>getCustomDateFormats()</code></a>, but doesn't fall back to the parent <a href="../../freemarker/core/Configurable.html" title="class in freemarker.core"><code>Configurable</code></a>, nor does it
 provide a non-<code>null</code> default when called as the method of a <a href="../../freemarker/template/Configuration.html" title="class in freemarker.template"><code>Configuration</code></a>.</div>
<dl>
<dt><span class="simpleTagLabel">Since:</span></dt>
<dd>2.3.25</dd>
</dl>
</li>
</ul>
<a name="setCustomDateFormats-java.util.Map-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setCustomDateFormats</h4>
<pre>public&nbsp;void&nbsp;setCustomDateFormats(java.util.Map&lt;java.lang.String,? extends <a href="../../freemarker/core/TemplateDateFormatFactory.html" title="class in freemarker.core">TemplateDateFormatFactory</a>&gt;&nbsp;customDateFormats)</pre>
<div class="block">Associates names with formatter factories, which then can be referred by the <a href="../../freemarker/core/Configurable.html#setDateTimeFormat-java.lang.String-"><code>date_format</code></a>, <a href="../../freemarker/core/Configurable.html#setDateTimeFormat-java.lang.String-"><code>time_format</code></a>, and <a href="../../freemarker/core/Configurable.html#setDateTimeFormat-java.lang.String-"><code>datetime_format</code></a> settings with values starting with <code>@<i>name</i></code>. Beware, if you specify any custom
 formats here, an initial <code>@</code> followed by a letter will have special meaning in number/date/time/datetime
 format strings, even if <a href="../../freemarker/template/Configuration.html#getIncompatibleImprovements--"><code>incompatible_improvements</code></a> is less
 than 2.3.24 (starting with <a href="../../freemarker/template/Configuration.html#getIncompatibleImprovements--"><code>incompatible_improvements</code></a> 2.3.24
 <code>@</code> always has special meaning).</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>customDateFormats</code> - Can't be <code>null</code>. The name must start with an UNICODE letter, and can only contain UNICODE
            letters and digits.</dd>
<dt><span class="simpleTagLabel">Since:</span></dt>
<dd>2.3.24</dd>
</dl>
</li>
</ul>
<a name="isCustomDateFormatsSet--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>isCustomDateFormatsSet</h4>
<pre>public&nbsp;boolean&nbsp;isCustomDateFormatsSet()</pre>
<div class="block">Tells if this setting is set directly in this object or its value is coming from the <a href="../../freemarker/core/Configurable.html#getParent--"><code>parent</code></a>.</div>
<dl>
<dt><span class="simpleTagLabel">Since:</span></dt>
<dd>2.3.24</dd>
</dl>
</li>
</ul>
<a name="getCustomDateFormat-java.lang.String-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getCustomDateFormat</h4>
<pre>public&nbsp;<a href="../../freemarker/core/TemplateDateFormatFactory.html" title="class in freemarker.core">TemplateDateFormatFactory</a>&nbsp;getCustomDateFormat(java.lang.String&nbsp;name)</pre>
<div class="block">Gets the custom name format registered for the name.</div>
<dl>
<dt><span class="simpleTagLabel">Since:</span></dt>
<dd>2.3.24</dd>
</dl>
</li>
</ul>
<a name="setTemplateExceptionHandler-freemarker.template.TemplateExceptionHandler-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setTemplateExceptionHandler</h4>
<pre>public&nbsp;void&nbsp;setTemplateExceptionHandler(<a href="../../freemarker/template/TemplateExceptionHandler.html" title="interface in freemarker.template">TemplateExceptionHandler</a>&nbsp;templateExceptionHandler)</pre>
<div class="block">Sets the exception handler used to handle exceptions occurring inside templates.
 The default is <a href="../../freemarker/template/TemplateExceptionHandler.html#DEBUG_HANDLER"><code>TemplateExceptionHandler.DEBUG_HANDLER</code></a>. The recommended values are:
 
 <ul>
   <li>In production systems: <a href="../../freemarker/template/TemplateExceptionHandler.html#RETHROW_HANDLER"><code>TemplateExceptionHandler.RETHROW_HANDLER</code></a>
   <li>During development of HTML templates: <a href="../../freemarker/template/TemplateExceptionHandler.html#HTML_DEBUG_HANDLER"><code>TemplateExceptionHandler.HTML_DEBUG_HANDLER</code></a>
   <li>During development of non-HTML templates: <a href="../../freemarker/template/TemplateExceptionHandler.html#DEBUG_HANDLER"><code>TemplateExceptionHandler.DEBUG_HANDLER</code></a>
 </ul>
 
 <p>All of these will let the exception propagate further, so that you can catch it around
 <a href="../../freemarker/template/Template.html#process-java.lang.Object-java.io.Writer-"><code>Template.process(Object, Writer)</code></a> for example. The difference is in what they print on the output before
 they do that.
 
 <p>Note that the <a href="../../freemarker/template/TemplateExceptionHandler.html" title="interface in freemarker.template"><code>TemplateExceptionHandler</code></a> is not meant to be used for generating HTTP error pages.
 Neither is it meant to be used to roll back the printed output. These should be solved outside template
 processing when the exception raises from <a href="../../freemarker/template/Template.html#process-java.lang.Object-java.io.Writer-"><code>Template.process</code></a>.
 <a href="../../freemarker/template/TemplateExceptionHandler.html" title="interface in freemarker.template"><code>TemplateExceptionHandler</code></a> meant to be used if you want to include special content <em>in</em> the template
 output, or if you want to suppress certain exceptions. If you suppress an exception, and the
 <a href="../../freemarker/core/Configurable.html#getLogTemplateExceptions--"><code>getLogTemplateExceptions()</code></a> returns <code>false</code>, then it's the responsibility of the
 <a href="../../freemarker/template/TemplateExceptionHandler.html" title="interface in freemarker.template"><code>TemplateExceptionHandler</code></a> to log the exception (if you want it to be logged).</div>
<dl>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../freemarker/core/Configurable.html#setLogTemplateExceptions-boolean-"><code>setLogTemplateExceptions(boolean)</code></a>, 
<a href="../../freemarker/core/Configurable.html#setAttemptExceptionReporter-freemarker.template.AttemptExceptionReporter-"><code>setAttemptExceptionReporter(AttemptExceptionReporter)</code></a></dd>
</dl>
</li>
</ul>
<a name="getTemplateExceptionHandler--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getTemplateExceptionHandler</h4>
<pre>public&nbsp;<a href="../../freemarker/template/TemplateExceptionHandler.html" title="interface in freemarker.template">TemplateExceptionHandler</a>&nbsp;getTemplateExceptionHandler()</pre>
<div class="block">The getter pair of <a href="../../freemarker/core/Configurable.html#setTemplateExceptionHandler-freemarker.template.TemplateExceptionHandler-"><code>setTemplateExceptionHandler(TemplateExceptionHandler)</code></a>.</div>
</li>
</ul>
<a name="isTemplateExceptionHandlerSet--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>isTemplateExceptionHandlerSet</h4>
<pre>public&nbsp;boolean&nbsp;isTemplateExceptionHandlerSet()</pre>
<div class="block">Tells if this setting is set directly in this object or its value is coming from the <a href="../../freemarker/core/Configurable.html#getParent--"><code>parent</code></a>.</div>
<dl>
<dt><span class="simpleTagLabel">Since:</span></dt>
<dd>2.3.24</dd>
</dl>
</li>
</ul>
<a name="setAttemptExceptionReporter-freemarker.template.AttemptExceptionReporter-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setAttemptExceptionReporter</h4>
<pre>public&nbsp;void&nbsp;setAttemptExceptionReporter(<a href="../../freemarker/template/AttemptExceptionReporter.html" title="interface in freemarker.template">AttemptExceptionReporter</a>&nbsp;attemptExceptionReporter)</pre>
<div class="block">Specifies how exceptions handled (and hence suppressed) by an <code>#attempt</code> blocks will be logged or otherwise
 reported. The default value is <a href="../../freemarker/template/AttemptExceptionReporter.html#LOG_ERROR_REPORTER"><code>AttemptExceptionReporter.LOG_ERROR_REPORTER</code></a>.
 
 <p>Note that <code>#attempt</code> is not supposed to be a general purpose error handler mechanism, like <code>try</code>
 is in Java. It's for decreasing the impact of unexpected errors, by making it possible that only part of the
 page is going down, instead of the whole page. But it's still an error, something that someone should fix. So the
 error should be reported, not just ignored in a custom <a href="../../freemarker/template/AttemptExceptionReporter.html" title="interface in freemarker.template"><code>AttemptExceptionReporter</code></a>-s.
 
 <p>The <a href="../../freemarker/template/AttemptExceptionReporter.html" title="interface in freemarker.template"><code>AttemptExceptionReporter</code></a> is invoked regardless of the value of the
 <a href="../../freemarker/core/Configurable.html#setLogTemplateExceptions-boolean-"><code>log_template_exceptions</code></a> setting.
 The <a href="../../freemarker/template/AttemptExceptionReporter.html" title="interface in freemarker.template"><code>AttemptExceptionReporter</code></a> is not invoked if the <a href="../../freemarker/template/TemplateExceptionHandler.html" title="interface in freemarker.template"><code>TemplateExceptionHandler</code></a> has suppressed the
 exception.</div>
<dl>
<dt><span class="simpleTagLabel">Since:</span></dt>
<dd>2.3.27</dd>
</dl>
</li>
</ul>
<a name="getAttemptExceptionReporter--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getAttemptExceptionReporter</h4>
<pre>public&nbsp;<a href="../../freemarker/template/AttemptExceptionReporter.html" title="interface in freemarker.template">AttemptExceptionReporter</a>&nbsp;getAttemptExceptionReporter()</pre>
<div class="block">The getter pair of <a href="../../freemarker/core/Configurable.html#setAttemptExceptionReporter-freemarker.template.AttemptExceptionReporter-"><code>setAttemptExceptionReporter(AttemptExceptionReporter)</code></a>.</div>
<dl>
<dt><span class="simpleTagLabel">Since:</span></dt>
<dd>2.3.27</dd>
</dl>
</li>
</ul>
<a name="isAttemptExceptionReporterSet--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>isAttemptExceptionReporterSet</h4>
<pre>public&nbsp;boolean&nbsp;isAttemptExceptionReporterSet()</pre>
<div class="block">Tells if this setting is set directly in this object or its value is coming from the <a href="../../freemarker/core/Configurable.html#getParent--"><code>parent</code></a>.</div>
<dl>
<dt><span class="simpleTagLabel">Since:</span></dt>
<dd>2.3.27</dd>
</dl>
</li>
</ul>
<a name="setArithmeticEngine-freemarker.core.ArithmeticEngine-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setArithmeticEngine</h4>
<pre>public&nbsp;void&nbsp;setArithmeticEngine(<a href="../../freemarker/core/ArithmeticEngine.html" title="class in freemarker.core">ArithmeticEngine</a>&nbsp;arithmeticEngine)</pre>
<div class="block">Sets the arithmetic engine used to perform arithmetic operations.
 The default is <a href="../../freemarker/core/ArithmeticEngine.html#BIGDECIMAL_ENGINE"><code>ArithmeticEngine.BIGDECIMAL_ENGINE</code></a>.</div>
</li>
</ul>
<a name="getArithmeticEngine--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getArithmeticEngine</h4>
<pre>public&nbsp;<a href="../../freemarker/core/ArithmeticEngine.html" title="class in freemarker.core">ArithmeticEngine</a>&nbsp;getArithmeticEngine()</pre>
<div class="block">The getter pair of <a href="../../freemarker/core/Configurable.html#setArithmeticEngine-freemarker.core.ArithmeticEngine-"><code>setArithmeticEngine(ArithmeticEngine)</code></a>.</div>
</li>
</ul>
<a name="isArithmeticEngineSet--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>isArithmeticEngineSet</h4>
<pre>public&nbsp;boolean&nbsp;isArithmeticEngineSet()</pre>
<div class="block">Tells if this setting is set directly in this object or its value is coming from the <a href="../../freemarker/core/Configurable.html#getParent--"><code>parent</code></a>.</div>
<dl>
<dt><span class="simpleTagLabel">Since:</span></dt>
<dd>2.3.24</dd>
</dl>
</li>
</ul>
<a name="setObjectWrapper-freemarker.template.ObjectWrapper-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setObjectWrapper</h4>
<pre>public&nbsp;void&nbsp;setObjectWrapper(<a href="../../freemarker/template/ObjectWrapper.html" title="interface in freemarker.template">ObjectWrapper</a>&nbsp;objectWrapper)</pre>
<div class="block">Sets the object wrapper used to wrap objects to <a href="../../freemarker/template/TemplateModel.html" title="interface in freemarker.template"><code>TemplateModel</code></a>-s.
 The default is <a href="../../freemarker/template/ObjectWrapper.html#DEFAULT_WRAPPER"><code>ObjectWrapper.DEFAULT_WRAPPER</code></a>.</div>
</li>
</ul>
<a name="getObjectWrapper--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getObjectWrapper</h4>
<pre>public&nbsp;<a href="../../freemarker/template/ObjectWrapper.html" title="interface in freemarker.template">ObjectWrapper</a>&nbsp;getObjectWrapper()</pre>
<div class="block">The getter pair of <a href="../../freemarker/core/Configurable.html#setObjectWrapper-freemarker.template.ObjectWrapper-"><code>setObjectWrapper(ObjectWrapper)</code></a>.</div>
</li>
</ul>
<a name="isObjectWrapperSet--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>isObjectWrapperSet</h4>
<pre>public&nbsp;boolean&nbsp;isObjectWrapperSet()</pre>
<div class="block">Tells if this setting is set directly in this object or its value is coming from the <a href="../../freemarker/core/Configurable.html#getParent--"><code>parent</code></a>.</div>
<dl>
<dt><span class="simpleTagLabel">Since:</span></dt>
<dd>2.3.24</dd>
</dl>
</li>
</ul>
<a name="setOutputEncoding-java.lang.String-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setOutputEncoding</h4>
<pre>public&nbsp;void&nbsp;setOutputEncoding(java.lang.String&nbsp;outputEncoding)</pre>
<div class="block">Informs FreeMarker about the charset used for the output. As FreeMarker outputs character stream (not
 byte stream), it's not aware of the output charset unless the software that encloses it tells it
 with this setting. Some templates may use FreeMarker features that require this information.
 Setting this to <code>null</code> means that the output encoding is not known.
 
 <p>Defaults to <code>null</code> (unknown).</div>
</li>
</ul>
<a name="getOutputEncoding--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getOutputEncoding</h4>
<pre>public&nbsp;java.lang.String&nbsp;getOutputEncoding()</pre>
<div class="block">Getter pair of <a href="../../freemarker/core/Configurable.html#setOutputEncoding-java.lang.String-"><code>setOutputEncoding(String)</code></a>.</div>
</li>
</ul>
<a name="isOutputEncodingSet--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>isOutputEncodingSet</h4>
<pre>public&nbsp;boolean&nbsp;isOutputEncodingSet()</pre>
<div class="block">Tells if this setting is set directly in this object or its value is coming from the <a href="../../freemarker/core/Configurable.html#getParent--"><code>parent</code></a>.</div>
<dl>
<dt><span class="simpleTagLabel">Since:</span></dt>
<dd>2.3.24</dd>
</dl>
</li>
</ul>
<a name="setURLEscapingCharset-java.lang.String-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setURLEscapingCharset</h4>
<pre>public&nbsp;void&nbsp;setURLEscapingCharset(java.lang.String&nbsp;urlEscapingCharset)</pre>
<div class="block">Sets the URL escaping (URL encoding, percentage encoding) charset. If <code>null</code>, the output encoding
 (<a href="../../freemarker/core/Configurable.html#setOutputEncoding-java.lang.String-"><code>setOutputEncoding(String)</code></a>) will be used for URL escaping.
 
 Defaults to <code>null</code>.</div>
</li>
</ul>
<a name="getURLEscapingCharset--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getURLEscapingCharset</h4>
<pre>public&nbsp;java.lang.String&nbsp;getURLEscapingCharset()</pre>
</li>
</ul>
<a name="isURLEscapingCharsetSet--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>isURLEscapingCharsetSet</h4>
<pre>public&nbsp;boolean&nbsp;isURLEscapingCharsetSet()</pre>
<div class="block">Tells if this setting is set directly in this object or its value is coming from the <a href="../../freemarker/core/Configurable.html#getParent--"><code>parent</code></a>.</div>
<dl>
<dt><span class="simpleTagLabel">Since:</span></dt>
<dd>2.3.24</dd>
</dl>
</li>
</ul>
<a name="setNewBuiltinClassResolver-freemarker.core.TemplateClassResolver-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setNewBuiltinClassResolver</h4>
<pre>public&nbsp;void&nbsp;setNewBuiltinClassResolver(<a href="../../freemarker/core/TemplateClassResolver.html" title="interface in freemarker.core">TemplateClassResolver</a>&nbsp;newBuiltinClassResolver)</pre>
<div class="block">Sets the <a href="../../freemarker/core/TemplateClassResolver.html" title="interface in freemarker.core"><code>TemplateClassResolver</code></a> that is used when the
 <code>new</code> built-in is called in a template. That is, when
 a template contains the <code>"com.example.SomeClassName"?new</code>
 expression, this object will be called to resolve the
 <code>"com.example.SomeClassName"</code> string to a class. The default
 value is <a href="../../freemarker/core/TemplateClassResolver.html#UNRESTRICTED_RESOLVER"><code>TemplateClassResolver.UNRESTRICTED_RESOLVER</code></a> in
 FreeMarker 2.3.x, and <a href="../../freemarker/core/TemplateClassResolver.html#SAFER_RESOLVER"><code>TemplateClassResolver.SAFER_RESOLVER</code></a>
 starting from FreeMarker 2.4.0. If you allow users to upload templates,
 it's important to use a custom restrictive <a href="../../freemarker/core/TemplateClassResolver.html" title="interface in freemarker.core"><code>TemplateClassResolver</code></a>.

 <p>Note that the <a href="../../freemarker/ext/beans/MemberAccessPolicy.html" title="interface in freemarker.ext.beans"><code>MemberAccessPolicy</code></a> used by the <a href="../../freemarker/template/ObjectWrapper.html" title="interface in freemarker.template"><code>ObjectWrapper</code></a> also influences what constructors
 are available. Allowing the resolution of the class here is not enough in itself, as the
 <a href="../../freemarker/ext/beans/MemberAccessPolicy.html" title="interface in freemarker.ext.beans"><code>MemberAccessPolicy</code></a> has to allow exposing the particular constructor you try to call as well.</div>
<dl>
<dt><span class="simpleTagLabel">Since:</span></dt>
<dd>2.3.17</dd>
</dl>
</li>
</ul>
<a name="getNewBuiltinClassResolver--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getNewBuiltinClassResolver</h4>
<pre>public&nbsp;<a href="../../freemarker/core/TemplateClassResolver.html" title="interface in freemarker.core">TemplateClassResolver</a>&nbsp;getNewBuiltinClassResolver()</pre>
<div class="block">Retrieves the <a href="../../freemarker/core/TemplateClassResolver.html" title="interface in freemarker.core"><code>TemplateClassResolver</code></a> used
 to resolve classes when "SomeClassName"?new is called in a template.</div>
<dl>
<dt><span class="simpleTagLabel">Since:</span></dt>
<dd>2.3.17</dd>
</dl>
</li>
</ul>
<a name="isNewBuiltinClassResolverSet--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>isNewBuiltinClassResolverSet</h4>
<pre>public&nbsp;boolean&nbsp;isNewBuiltinClassResolverSet()</pre>
<div class="block">Tells if this setting is set directly in this object or its value is coming from the <a href="../../freemarker/core/Configurable.html#getParent--"><code>parent</code></a>.</div>
<dl>
<dt><span class="simpleTagLabel">Since:</span></dt>
<dd>2.3.24</dd>
</dl>
</li>
</ul>
<a name="setAutoFlush-boolean-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setAutoFlush</h4>
<pre>public&nbsp;void&nbsp;setAutoFlush(boolean&nbsp;autoFlush)</pre>
<div class="block">Sets whether the output <code>Writer</code> is automatically flushed at
 the end of <a href="../../freemarker/template/Template.html#process-java.lang.Object-java.io.Writer-"><code>Template.process(Object, Writer)</code></a> (and its
 overloads). The default is <code>true</code>.
 
 <p>Using <code>false</code> is needed for example when a Web page is composed
 from several boxes (like portlets, GUI panels, etc.) that aren't inserted
 with <tt>#include</tt> (or with similar directives) into a master
 FreeMarker template, rather they are all processed with a separate
 <a href="../../freemarker/template/Template.html#process-java.lang.Object-java.io.Writer-"><code>Template.process(Object, Writer)</code></a> call. In a such scenario the
 automatic flushes would commit the HTTP response after each box, hence
 interfering with full-page buffering, and also possibly decreasing
 performance with too frequent and too early response buffer flushes.</div>
<dl>
<dt><span class="simpleTagLabel">Since:</span></dt>
<dd>2.3.17</dd>
</dl>
</li>
</ul>
<a name="getAutoFlush--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getAutoFlush</h4>
<pre>public&nbsp;boolean&nbsp;getAutoFlush()</pre>
<div class="block">See <a href="../../freemarker/core/Configurable.html#setAutoFlush-boolean-"><code>setAutoFlush(boolean)</code></a></div>
<dl>
<dt><span class="simpleTagLabel">Since:</span></dt>
<dd>2.3.17</dd>
</dl>
</li>
</ul>
<a name="isAutoFlushSet--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>isAutoFlushSet</h4>
<pre>public&nbsp;boolean&nbsp;isAutoFlushSet()</pre>
<div class="block">Tells if this setting is set directly in this object or its value is coming from the <a href="../../freemarker/core/Configurable.html#getParent--"><code>parent</code></a>.</div>
<dl>
<dt><span class="simpleTagLabel">Since:</span></dt>
<dd>2.3.24</dd>
</dl>
</li>
</ul>
<a name="setShowErrorTips-boolean-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setShowErrorTips</h4>
<pre>public&nbsp;void&nbsp;setShowErrorTips(boolean&nbsp;showTips)</pre>
<div class="block">Sets if tips should be shown in error messages of errors arising during template processing.
 The default is <code>true</code>.</div>
<dl>
<dt><span class="simpleTagLabel">Since:</span></dt>
<dd>2.3.21</dd>
</dl>
</li>
</ul>
<a name="getShowErrorTips--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getShowErrorTips</h4>
<pre>public&nbsp;boolean&nbsp;getShowErrorTips()</pre>
<div class="block">See <a href="../../freemarker/core/Configurable.html#setShowErrorTips-boolean-"><code>setShowErrorTips(boolean)</code></a></div>
<dl>
<dt><span class="simpleTagLabel">Since:</span></dt>
<dd>2.3.21</dd>
</dl>
</li>
</ul>
<a name="isShowErrorTipsSet--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>isShowErrorTipsSet</h4>
<pre>public&nbsp;boolean&nbsp;isShowErrorTipsSet()</pre>
<div class="block">Tells if this setting is set directly in this object or its value is coming from the <a href="../../freemarker/core/Configurable.html#getParent--"><code>parent</code></a>.</div>
<dl>
<dt><span class="simpleTagLabel">Since:</span></dt>
<dd>2.3.24</dd>
</dl>
</li>
</ul>
<a name="setAPIBuiltinEnabled-boolean-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setAPIBuiltinEnabled</h4>
<pre>public&nbsp;void&nbsp;setAPIBuiltinEnabled(boolean&nbsp;value)</pre>
<div class="block">Specifies if <code>?api</code> can be used in templates. Defaults to <code>false</code> so that updating FreeMarker won't
 decrease the security of existing applications.</div>
<dl>
<dt><span class="simpleTagLabel">Since:</span></dt>
<dd>2.3.22</dd>
</dl>
</li>
</ul>
<a name="isAPIBuiltinEnabled--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>isAPIBuiltinEnabled</h4>
<pre>public&nbsp;boolean&nbsp;isAPIBuiltinEnabled()</pre>
<div class="block">See <a href="../../freemarker/core/Configurable.html#setAPIBuiltinEnabled-boolean-"><code>setAPIBuiltinEnabled(boolean)</code></a></div>
<dl>
<dt><span class="simpleTagLabel">Since:</span></dt>
<dd>2.3.22</dd>
</dl>
</li>
</ul>
<a name="isAPIBuiltinEnabledSet--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>isAPIBuiltinEnabledSet</h4>
<pre>public&nbsp;boolean&nbsp;isAPIBuiltinEnabledSet()</pre>
<div class="block">Tells if this setting is set directly in this object or its value is coming from the <a href="../../freemarker/core/Configurable.html#getParent--"><code>parent</code></a>.</div>
<dl>
<dt><span class="simpleTagLabel">Since:</span></dt>
<dd>2.3.24</dd>
</dl>
</li>
</ul>
<a name="setTruncateBuiltinAlgorithm-freemarker.core.TruncateBuiltinAlgorithm-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setTruncateBuiltinAlgorithm</h4>
<pre>public&nbsp;void&nbsp;setTruncateBuiltinAlgorithm(<a href="../../freemarker/core/TruncateBuiltinAlgorithm.html" title="class in freemarker.core">TruncateBuiltinAlgorithm</a>&nbsp;truncateBuiltinAlgorithm)</pre>
<div class="block">Specifies the algorithm used for <code>?truncate</code>. Defaults to
 <a href="../../freemarker/core/DefaultTruncateBuiltinAlgorithm.html#ASCII_INSTANCE"><code>DefaultTruncateBuiltinAlgorithm.ASCII_INSTANCE</code></a>. Most customization needs can be addressed by
 creating a new <a href="../../freemarker/core/DefaultTruncateBuiltinAlgorithm.html" title="class in freemarker.core"><code>DefaultTruncateBuiltinAlgorithm</code></a> with the proper constructor parameters. Otherwise users
 my use their own <a href="../../freemarker/core/TruncateBuiltinAlgorithm.html" title="class in freemarker.core"><code>TruncateBuiltinAlgorithm</code></a> implementation.

 <p>In case you need to set this with <code>Properties</code>, or a similar configuration approach that doesn't let you
 create the value in Java, see examples at <a href="../../freemarker/core/Configurable.html#setSetting-java.lang.String-java.lang.String-"><code>setSetting(String, String)</code></a>.</div>
<dl>
<dt><span class="simpleTagLabel">Since:</span></dt>
<dd>2.3.29</dd>
</dl>
</li>
</ul>
<a name="getTruncateBuiltinAlgorithm--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getTruncateBuiltinAlgorithm</h4>
<pre>public&nbsp;<a href="../../freemarker/core/TruncateBuiltinAlgorithm.html" title="class in freemarker.core">TruncateBuiltinAlgorithm</a>&nbsp;getTruncateBuiltinAlgorithm()</pre>
<div class="block">See <a href="../../freemarker/core/Configurable.html#setTruncateBuiltinAlgorithm-freemarker.core.TruncateBuiltinAlgorithm-"><code>setTruncateBuiltinAlgorithm(TruncateBuiltinAlgorithm)</code></a></div>
<dl>
<dt><span class="simpleTagLabel">Since:</span></dt>
<dd>2.3.29</dd>
</dl>
</li>
</ul>
<a name="isTruncateBuiltinAlgorithmSet--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>isTruncateBuiltinAlgorithmSet</h4>
<pre>public&nbsp;boolean&nbsp;isTruncateBuiltinAlgorithmSet()</pre>
<div class="block">Tells if this setting is set directly in this object or its value is coming from the <a href="../../freemarker/core/Configurable.html#getParent--"><code>parent</code></a>.</div>
<dl>
<dt><span class="simpleTagLabel">Since:</span></dt>
<dd>2.3.29</dd>
</dl>
</li>
</ul>
<a name="setLogTemplateExceptions-boolean-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setLogTemplateExceptions</h4>
<pre>public&nbsp;void&nbsp;setLogTemplateExceptions(boolean&nbsp;value)</pre>
<div class="block">Specifies if <a href="../../freemarker/template/TemplateException.html" title="class in freemarker.template"><code>TemplateException</code></a>-s thrown by template processing are logged by FreeMarker or not. The
 default is <code>true</code> for backward compatibility, but that results in logging the exception twice in properly
 written applications, because there the <a href="../../freemarker/template/TemplateException.html" title="class in freemarker.template"><code>TemplateException</code></a> thrown by the public FreeMarker API is also
 logged by the caller (even if only as the cause exception of a higher level exception). Hence, in modern
 applications it should be set to <code>false</code>. Note that this setting has no effect on the logging of exceptions
 caught by <code>#attempt</code>; by default those are always logged as errors (because those exceptions won't bubble
 up to the API caller), however, that can be changed with the <a href="../../freemarker/core/Configurable.html#setAttemptExceptionReporter-freemarker.template.AttemptExceptionReporter-"><code>attempt_exception_reporter</code></a> setting.</div>
<dl>
<dt><span class="simpleTagLabel">Since:</span></dt>
<dd>2.3.22</dd>
</dl>
</li>
</ul>
<a name="getLogTemplateExceptions--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getLogTemplateExceptions</h4>
<pre>public&nbsp;boolean&nbsp;getLogTemplateExceptions()</pre>
<div class="block">See <a href="../../freemarker/core/Configurable.html#setLogTemplateExceptions-boolean-"><code>setLogTemplateExceptions(boolean)</code></a></div>
<dl>
<dt><span class="simpleTagLabel">Since:</span></dt>
<dd>2.3.22</dd>
</dl>
</li>
</ul>
<a name="isLogTemplateExceptionsSet--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>isLogTemplateExceptionsSet</h4>
<pre>public&nbsp;boolean&nbsp;isLogTemplateExceptionsSet()</pre>
<div class="block">Tells if this setting is set directly in this object or its value is coming from the <a href="../../freemarker/core/Configurable.html#getParent--"><code>parent</code></a>.</div>
<dl>
<dt><span class="simpleTagLabel">Since:</span></dt>
<dd>2.3.24</dd>
</dl>
</li>
</ul>
<a name="setWrapUncheckedExceptions-boolean-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setWrapUncheckedExceptions</h4>
<pre>public&nbsp;void&nbsp;setWrapUncheckedExceptions(boolean&nbsp;wrapUncheckedExceptions)</pre>
<div class="block">Specifies if unchecked exceptions thrown during expression evaluation or during executing custom directives (and
 transform) will be wrapped into <a href="../../freemarker/template/TemplateException.html" title="class in freemarker.template"><code>TemplateException</code></a>-s, or will bubble up to the caller of
 <a href="../../freemarker/template/Template.html#process-java.lang.Object-java.io.Writer-freemarker.template.ObjectWrapper-"><code>Template.process(Object, Writer, ObjectWrapper)</code></a> as is. The default is <code>false</code> for backward
 compatibility (as some applications catch certain unchecked exceptions thrown by the template processing to do
 something special), but the recommended value is <code>true</code>.    
 When this is <code>true</code>, the unchecked exceptions will be wrapped into a <a href="../../freemarker/template/TemplateException.html" title="class in freemarker.template"><code>TemplateException</code></a>-s, thus the
 exception will include the location in the template (not
 just the Java stack trace). Another consequence of the wrapping is that the <a href="../../freemarker/template/TemplateExceptionHandler.html" title="interface in freemarker.template"><code>TemplateExceptionHandler</code></a> will
 be invoked for the exception (as that only handles <a href="../../freemarker/template/TemplateException.html" title="class in freemarker.template"><code>TemplateException</code></a>-s, it wasn't invoked for unchecked
 exceptions). When this setting is <code>false</code>, unchecked exception will be thrown by
 <a href="../../freemarker/template/Template.html#process-java.lang.Object-java.io.Writer-freemarker.template.ObjectWrapper-"><code>Template.process(Object, Writer, ObjectWrapper)</code></a>.
 Note that plain Java methods called from templates aren't user defined <a href="../../freemarker/template/TemplateMethodModel.html" title="interface in freemarker.template"><code>TemplateMethodModel</code></a>-s, and have
 always wrapped the thrown exception into <a href="../../freemarker/template/TemplateException.html" title="class in freemarker.template"><code>TemplateException</code></a>, regardless of this setting.</div>
<dl>
<dt><span class="simpleTagLabel">Since:</span></dt>
<dd>2.3.27</dd>
</dl>
</li>
</ul>
<a name="getWrapUncheckedExceptions--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getWrapUncheckedExceptions</h4>
<pre>public&nbsp;boolean&nbsp;getWrapUncheckedExceptions()</pre>
<div class="block">The getter pair of <a href="../../freemarker/core/Configurable.html#setWrapUncheckedExceptions-boolean-"><code>setWrapUncheckedExceptions(boolean)</code></a>.</div>
<dl>
<dt><span class="simpleTagLabel">Since:</span></dt>
<dd>2.3.27</dd>
</dl>
</li>
</ul>
<a name="isWrapUncheckedExceptionsSet--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>isWrapUncheckedExceptionsSet</h4>
<pre>public&nbsp;boolean&nbsp;isWrapUncheckedExceptionsSet()</pre>
<dl>
<dt><span class="simpleTagLabel">Since:</span></dt>
<dd>2.3.27</dd>
</dl>
</li>
</ul>
<a name="getLazyImports--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getLazyImports</h4>
<pre>public&nbsp;boolean&nbsp;getLazyImports()</pre>
<div class="block">The getter pair of <a href="../../freemarker/core/Configurable.html#setLazyImports-boolean-"><code>setLazyImports(boolean)</code></a>.</div>
<dl>
<dt><span class="simpleTagLabel">Since:</span></dt>
<dd>2.3.25</dd>
</dl>
</li>
</ul>
<a name="setLazyImports-boolean-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setLazyImports</h4>
<pre>public&nbsp;void&nbsp;setLazyImports(boolean&nbsp;lazyImports)</pre>
<div class="block">Specifies if <code>&lt;#import ...&gt;</code> (and <a href="../../freemarker/core/Environment.html#importLib-java.lang.String-java.lang.String-"><code>Environment.importLib(String, String)</code></a>) should delay the loading
 and processing of the imported templates until the content of the imported namespace is actually accessed. This
 makes the overhead of <em>unused</em> imports negligible. Note that turning on lazy importing isn't entirely
 transparent, as accessing global variables (usually created with <code>&lt;#global ...=...&gt;</code>) that should be
 created by the imported template won't trigger the loading and processing of the lazily imported template
 (because globals aren't accessed through the namespace variable), so the global variable will just be missing.
 In general, you lose the strict control over when the namespace initializing code in the imported template will
 be executed, though it shouldn't mater for most well designed imported templates.
 Another drawback is that importing a missing or otherwise broken template will be successful, and the problem
 will remain hidden until (and if) the namespace content is actually used. Note that the namespace initializing
 code will run with the same <a href="../../freemarker/core/Configurable.html#getLocale--">locale</a> as it was at the point of the
 <code>&lt;#import ...&gt;</code> call (other settings won't be handled specially like that).
 
 <p>
 The default is <code>false</code> (and thus imports are eager) for backward compatibility, which can cause
 perceivable overhead if you have many imports and only a few of them is actually used.
 
 <p>
 This setting also affects <a href="../../freemarker/core/Configurable.html#setAutoImports-java.util.Map-">auto-imports</a>, unless you have set a non-<code>null</code>
 value with <a href="../../freemarker/core/Configurable.html#setLazyAutoImports-java.lang.Boolean-"><code>setLazyAutoImports(Boolean)</code></a>.</div>
<dl>
<dt><span class="simpleTagLabel">Since:</span></dt>
<dd>2.3.25</dd>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../freemarker/core/Configurable.html#setLazyAutoImports-java.lang.Boolean-"><code>setLazyAutoImports(Boolean)</code></a></dd>
</dl>
</li>
</ul>
<a name="isLazyImportsSet--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>isLazyImportsSet</h4>
<pre>public&nbsp;boolean&nbsp;isLazyImportsSet()</pre>
<div class="block">Tells if this setting is set directly in this object or its value is coming from the <a href="../../freemarker/core/Configurable.html#getParent--"><code>parent</code></a>.</div>
<dl>
<dt><span class="simpleTagLabel">Since:</span></dt>
<dd>2.3.25</dd>
</dl>
</li>
</ul>
<a name="getLazyAutoImports--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getLazyAutoImports</h4>
<pre>public&nbsp;java.lang.Boolean&nbsp;getLazyAutoImports()</pre>
<div class="block">The getter pair of <a href="../../freemarker/core/Configurable.html#setLazyAutoImports-java.lang.Boolean-"><code>setLazyAutoImports(Boolean)</code></a>.</div>
<dl>
<dt><span class="simpleTagLabel">Since:</span></dt>
<dd>2.3.25</dd>
</dl>
</li>
</ul>
<a name="setLazyAutoImports-java.lang.Boolean-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setLazyAutoImports</h4>
<pre>public&nbsp;void&nbsp;setLazyAutoImports(java.lang.Boolean&nbsp;lazyAutoImports)</pre>
<div class="block">Specifies if <a href="../../freemarker/core/Configurable.html#setAutoImports-java.util.Map-">auto-imports</a> will be
 <a href="../../freemarker/core/Configurable.html#setLazyImports-boolean-"><code>lazy imports</code></a>. This is useful to make the overhead of <em>unused</em>
 auto-imports negligible. If this is set to <code>null</code>, <a href="../../freemarker/core/Configurable.html#getLazyImports--"><code>getLazyImports()</code></a> specifies the behavior of
 auto-imports too. The default value is <code>null</code>.</div>
<dl>
<dt><span class="simpleTagLabel">Since:</span></dt>
<dd>2.3.25</dd>
</dl>
</li>
</ul>
<a name="isLazyAutoImportsSet--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>isLazyAutoImportsSet</h4>
<pre>public&nbsp;boolean&nbsp;isLazyAutoImportsSet()</pre>
<div class="block">Tells if this setting is set directly in this object or its value is coming from the <a href="../../freemarker/core/Configurable.html#getParent--"><code>parent</code></a>.</div>
<dl>
<dt><span class="simpleTagLabel">Since:</span></dt>
<dd>2.3.25</dd>
</dl>
</li>
</ul>
<a name="addAutoImport-java.lang.String-java.lang.String-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>addAutoImport</h4>
<pre>public&nbsp;void&nbsp;addAutoImport(java.lang.String&nbsp;namespaceVarName,
                          java.lang.String&nbsp;templateName)</pre>
<div class="block">Adds an invisible <code>#import <i>templateName</i> as <i>namespaceVarName</i></code> at the beginning of the
 main template (that's the top-level template that wasn't included/imported from another template). While it only
 affects the main template directly, as the imports will create a global variable there, the imports will be
 visible from the further imported templates too (note that <a href="../../freemarker/template/Configuration.html#getIncompatibleImprovements--"><code>Configuration.getIncompatibleImprovements()</code></a>
 set to 2.3.24 fixes a rarely surfacing bug with that).
 
 <p>
 It's recommended to set the <code>lazy_auto_imports</code> setting (<a href="../../freemarker/core/Configurable.html#setLazyAutoImports-java.lang.Boolean-"><code>setLazyAutoImports(Boolean)</code></a>)
 to <code>true</code> when using this, so that auto-imports that are unused in a template won't degrade performance by
 unnecessary loading and initializing the imported library.
 
 <p>
 If the imports aren't lazy, the order of the imports will be the same as the order in which they were added with
 this method. (Calling this method with an already added <code>namespaceVarName</code> will move that to the end
 of the auto-import order.)
 
 <p>
 The auto-import is added directly to the <a href="../../freemarker/core/Configurable.html" title="class in freemarker.core"><code>Configurable</code></a> on which this method is called (not to the parents
 or children), but when the main template is processed, the auto-imports are collected from all the
 <a href="../../freemarker/core/Configurable.html" title="class in freemarker.core"><code>Configurable</code></a> levels, in parent-to-child order: <a href="../../freemarker/template/Configuration.html" title="class in freemarker.template"><code>Configuration</code></a>, <a href="../../freemarker/template/Template.html" title="class in freemarker.template"><code>Template</code></a> (the main
 template), <a href="../../freemarker/core/Environment.html" title="class in freemarker.core"><code>Environment</code></a>. If the same <code>namespaceVarName</code> occurs on multiple levels, the one on the
 child level is used, and the clashing import from the parent level is skipped.
 
 <p>If there are also auto-includes (see <a href="../../freemarker/core/Configurable.html#addAutoInclude-java.lang.String-"><code>addAutoInclude(String)</code></a>), those will be executed after
 the auto-imports.</div>
<dl>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../freemarker/core/Configurable.html#setAutoImports-java.util.Map-"><code>setAutoImports(Map)</code></a></dd>
</dl>
</li>
</ul>
<a name="removeAutoImport-java.lang.String-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>removeAutoImport</h4>
<pre>public&nbsp;void&nbsp;removeAutoImport(java.lang.String&nbsp;namespaceVarName)</pre>
<div class="block">Removes an auto-import from this <a href="../../freemarker/core/Configurable.html" title="class in freemarker.core"><code>Configurable</code></a> level (not from the parents or children);
 see <a href="../../freemarker/core/Configurable.html#addAutoImport-java.lang.String-java.lang.String-"><code>addAutoImport(String, String)</code></a>. Does nothing if the auto-import doesn't exist.</div>
</li>
</ul>
<a name="setAutoImports-java.util.Map-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setAutoImports</h4>
<pre>public&nbsp;void&nbsp;setAutoImports(java.util.Map&nbsp;map)</pre>
<div class="block">Removes all auto-imports, then calls <a href="../../freemarker/core/Configurable.html#addAutoImport-java.lang.String-java.lang.String-"><code>addAutoImport(String, String)</code></a> for each <code>Map</code>-entry (the entry
 key is the <code>namespaceVarName</code>). The order of the auto-imports will be the same as <code>Map.keySet()</code>
 returns the keys (but the order of imports doesn't mater for properly designed libraries anyway).</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>map</code> - Maps the namespace variable names to the template names; not <code>null</code></dd>
</dl>
</li>
</ul>
<a name="getAutoImports--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getAutoImports</h4>
<pre>public&nbsp;java.util.Map&lt;java.lang.String,java.lang.String&gt;&nbsp;getAutoImports()</pre>
<div class="block">Getter pair of <a href="../../freemarker/core/Configurable.html#setAutoImports-java.util.Map-"><code>setAutoImports(Map)</code></a>; do not modify the returned <code>Map</code>! To be consistent with other
 setting getters, if this setting was set directly on this <a href="../../freemarker/core/Configurable.html" title="class in freemarker.core"><code>Configurable</code></a> object, this simply returns that
 value, otherwise it returns the value from the parent <a href="../../freemarker/core/Configurable.html" title="class in freemarker.core"><code>Configurable</code></a>. So beware, the returned value doesn't
 reflect the <code>Map</code> key granularity fallback logic that FreeMarker actually uses for this setting. The
 returned value is not the same <code>Map</code> object that was set with <a href="../../freemarker/core/Configurable.html#setAutoImports-java.util.Map-"><code>setAutoImports(Map)</code></a>, only its
 content is the same. The returned value isn't a snapshot; it may or may not shows the changes later made to this
 setting on this <a href="../../freemarker/core/Configurable.html" title="class in freemarker.core"><code>Configurable</code></a> level (but usually it's well defined if until what point settings are
 possibly modified).
 
 <p>
 The return value is never <code>null</code>; called on the <a href="../../freemarker/template/Configuration.html" title="class in freemarker.template"><code>Configuration</code></a> (top) level, it defaults to an empty
 <code>Map</code>.</div>
<dl>
<dt><span class="simpleTagLabel">Since:</span></dt>
<dd>2.3.25</dd>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../freemarker/core/Configurable.html#getAutoImportsWithoutFallback--"><code>getAutoImportsWithoutFallback()</code></a></dd>
</dl>
</li>
</ul>
<a name="isAutoImportsSet--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>isAutoImportsSet</h4>
<pre>public&nbsp;boolean&nbsp;isAutoImportsSet()</pre>
<div class="block">Tells if this setting is set directly in this object or its value is coming from the <a href="../../freemarker/core/Configurable.html#getParent--"><code>parent</code></a>.</div>
<dl>
<dt><span class="simpleTagLabel">Since:</span></dt>
<dd>2.3.25</dd>
</dl>
</li>
</ul>
<a name="getAutoImportsWithoutFallback--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getAutoImportsWithoutFallback</h4>
<pre>public&nbsp;java.util.Map&lt;java.lang.String,java.lang.String&gt;&nbsp;getAutoImportsWithoutFallback()</pre>
<div class="block">Like <a href="../../freemarker/core/Configurable.html#getAutoImports--"><code>getAutoImports()</code></a>, but doesn't fall back to the parent <a href="../../freemarker/core/Configurable.html" title="class in freemarker.core"><code>Configurable</code></a> (and so it can be
 <code>null</code>).</div>
<dl>
<dt><span class="simpleTagLabel">Since:</span></dt>
<dd>2.3.25</dd>
</dl>
</li>
</ul>
<a name="addAutoInclude-java.lang.String-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>addAutoInclude</h4>
<pre>public&nbsp;void&nbsp;addAutoInclude(java.lang.String&nbsp;templateName)</pre>
<div class="block">Adds an invisible <code>#include <i>templateName</i></code> at the beginning of the main template (that's the
 top-level template that wasn't included/imported from another template).
 
 <p>
 The order of the inclusions will be the same as the order in which they were added with this method.
 
 <p>
 The auto-include is added directly to the <a href="../../freemarker/core/Configurable.html" title="class in freemarker.core"><code>Configurable</code></a> on which this method is called (not to the parents
 or children), but when the main template is processed, the auto-includes are collected from all the
 <a href="../../freemarker/core/Configurable.html" title="class in freemarker.core"><code>Configurable</code></a> levels, in parent-to-child order: <a href="../../freemarker/template/Configuration.html" title="class in freemarker.template"><code>Configuration</code></a>, <a href="../../freemarker/template/Template.html" title="class in freemarker.template"><code>Template</code></a> (the main
 template), <a href="../../freemarker/core/Environment.html" title="class in freemarker.core"><code>Environment</code></a>.
 
 <p>
 If there are also auto-imports (<a href="../../freemarker/core/Configurable.html#addAutoImport-java.lang.String-java.lang.String-"><code>addAutoImport(String, String)</code></a>), those imports will be executed before
 the auto-includes, hence the namespace variables are accessible for the auto-included templates.
 
 <p>
 Calling <a href="../../freemarker/core/Configurable.html#addAutoInclude-java.lang.String-"><code>addAutoInclude(String)</code></a> with an already added template name will just move that to the end of the
 auto-include list (within the same <a href="../../freemarker/core/Configurable.html" title="class in freemarker.core"><code>Configurable</code></a> level). This works even if the same template name appears
 on different <a href="../../freemarker/core/Configurable.html" title="class in freemarker.core"><code>Configurable</code></a> levels, in which case only the inclusion on the lowest (child) level will be
 executed.</div>
<dl>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../freemarker/core/Configurable.html#setAutoIncludes-java.util.List-"><code>setAutoIncludes(List)</code></a></dd>
</dl>
</li>
</ul>
<a name="setAutoIncludes-java.util.List-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setAutoIncludes</h4>
<pre>public&nbsp;void&nbsp;setAutoIncludes(java.util.List&nbsp;templateNames)</pre>
<div class="block">Removes all auto-includes, then calls <a href="../../freemarker/core/Configurable.html#addAutoInclude-java.lang.String-"><code>addAutoInclude(String)</code></a> for each <code>List</code> items.
 
 <p>Before <a href="../../freemarker/template/Configuration.html#Configuration-freemarker.template.Version-">incompatible improvements</a> 2.3.25 it doesn't filter
 out duplicates from the list if this method was called on a <a href="../../freemarker/template/Configuration.html" title="class in freemarker.template"><code>Configuration</code></a> instance.</div>
</li>
</ul>
<a name="getAutoIncludes--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getAutoIncludes</h4>
<pre>public&nbsp;java.util.List&lt;java.lang.String&gt;&nbsp;getAutoIncludes()</pre>
<div class="block">Getter pair of <a href="../../freemarker/core/Configurable.html#setAutoIncludes-java.util.List-"><code>setAutoIncludes(List)</code></a>; do not modify the returned <code>List</code>! To be consistent with
 other setting getters, if this setting was set directly on this <a href="../../freemarker/core/Configurable.html" title="class in freemarker.core"><code>Configurable</code></a> object, this simply returns
 that value, otherwise it returns the value from the parent <a href="../../freemarker/core/Configurable.html" title="class in freemarker.core"><code>Configurable</code></a>. So beware, the returned value
 doesn't reflect the <code>List</code> concatenation logic that FreeMarker actually uses for this setting. The returned
 value is not the same <code>List</code> object that was set with <a href="../../freemarker/core/Configurable.html#setAutoIncludes-java.util.List-"><code>setAutoIncludes(List)</code></a>, only its content is
 the same (except that duplicate are removed). The returned value isn't a snapshot; it may or may not shows the
 changes later made to this setting on this <a href="../../freemarker/core/Configurable.html" title="class in freemarker.core"><code>Configurable</code></a> level (but usually it's well defined if until
 what point settings are possibly modified).
 
 <p>
 The return value is never <code>null</code>; called on the <a href="../../freemarker/template/Configuration.html" title="class in freemarker.template"><code>Configuration</code></a> (top) level, it defaults to an empty
 <code>List</code>.</div>
<dl>
<dt><span class="simpleTagLabel">Since:</span></dt>
<dd>2.3.25</dd>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../freemarker/core/Configurable.html#getAutoIncludesWithoutFallback--"><code>getAutoIncludesWithoutFallback()</code></a></dd>
</dl>
</li>
</ul>
<a name="isAutoIncludesSet--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>isAutoIncludesSet</h4>
<pre>public&nbsp;boolean&nbsp;isAutoIncludesSet()</pre>
<div class="block">Tells if this setting is set directly in this object or its value is coming from the <a href="../../freemarker/core/Configurable.html#getParent--"><code>parent</code></a>.</div>
<dl>
<dt><span class="simpleTagLabel">Since:</span></dt>
<dd>2.3.25</dd>
</dl>
</li>
</ul>
<a name="getAutoIncludesWithoutFallback--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getAutoIncludesWithoutFallback</h4>
<pre>public&nbsp;java.util.List&lt;java.lang.String&gt;&nbsp;getAutoIncludesWithoutFallback()</pre>
<div class="block">Like <a href="../../freemarker/core/Configurable.html#getAutoIncludes--"><code>getAutoIncludes()</code></a>, but doesn't fall back to the parent <a href="../../freemarker/core/Configurable.html" title="class in freemarker.core"><code>Configurable</code></a> (and so it can be
 <code>null</code>).</div>
<dl>
<dt><span class="simpleTagLabel">Since:</span></dt>
<dd>2.3.25</dd>
</dl>
</li>
</ul>
<a name="removeAutoInclude-java.lang.String-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>removeAutoInclude</h4>
<pre>public&nbsp;void&nbsp;removeAutoInclude(java.lang.String&nbsp;templateName)</pre>
<div class="block">Removes the auto-include from this <a href="../../freemarker/core/Configurable.html" title="class in freemarker.core"><code>Configurable</code></a> level (not from the parents or children); see
 <a href="../../freemarker/core/Configurable.html#addAutoInclude-java.lang.String-"><code>addAutoInclude(String)</code></a>. Does nothing if the template is not there.</div>
</li>
</ul>
<a name="setSetting-java.lang.String-java.lang.String-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setSetting</h4>
<pre>public&nbsp;void&nbsp;setSetting(java.lang.String&nbsp;name,
                       java.lang.String&nbsp;value)
                throws <a href="../../freemarker/template/TemplateException.html" title="class in freemarker.template">TemplateException</a></pre>
<div class="block">Sets a FreeMarker setting by a name and string value. If you can configure FreeMarker directly with Java (or
 other programming language), you should use the dedicated setter methods instead (like
 <a href="../../freemarker/core/Configurable.html#setObjectWrapper-freemarker.template.ObjectWrapper-"><code>setObjectWrapper(ObjectWrapper)</code></a>. This meant to be used only when you get settings from somewhere
 as <code>String</code>-<code>String</code> name-value pairs (typically, as a <code>Properties</code> object). Below you find an
 overview of the settings available.
 
 <p>Note: As of FreeMarker 2.3.23, setting names can be written in camel case too. For example, instead of
 <code>date_format</code> you can also use <code>dateFormat</code>. It's likely that camel case will become to the
 recommended convention in the future.
 
 <p>The list of settings commonly supported in all <a href="../../freemarker/core/Configurable.html" title="class in freemarker.core"><code>Configurable</code></a> subclasses:
 <ul>
   <li><p><code>"locale"</code>:
       See <a href="../../freemarker/core/Configurable.html#setLocale-java.util.Locale-"><code>setLocale(Locale)</code></a>.
       <br>String value: local codes with the usual format in Java, such as <code>"en_US"</code>, or since 2.3.26,
       "JVM default" (ignoring case) to use the default locale of the Java environment.

   <li><p><code>"classic_compatible"</code>:
       See <a href="../../freemarker/core/Configurable.html#setClassicCompatible-boolean-"><code>setClassicCompatible(boolean)</code></a> and <a href="../../freemarker/core/Configurable.html#setClassicCompatibleAsInt-int-"><code>setClassicCompatibleAsInt(int)</code></a>.
       <br>String value: <code>"true"</code>, <code>"false"</code>, also since 2.3.20 <code>0</code> or <code>1</code> or <code>2</code>.
       (Also accepts <code>"yes"</code>, <code>"no"</code>, <code>"t"</code>, <code>"f"</code>, <code>"y"</code>, <code>"n"</code>.)
       Case insensitive.

   <li><p><code>"custom_number_formats"</code>: See <a href="../../freemarker/core/Configurable.html#setCustomNumberFormats-java.util.Map-"><code>setCustomNumberFormats(Map)</code></a>.
   <br>String value: Interpreted as an <a href="#fm_obe">object builder expression</a>.
   <br>Example: <code>{ "hex": com.example.HexTemplateNumberFormatFactory,
   "gps": com.example.GPSTemplateNumberFormatFactory }</code>

   <li><p><code>"custom_date_formats"</code>: See <a href="../../freemarker/core/Configurable.html#setCustomDateFormats-java.util.Map-"><code>setCustomDateFormats(Map)</code></a>.
   <br>String value: Interpreted as an <a href="#fm_obe">object builder expression</a>.
   <br>Example: <code>{ "trade": com.example.TradeTemplateDateFormatFactory,
   "log": com.example.LogTemplateDateFormatFactory }</code>

   <li><p><code>"c_format"</code>:
       See <a href="../../freemarker/template/Configuration.html#setCFormat-freemarker.core.CFormat-"><code>Configuration.setCFormat(CFormat)</code></a>.
       <br>String value: <code>"default"</code> (case insensitive) for the default (on <a href="../../freemarker/template/Configuration.html" title="class in freemarker.template"><code>Configuration</code></a> only), or
       one of the predefined values <code>"JavaScript or JSON"</code>, <code>"JSON"</code>,
       <code>"JavaScript"</code>, <code>"Java"</code>, <code>"XS"</code>, <code>"legacy"</code>,
       or an <a href="#fm_obe">object builder expression</a> that gives a <a href="../../freemarker/core/CFormat.html" title="class in freemarker.core"><code>CFormat</code></a> object.

   <li><p><code>"template_exception_handler"</code>:
       See <a href="../../freemarker/core/Configurable.html#setTemplateExceptionHandler-freemarker.template.TemplateExceptionHandler-"><code>setTemplateExceptionHandler(TemplateExceptionHandler)</code></a>.
       <br>String value: If the value contains dot, then it's interpreted as an <a href="#fm_obe">object builder
       expression</a>.
       If the value does not contain dot, then it must be one of these predefined values (case insensitive):
       <code>"rethrow"</code> (means <a href="../../freemarker/template/TemplateExceptionHandler.html#RETHROW_HANDLER"><code>TemplateExceptionHandler.RETHROW_HANDLER</code></a>),
       <code>"debug"</code> (means <a href="../../freemarker/template/TemplateExceptionHandler.html#DEBUG_HANDLER"><code>TemplateExceptionHandler.DEBUG_HANDLER</code></a>),
       <code>"html_debug"</code> (means <a href="../../freemarker/template/TemplateExceptionHandler.html#HTML_DEBUG_HANDLER"><code>TemplateExceptionHandler.HTML_DEBUG_HANDLER</code></a>),
       <code>"ignore"</code> (means <a href="../../freemarker/template/TemplateExceptionHandler.html#IGNORE_HANDLER"><code>TemplateExceptionHandler.IGNORE_HANDLER</code></a>), or
       <code>"default"</code> (only allowed for <a href="../../freemarker/template/Configuration.html" title="class in freemarker.template"><code>Configuration</code></a> instances) for the default value.
       
   <li><p><code>"attempt_exception_reporter"</code>:
       See <a href="../../freemarker/core/Configurable.html#setAttemptExceptionReporter-freemarker.template.AttemptExceptionReporter-"><code>setAttemptExceptionReporter(AttemptExceptionReporter)</code></a>.
       <br>String value: If the value contains dot, then it's interpreted as an <a href="#fm_obe">object builder
       expression</a>.
       If the value does not contain dot, then it must be one of these predefined values (case insensitive):
       <code>"log_error"</code> (means <a href="../../freemarker/template/AttemptExceptionReporter.html#LOG_ERROR_REPORTER"><code>AttemptExceptionReporter.LOG_ERROR_REPORTER</code></a>),
       <code>"log_warn"</code> (means <a href="../../freemarker/template/AttemptExceptionReporter.html#LOG_WARN_REPORTER"><code>AttemptExceptionReporter.LOG_WARN_REPORTER</code></a>), or
       <code>"default"</code> (only allowed for <a href="../../freemarker/template/Configuration.html" title="class in freemarker.template"><code>Configuration</code></a> instances) for the default value.
       
   <li><p><code>"arithmetic_engine"</code>:
       See <a href="../../freemarker/core/Configurable.html#setArithmeticEngine-freemarker.core.ArithmeticEngine-"><code>setArithmeticEngine(ArithmeticEngine)</code></a>.  
       <br>String value: If the value contains dot, then it's interpreted as an <a href="#fm_obe">object builder
       expression</a>.
       If the value does not contain dot,
       then it must be one of these special values (case insensitive):
       <code>"bigdecimal"</code>, <code>"conservative"</code>.
       
   <li><p><code>"object_wrapper"</code>:
       See <a href="../../freemarker/core/Configurable.html#setObjectWrapper-freemarker.template.ObjectWrapper-"><code>setObjectWrapper(ObjectWrapper)</code></a>.
       <br>String value: If the value contains dot, then it's interpreted as an <a href="#fm_obe">object builder
       expression</a>, with the addition that <a href="../../freemarker/ext/beans/BeansWrapper.html" title="class in freemarker.ext.beans"><code>BeansWrapper</code></a>, <a href="../../freemarker/template/DefaultObjectWrapper.html" title="class in freemarker.template"><code>DefaultObjectWrapper</code></a> and
       <a href="../../freemarker/template/SimpleObjectWrapper.html" title="class in freemarker.template"><code>SimpleObjectWrapper</code></a> can be referred without package name. For example, these strings are valid
       values: <code>"DefaultObjectWrapper(2.3.21, forceLegacyNonListCollections=false, iterableSupport=true)"</code>,
       <code>"BeansWrapper(2.3.21, simpleMapWrapper=true)"</code>.
       <br>If the value does not contain dot, then it must be one of these special values (case insensitive):
       <code>"default"</code> means the default of <a href="../../freemarker/template/Configuration.html" title="class in freemarker.template"><code>Configuration</code></a> (the default depends on the
       <code>Configuration#Configuration(Version) incompatible_improvements</code>, but a bug existed in 2.3.21 where
       that was ignored),
       <code>"default_2_3_0"</code> (means the deprecated <a href="../../freemarker/template/ObjectWrapper.html#DEFAULT_WRAPPER"><code>ObjectWrapper.DEFAULT_WRAPPER</code></a>)
       <code>"simple"</code> (means the deprecated <a href="../../freemarker/template/ObjectWrapper.html#SIMPLE_WRAPPER"><code>ObjectWrapper.SIMPLE_WRAPPER</code></a>),
       <code>"beans"</code> (means the deprecated <a href="../../freemarker/template/ObjectWrapper.html#BEANS_WRAPPER"><code>ObjectWrapper.BEANS_WRAPPER</code></a>
       or <a href="../../freemarker/ext/beans/BeansWrapperBuilder.html#build--"><code>BeansWrapperBuilder.build()</code></a>),
       <code>"jython"</code> (means <a href="../../freemarker/template/ObjectWrapper.html#DEFAULT_WRAPPER"><code>ObjectWrapper.DEFAULT_WRAPPER</code></a>)
       
   <li><p><code>"number_format"</code>: See <a href="../../freemarker/core/Configurable.html#setNumberFormat-java.lang.String-"><code>setNumberFormat(String)</code></a>.
   
   <li><p><code>"boolean_format"</code>: See <a href="../../freemarker/core/Configurable.html#setBooleanFormat-java.lang.String-"><code>setBooleanFormat(String)</code></a> .
   
   <li><p><code>"date_format", "time_format", "datetime_format"</code>:
       See <a href="../../freemarker/core/Configurable.html#setDateFormat-java.lang.String-"><code>setDateFormat(String)</code></a>, <a href="../../freemarker/core/Configurable.html#setTimeFormat-java.lang.String-"><code>setTimeFormat(String)</code></a>, <a href="../../freemarker/core/Configurable.html#setDateTimeFormat-java.lang.String-"><code>setDateTimeFormat(String)</code></a>. 
        
   <li><p><code>"time_zone"</code>:
       See <a href="../../freemarker/core/Configurable.html#setTimeZone-java.util.TimeZone-"><code>setTimeZone(TimeZone)</code></a>.
       <br>String value: With the format as <code>TimeZone.getTimeZone(String)</code> defines it. Also, since 2.3.21
       <code>"JVM default"</code> can be used that will be replaced with the actual JVM default time zone when
       <a href="../../freemarker/core/Configurable.html#setSetting-java.lang.String-java.lang.String-"><code>setSetting(String, String)</code></a> is called.
       For example <code>"GMT-8:00"</code> or <code>"America/Los_Angeles"</code>
       <br>If you set this setting, consider setting <code>sql_date_and_time_time_zone</code>
       too (see below)! 
       
   <li><p><code>sql_date_and_time_time_zone</code>:
       See <a href="../../freemarker/core/Configurable.html#setSQLDateAndTimeTimeZone-java.util.TimeZone-"><code>setSQLDateAndTimeTimeZone(TimeZone)</code></a>.
       Since 2.3.21.
       <br>String value: With the format as <code>TimeZone.getTimeZone(String)</code> defines it. Also,
       <code>"JVM default"</code> can be used that will be replaced with the actual JVM default time zone when
       <a href="../../freemarker/core/Configurable.html#setSetting-java.lang.String-java.lang.String-"><code>setSetting(String, String)</code></a> is called. Also <code>"null"</code> can be used, which has the same effect
       as <a href="../../freemarker/core/Configurable.html#setSQLDateAndTimeTimeZone-java.util.TimeZone-"><code>setSQLDateAndTimeTimeZone(null)</code></a>.
       
   <li><p><code>"output_encoding"</code>:
       See <a href="../../freemarker/core/Configurable.html#setOutputEncoding-java.lang.String-"><code>setOutputEncoding(String)</code></a>.
       
   <li><p><code>"url_escaping_charset"</code>:
       See <a href="../../freemarker/core/Configurable.html#setURLEscapingCharset-java.lang.String-"><code>setURLEscapingCharset(String)</code></a>.
       
   <li><p><code>"auto_flush"</code>:
       See <a href="../../freemarker/core/Configurable.html#setAutoFlush-boolean-"><code>setAutoFlush(boolean)</code></a>.
       Since 2.3.17.
       <br>String value: <code>"true"</code>, <code>"false"</code>, <code>"y"</code>,  etc.
       
   <li><p><code>"auto_import"</code>:
       See <a href="../../freemarker/core/Configurable.html#setAutoImports-java.util.Map-"><code>setAutoImports(Map)</code></a>
       <br>String value is something like:
       <br><code>/lib/form.ftl as f, /lib/widget as w, "/lib/odd name.ftl" as odd</code>
       
   <li><p><code>"auto_include"</code>: Sets the list of auto-includes.
       See <a href="../../freemarker/core/Configurable.html#setAutoIncludes-java.util.List-"><code>setAutoIncludes(List)</code></a>
       <br>String value is something like:
       <br><code>/include/common.ftl, "/include/evil name.ftl"</code>
       
   <li><p><code>"lazy_auto_imports"</code>:
       See <a href="../../freemarker/core/Configurable.html#setLazyAutoImports-java.lang.Boolean-"><code>setLazyAutoImports(Boolean)</code></a>.
       <br>String value: <code>"true"</code>, <code>"false"</code> (also the equivalents: <code>"yes"</code>, <code>"no"</code>,
       <code>"t"</code>, <code>"f"</code>, <code>"y"</code>, <code>"n"</code>), case insensitive. Also can be <code>"null"</code>.

   <li><p><code>"lazy_imports"</code>:
       See <a href="../../freemarker/core/Configurable.html#setLazyImports-boolean-"><code>setLazyImports(boolean)</code></a>.
       <br>String value: <code>"true"</code>, <code>"false"</code> (also the equivalents: <code>"yes"</code>, <code>"no"</code>,
       <code>"t"</code>, <code>"f"</code>, <code>"y"</code>, <code>"n"</code>), case insensitive.
       
   <li><p><code>"new_builtin_class_resolver"</code>:
       See <a href="../../freemarker/core/Configurable.html#setNewBuiltinClassResolver-freemarker.core.TemplateClassResolver-"><code>setNewBuiltinClassResolver(TemplateClassResolver)</code></a>.
       Since 2.3.17.
       The value must be one of these (ignore the quotation marks):
       <ol>
         <li><p><code>"unrestricted"</code>:
             Use <a href="../../freemarker/core/TemplateClassResolver.html#UNRESTRICTED_RESOLVER"><code>TemplateClassResolver.UNRESTRICTED_RESOLVER</code></a>
         <li><p><code>"safer"</code>:
             Use <a href="../../freemarker/core/TemplateClassResolver.html#SAFER_RESOLVER"><code>TemplateClassResolver.SAFER_RESOLVER</code></a>
         <li><p><code>"allows_nothing"</code> (or <code>"allowsNothing"</code>):
             Use <a href="../../freemarker/core/TemplateClassResolver.html#ALLOWS_NOTHING_RESOLVER"><code>TemplateClassResolver.ALLOWS_NOTHING_RESOLVER</code></a>
         <li><p>Something that contains colon will use
             <a href="../../freemarker/core/OptInTemplateClassResolver.html" title="class in freemarker.core"><code>OptInTemplateClassResolver</code></a> and is expected to
             store comma separated values (possibly quoted) segmented
             with <code>"allowed_classes:"</code> (or <code>"allowedClasses:"</code>) and/or
             <code>"trusted_templates:"</code> (or <code>"trustedTemplates:"</code>). Examples of valid values:
             
             <table style="width: auto; border-collapse: collapse" border="1"
                  summary="trusted_template value examples">
               <tr>
                 <th>Setting value
                 <th>Meaning
               <tr>
                 <td>
                   <code>allowed_classes: com.example.C1, com.example.C2,
                   trusted_templates: lib/*, safe.ftl</code>                 
                 <td>
                   Only allow instantiating the <code>com.example.C1</code> and
                   <code>com.example.C2</code> classes. But, allow templates
                   within the <code>lib/</code> directory (like
                   <code>lib/foo/bar.ftl</code>) and template <code>safe.ftl</code>
                   (that does not match <code>foo/safe.ftl</code>, only
                   exactly <code>safe.ftl</code>) to instantiate anything
                   that <a href="../../freemarker/core/TemplateClassResolver.html#SAFER_RESOLVER"><code>TemplateClassResolver.SAFER_RESOLVER</code></a> allows.
               <tr>
                 <td>
                   <code>allowed_classes: com.example.C1, com.example.C2</code>
                 <td>Only allow instantiating the <code>com.example.C1</code> and
                   <code>com.example.C2</code> classes. There are no
                   trusted templates.
               <tr>
                 <td>
                         <code>trusted_templates: lib/*, safe.ftl</code>                 
                 <td>
                   Do not allow instantiating any classes, except in
                   templates inside <code>lib/</code> or in template 
                   <code>safe.ftl</code>.
             </table>
             
             <p>For more details see <a href="../../freemarker/core/OptInTemplateClassResolver.html" title="class in freemarker.core"><code>OptInTemplateClassResolver</code></a>.
             
         <li><p>Otherwise if the value contains dot, it's interpreted as an <a href="#fm_obe">object builder
             expression</a>.
       </ol>
       
   <li><p><code>"show_error_tips"</code>:
       See <a href="../../freemarker/core/Configurable.html#setShowErrorTips-boolean-"><code>setShowErrorTips(boolean)</code></a>.
       Since 2.3.21.
       <br>String value: <code>"true"</code>, <code>"false"</code>, <code>"y"</code>,  etc.
       
   <li><p><code>api_builtin_enabled</code>:
       See <a href="../../freemarker/core/Configurable.html#setAPIBuiltinEnabled-boolean-"><code>setAPIBuiltinEnabled(boolean)</code></a>.
       Since 2.3.22.
       <br>String value: <code>"true"</code>, <code>"false"</code>, <code>"y"</code>,  etc.

   <li><p><code>"truncate_builtin_algorithm"</code>:
       See <a href="../../freemarker/core/Configurable.html#setTruncateBuiltinAlgorithm-freemarker.core.TruncateBuiltinAlgorithm-"><code>setTruncateBuiltinAlgorithm(TruncateBuiltinAlgorithm)</code></a>.
       Since 2.3.19.
       <br>String value: An
       <a href="#fm_obe">object builder expression</a>, or one of the predefined values (case insensitive),
       <code>ascii</code> (for <a href="../../freemarker/core/DefaultTruncateBuiltinAlgorithm.html#ASCII_INSTANCE"><code>DefaultTruncateBuiltinAlgorithm.ASCII_INSTANCE</code></a>) and
       <code>unicode</code> (for <a href="../../freemarker/core/DefaultTruncateBuiltinAlgorithm.html#UNICODE_INSTANCE"><code>DefaultTruncateBuiltinAlgorithm.UNICODE_INSTANCE</code></a>).
       <br>Example object builder expressions:
       <br>Use <code>"..."</code> as terminator (and same as markup terminator), and add space if the
       truncation happened on word boundary:
       <br><code>DefaultTruncateBuiltinAlgorithm("...", true)</code>
       <br>Use <code>"..."</code> as terminator, and also a custom HTML for markup terminator, and add space if the
       truncation happened on word boundary:
       <br><code>DefaultTruncateBuiltinAlgorithm("...",
       markup(HTMLOutputFormat(), "&lt;span class=trunc&gt;...&lt;/span&gt;"), true)</code>
       <br>Recreate default truncate algorithm, but with not preferring truncation at word boundaries (i.e.,
       with <code>wordBoundaryMinLength</code> 1.0):
       <br><code>freemarker.core.DefaultTruncateBuiltinAlgorithm(<br>
       DefaultTruncateBuiltinAlgorithm.STANDARD_ASCII_TERMINATOR, null, null,<br>
       DefaultTruncateBuiltinAlgorithm.STANDARD_M_TERMINATOR, null, null,<br>
       true, 1.0)</code>
 </ul>
 
 <p><a href="../../freemarker/template/Configuration.html" title="class in freemarker.template"><code>Configuration</code></a> (a subclass of <a href="../../freemarker/core/Configurable.html" title="class in freemarker.core"><code>Configurable</code></a>) also understands these:</p>
 <ul>
   <li><p><code>"auto_escaping"</code>:
       See <a href="../../freemarker/template/Configuration.html#setAutoEscapingPolicy-int-"><code>Configuration.setAutoEscapingPolicy(int)</code></a>
       <br>String value: <code>"enable_if_default"</code> or <code>"enableIfDefault"</code> for
       <a href="../../freemarker/template/Configuration.html#ENABLE_IF_DEFAULT_AUTO_ESCAPING_POLICY"><code>Configuration.ENABLE_IF_DEFAULT_AUTO_ESCAPING_POLICY</code></a>,
       <code>"enable_if_supported"</code> or <code>"enableIfSupported"</code> for
       <a href="../../freemarker/template/Configuration.html#ENABLE_IF_SUPPORTED_AUTO_ESCAPING_POLICY"><code>Configuration.ENABLE_IF_SUPPORTED_AUTO_ESCAPING_POLICY</code></a>
       <code>"disable"</code> for <a href="../../freemarker/template/Configuration.html#DISABLE_AUTO_ESCAPING_POLICY"><code>Configuration.DISABLE_AUTO_ESCAPING_POLICY</code></a>.
       
   <li><p><code>"default_encoding"</code>:
       See <a href="../../freemarker/template/Configuration.html#setDefaultEncoding-java.lang.String-"><code>Configuration.setDefaultEncoding(String)</code></a>; since 2.3.26 also accepts value "JVM default"
       (not case sensitive) to set the Java environment default value.
       <br>As the default value is the system default, which can change
       from one server to another, <b>you should always set this!</b>
       
   <li><p><code>"localized_lookup"</code>:
       See <a href="../../freemarker/template/Configuration.html#setLocalizedLookup-boolean-"><code>Configuration.setLocalizedLookup(boolean)</code></a>.
       <br>String value: <code>"true"</code>, <code>"false"</code> (also the equivalents: <code>"yes"</code>, <code>"no"</code>,
       <code>"t"</code>, <code>"f"</code>, <code>"y"</code>, <code>"n"</code>).
       Case insensitive.
       
   <li><p><code>"output_format"</code>:
       See <a href="../../freemarker/template/Configuration.html#setOutputFormat-freemarker.core.OutputFormat-"><code>Configuration.setOutputFormat(OutputFormat)</code></a>.
       <br>String value: <code>"default"</code> (case insensitive) for the default,
       one of <code>undefined</code>, <code>HTML</code>, <code>XHTML</code>, <code>XML</code>, <code>RTF</code>, <code>plainText</code>,
       <code>CSS</code>, <code>JavaScript</code>, <code>JSON</code>,
       or an <a href="#fm_obe">object builder expression</a> that gives an <a href="../../freemarker/core/OutputFormat.html" title="class in freemarker.core"><code>OutputFormat</code></a>, for example
       <code>HTMLOutputFormat</code>, or <code>com.example.MyOutputFormat()</code>.

   <li><p><code>"registered_custom_output_formats"</code>:
       See <a href="../../freemarker/template/Configuration.html#setRegisteredCustomOutputFormats-java.util.Collection-"><code>Configuration.setRegisteredCustomOutputFormats(Collection)</code></a>.
       <br>String value: an <a href="#fm_obe">object builder expression</a> that gives a <code>List</code> of
       <a href="../../freemarker/core/OutputFormat.html" title="class in freemarker.core"><code>OutputFormat</code></a>-s.
       Example: <code>[com.example.MyOutputFormat(), com.example.MyOtherOutputFormat()]</code>
       
   <li><p><code>"strict_syntax"</code>:
       See <a href="../../freemarker/template/Configuration.html#setStrictSyntaxMode-boolean-"><code>Configuration.setStrictSyntaxMode(boolean)</code></a>. Deprecated.
       <br>String value: <code>"true"</code>, <code>"false"</code>, <code>yes</code>, etc.
       
   <li><p><code>"whitespace_stripping"</code>:
       See <a href="../../freemarker/template/Configuration.html#setWhitespaceStripping-boolean-"><code>Configuration.setWhitespaceStripping(boolean)</code></a>.
       <br>String value: <code>"true"</code>, <code>"false"</code>, <code>yes</code>, etc.
       
   <li><p><code>"cache_storage"</code>:
       See <a href="../../freemarker/template/Configuration.html#setCacheStorage-freemarker.cache.CacheStorage-"><code>Configuration.setCacheStorage(freemarker.cache.CacheStorage)</code></a>.
       <br>String value: If the value contains dot, then it's interpreted as an <a href="#fm_obe">object builder
       expression</a>.
       If the value does not contain dot,
       then a <a href="../../freemarker/cache/MruCacheStorage.html" title="class in freemarker.cache"><code>MruCacheStorage</code></a> will be used with the
       maximum strong and soft sizes specified with the setting value. Examples
       of valid setting values:
       
       <table style="width: auto; border-collapse: collapse" border="1" summary="cache_storage value examples">
         <tr><th>Setting value<th>max. strong size<th>max. soft size
         <tr><td><code>"strong:50, soft:500"</code><td>50<td>500
         <tr><td><code>"strong:100, soft"</code><td>100<td><code>Integer.MAX_VALUE</code>
         <tr><td><code>"strong:100"</code><td>100<td>0
         <tr><td><code>"soft:100"</code><td>0<td>100
         <tr><td><code>"strong"</code><td><code>Integer.MAX_VALUE</code><td>0
         <tr><td><code>"soft"</code><td>0<td><code>Integer.MAX_VALUE</code>
       </table>
       
       <p>The value is not case sensitive. The order of <tt>soft</tt> and <tt>strong</tt>
       entries is not significant.
       
   <li><p><code>"template_update_delay"</code>:
       Template update delay in <b>seconds</b> (not in milliseconds) if no unit is specified; see
       <a href="../../freemarker/template/Configuration.html#setTemplateUpdateDelayMilliseconds-long-"><code>Configuration.setTemplateUpdateDelayMilliseconds(long)</code></a> for more.
       <br>String value: Valid positive integer, optionally followed by a time unit (recommended). The default
       unit is seconds. It's strongly recommended to specify the unit for clarity, like in "500 ms" or "30 s".
       Supported units are: "s" (seconds), "ms" (milliseconds), "m" (minutes), "h" (hours). The whitespace between
       the unit and the number is optional. Units are only supported since 2.3.23.
       
   <li><p><code>"tag_syntax"</code>:
       See <a href="../../freemarker/template/Configuration.html#setTagSyntax-int-"><code>Configuration.setTagSyntax(int)</code></a>.
       <br>String value: Must be one of
       <code>"auto_detect"</code>, <code>"angle_bracket"</code>, and <code>"square_bracket"</code> (like <code>[#if x]</code>).
       <br>Note that setting the <code>"tagSyntax"</code> to <code>"square_bracket"</code> does <em>not</em> change
       <code>${x}</code> to <code>[=...]</code>; that's <em>interpolation</em> syntax, so use the
       <code>"interpolation_syntax"</code> setting for that, not this setting.

   <li><p><code>"interpolation_syntax"</code> (since 2.3.28):
       See <a href="../../freemarker/template/Configuration.html#setInterpolationSyntax-int-"><code>Configuration.setInterpolationSyntax(int)</code></a>.
       <br>String value: Must be one of
       <code>"legacy"</code>, <code>"dollar"</code>, and <code>"square_bracket"</code> (like <code>[=x]</code>). 
       <br>Note that setting the <code>"interpolation_syntax"</code> to <code>"square_bracket"</code> does <em>not</em>
       change <code>&lt;#if x&gt;</code> to <code>[#if x]</code>; that's <em>tag</em> syntax, so use the
       <code>"tag_syntax"</code> setting for that, not this setting.       
       
   <li><p><code>"naming_convention"</code>:
       See <a href="../../freemarker/template/Configuration.html#setNamingConvention-int-"><code>Configuration.setNamingConvention(int)</code></a>.
       <br>String value: Must be one of
       <code>"auto_detect"</code>, <code>"legacy"</code>, and <code>"camel_case"</code>.

   <li><p><code>"fallback_on_null_loop_variable"</code>:
       See <a href="../../freemarker/template/Configuration.html#setFallbackOnNullLoopVariable-boolean-"><code>Configuration.setFallbackOnNullLoopVariable(boolean)</code></a>.
       <br>String value: <code>"true"</code>, <code>"false"</code> (also the equivalents: <code>"yes"</code>, <code>"no"</code>,
       <code>"t"</code>, <code>"f"</code>, <code>"y"</code>, <code>"n"</code>).
       Case insensitive.

   <li><p><code>"incompatible_improvements"</code>:
       See <a href="../../freemarker/template/Configuration.html#setIncompatibleImprovements-freemarker.template.Version-"><code>Configuration.setIncompatibleImprovements(Version)</code></a>.
       <br>String value: version number like <code>2.3.20</code>.
       
   <li><p><code>"incompatible_enhancements"</code>:
       See: <a href="../../freemarker/template/Configuration.html#setIncompatibleEnhancements-java.lang.String-"><code>Configuration.setIncompatibleEnhancements(String)</code></a>.
       This setting name is deprecated, use <code>"incompatible_improvements"</code> instead.
        
   <li><p><code>"recognize_standard_file_extensions"</code>:
       See <a href="../../freemarker/template/Configuration.html#setRecognizeStandardFileExtensions-boolean-"><code>Configuration.setRecognizeStandardFileExtensions(boolean)</code></a>.
       <br>String value: <code>"default"</code> (case insensitive) for the default, or <code>"true"</code>, <code>"false"</code>,
       <code>yes</code>, etc.
       
   <li><p><code>"template_configurations"</code>:
       See: <a href="../../freemarker/template/Configuration.html#setTemplateConfigurations-freemarker.cache.TemplateConfigurationFactory-"><code>Configuration.setTemplateConfigurations(freemarker.cache.TemplateConfigurationFactory)</code></a>.
       <br>String value: Interpreted as an <a href="#fm_obe">object builder expression</a>,
       can be <code>null</code>.
       
   <li><p><code>"template_loader"</code>:
       See: <a href="../../freemarker/template/Configuration.html#setTemplateLoader-freemarker.cache.TemplateLoader-"><code>Configuration.setTemplateLoader(TemplateLoader)</code></a>.
       <br>String value: <code>"default"</code> (case insensitive) for the default, or else interpreted as an
       <a href="#fm_obe">object builder expression</a>. <code>"null"</code> is also allowed since 2.3.26.
       
   <li><p><code>"template_lookup_strategy"</code>:
       See: <a href="../../freemarker/template/Configuration.html#setTemplateLookupStrategy-freemarker.cache.TemplateLookupStrategy-"><code>Configuration.setTemplateLookupStrategy(freemarker.cache.TemplateLookupStrategy)</code></a>.
       <br>String value: <code>"default"</code> (case insensitive) for the default, or else interpreted as an
       <a href="#fm_obe">object builder expression</a>.
       
   <li><p><code>"template_name_format"</code>:
       See: <a href="../../freemarker/template/Configuration.html#setTemplateNameFormat-freemarker.cache.TemplateNameFormat-"><code>Configuration.setTemplateNameFormat(freemarker.cache.TemplateNameFormat)</code></a>.
       <br>String value: <code>"default"</code> (case insensitive) for the default, <code>"default_2_3_0"</code>
       for <a href="../../freemarker/cache/TemplateNameFormat.html#DEFAULT_2_3_0"><code>TemplateNameFormat.DEFAULT_2_3_0</code></a>, <code>"default_2_4_0"</code> for
       <a href="../../freemarker/cache/TemplateNameFormat.html#DEFAULT_2_4_0"><code>TemplateNameFormat.DEFAULT_2_4_0</code></a>.

   <li><p><code>"tab_size"</code>:
       See <a href="../../freemarker/template/Configuration.html#setTabSize-int-"><code>Configuration.setTabSize(int)</code></a>.
 </ul>
 
 <p><a name="fm_obe"></a>Regarding <em>object builder expressions</em> (used by the setting values where it was
 indicated):
 <ul>
   <li><p>Before FreeMarker 2.3.21 it had to be a fully qualified class name, and nothing else.</li>
   <li><p>Since 2.3.21, the generic syntax is:
       <tt><i>className</i>(<i>constrArg1</i>, <i>constrArg2</i>, ... <i>constrArgN</i>,
       <i>propName1</i>=<i>propValue1</i>, <i>propName2</i>=<i>propValue2</i>, ...
       <i>propNameN</i>=<i>propValueN</i>)</tt>,
       where
       <tt><i>className</i></tt> is the fully qualified class name of the instance to create (except if we have
       builder class or <tt>INSTANCE</tt> field around, but see that later),
       <tt><i>constrArg</i></tt>-s are the values of constructor arguments,
       and <tt><i>propName</i>=<i>propValue</i></tt>-s set JavaBean properties (like <tt>x=1</tt> means
       <tt>setX(1)</tt>) on the created instance. You can have any number of constructor arguments and property
       setters, including 0. Constructor arguments must precede any property setters.   
   </li>
   <li>
     Example: <tt>com.example.MyObjectWrapper(1, 2, exposeFields=true, cacheSize=5000)</tt> is nearly
     equivalent with this Java code:
     <tt>obj = new com.example.MyObjectWrapper(1, 2); obj.setExposeFields(true); obj.setCacheSize(5000);</tt>
   </li>
   <li>
      <p>If you have no constructor arguments and property setters, and the <tt><i>className</i></tt> class has
      a public static <code>INSTANCE</code> field, the value of that filed will be the value of the expression, and
      the constructor won't be called. Note that if you use the backward compatible
      syntax, where these's no parenthesis after the class name, then it will not look for <code>INSTANCE</code>.
   </li>
   <li>
      <p>If there exists a class named <tt><i>className</i>Builder</tt>, then that class will be instantiated
      instead with the given constructor arguments, and the JavaBean properties of that builder instance will be
      set. After that, the public <tt>build()</tt> method of the instance will be called, whose return value
      will be the value of the whole expression. (The builder class and the <tt>build()</tt> method is simply
      found by name, there's no special interface to implement.) Note that if you use the backward compatible
      syntax, where these's no parenthesis after the class name, then it will not look for builder class. Note
      that if you have a builder class, you don't actually need a <tt><i>className</i></tt> class (since 2.3.24);
      after all, <tt><i>className</i>Builder.build()</tt> can return any kind of object. 
   </li>
   <li>
      <p>Currently, the values of arguments and properties can only be one of these:
      <ul>
        <li>A numerical literal, like <code>123</code> or <code>-1.5</code>. The value will be automatically converted to
        the type of the target (just like in FTL). However, a target type is only available if the number will
        be a parameter to a method or constructor, not when it's a value (or key) in a <code>List</code> or
        <code>Map</code> literal. Thus in the last case the type of number will be like in Java language, like
        <code>1</code> is an <code>int</code>, and <code>1.0</code> is a <code>double</code>, and <code>1.0f</code> is a <code>float</code>,
        etc. In all cases, the standard Java type postfixes can be used ("f", "d", "l"), plus "bd" for
        <code>BigDecimal</code> and "bi" for <code>BigInteger</code>.</li>
        <li>A boolean literal: <code>true</code> or <code>false</code>
        <li>The null literal: <code>null</code>
        <li>A string literal with FTL syntax, except that  it can't contain <tt>${...}</tt>-s and
            <tt>#{...}</tt>-s. Examples: <code>"Line 1\nLine 2"</code> or <code>r"C:\temp"</code>.
        <li>A list literal (since 2.3.24) with FTL-like syntax, for example <code>[ 'foo', 2, true ]</code>.
            If the parameter is expected to be array, the list will be automatically converted to array.
            The list items can be any kind of expression, like even object builder expressions.
        <li>A map literal (since 2.3.24) with FTL-like syntax, for example <code>{ 'foo': 2, 'bar': true }</code>.
            The keys and values can be any kind of expression, like even object builder expressions.
            The resulting Java object will be a <code>Map</code> that keeps the item order (<code>LinkedHashMap</code> as
            of this writing).
        <li>A reference to a public static filed, like <code>Configuration.AUTO_DETECT_TAG_SYNTAX</code> or
            <code>com.example.MyClass.MY_CONSTANT</code>.
        <li>An object builder expression. That is, object builder expressions can be nested into each other. 
      </ul>
   </li>
   <li>
     The same kind of expression as for parameters can also be used as top-level expressions (though it's
     rarely useful, apart from using <code>null</code>).
   </li>
   <li>
     <p>The top-level object builder expressions may omit <code>()</code>. In that case, for backward compatibility,
     the <code>INSTANCE</code> field and the builder class is not searched, so the instance will be always
     created with its parameterless constructor. (This behavior will possibly change in 2.4.) The <code>()</code>
     can't be omitted for nested expressions.
   </li>
   <li>
     <p>The following classes can be referred to with simple (unqualified) name instead of fully qualified name:
     <a href="../../freemarker/template/DefaultObjectWrapper.html" title="class in freemarker.template"><code>DefaultObjectWrapper</code></a>, <a href="../../freemarker/ext/beans/BeansWrapper.html" title="class in freemarker.ext.beans"><code>BeansWrapper</code></a>, <a href="../../freemarker/template/SimpleObjectWrapper.html" title="class in freemarker.template"><code>SimpleObjectWrapper</code></a>, <code>Locale</code>,
     <a href="../../freemarker/core/TemplateConfiguration.html" title="class in freemarker.core"><code>TemplateConfiguration</code></a>, <a href="../../freemarker/cache/PathGlobMatcher.html" title="class in freemarker.cache"><code>PathGlobMatcher</code></a>, <a href="../../freemarker/cache/FileNameGlobMatcher.html" title="class in freemarker.cache"><code>FileNameGlobMatcher</code></a>, <a href="../../freemarker/cache/PathRegexMatcher.html" title="class in freemarker.cache"><code>PathRegexMatcher</code></a>,
     <a href="../../freemarker/cache/AndMatcher.html" title="class in freemarker.cache"><code>AndMatcher</code></a>, <a href="../../freemarker/cache/OrMatcher.html" title="class in freemarker.cache"><code>OrMatcher</code></a>, <a href="../../freemarker/cache/NotMatcher.html" title="class in freemarker.cache"><code>NotMatcher</code></a>, <a href="../../freemarker/cache/ConditionalTemplateConfigurationFactory.html" title="class in freemarker.cache"><code>ConditionalTemplateConfigurationFactory</code></a>,
     <a href="../../freemarker/cache/MergingTemplateConfigurationFactory.html" title="class in freemarker.cache"><code>MergingTemplateConfigurationFactory</code></a>, <a href="../../freemarker/cache/FirstMatchTemplateConfigurationFactory.html" title="class in freemarker.cache"><code>FirstMatchTemplateConfigurationFactory</code></a>,
     <a href="../../freemarker/core/HTMLOutputFormat.html" title="class in freemarker.core"><code>HTMLOutputFormat</code></a>, <a href="../../freemarker/core/XMLOutputFormat.html" title="class in freemarker.core"><code>XMLOutputFormat</code></a>, <a href="../../freemarker/core/RTFOutputFormat.html" title="class in freemarker.core"><code>RTFOutputFormat</code></a>, <a href="../../freemarker/core/PlainTextOutputFormat.html" title="class in freemarker.core"><code>PlainTextOutputFormat</code></a>,
     <a href="../../freemarker/core/UndefinedOutputFormat.html" title="class in freemarker.core"><code>UndefinedOutputFormat</code></a>, <a href="../../freemarker/template/Configuration.html" title="class in freemarker.template"><code>Configuration</code></a>, <a href="../../freemarker/core/DefaultTruncateBuiltinAlgorithm.html" title="class in freemarker.core"><code>DefaultTruncateBuiltinAlgorithm</code></a>.
   </li>
   <li>
     <p><code>TimeZone</code> objects can be created like <code>TimeZone("UTC")</code>, despite that there's no a such
     constructor (since 2.3.24).
   </li>
   <li>
     <p><a href="../../freemarker/core/TemplateMarkupOutputModel.html" title="interface in freemarker.core"><code>TemplateMarkupOutputModel</code></a> objects can be created like
     <code>markup(HTMLOutputFormat(), "&lt;h1&gt;Example&lt;/h1&gt;")</code> (since 2.3.29). Of course the 1st argument can be
     any other <a href="../../freemarker/core/MarkupOutputFormat.html" title="class in freemarker.core"><code>MarkupOutputFormat</code></a> too.
   </li>
   <li>
     <p>The classes and methods that the expression meant to access must be all public.
   </li>
 </ul></div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>name</code> - the name of the setting.</dd>
<dd><code>value</code> - the string that describes the new value of the setting.</dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code><a href="../../freemarker/core/Configurable.UnknownSettingException.html" title="class in freemarker.core">Configurable.UnknownSettingException</a></code> - if the name is wrong.</dd>
<dd><code><a href="../../freemarker/template/TemplateException.html" title="class in freemarker.template">TemplateException</a></code> - if the new value of the setting can't be set for any other reasons.</dd>
</dl>
</li>
</ul>
<a name="getSettingNames-boolean-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getSettingNames</h4>
<pre>public&nbsp;java.util.Set&lt;java.lang.String&gt;&nbsp;getSettingNames(boolean&nbsp;camelCase)</pre>
<div class="block">Returns the valid setting names that aren't <a href="../../freemarker/template/Configuration.html" title="class in freemarker.template"><code>Configuration</code></a>-only.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>camelCase</code> - If we want the setting names with camel case naming convention, or with snake case (legacy) naming
            convention.</dd>
<dt><span class="simpleTagLabel">Since:</span></dt>
<dd>2.3.24</dd>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../freemarker/template/Configuration.html#getSettingNames-boolean-"><code>Configuration.getSettingNames(boolean)</code></a></dd>
</dl>
</li>
</ul>
<a name="setStrictBeanModels-boolean-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setStrictBeanModels</h4>
<pre>@Deprecated
public&nbsp;void&nbsp;setStrictBeanModels(boolean&nbsp;strict)</pre>
<div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;<span class="deprecationComment">Set this on the <a href="../../freemarker/template/ObjectWrapper.html" title="interface in freemarker.template"><code>ObjectWrapper</code></a> itself.</span></div>
</li>
</ul>
<a name="getSetting-java.lang.String-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getSetting</h4>
<pre>@Deprecated
public&nbsp;java.lang.String&nbsp;getSetting(java.lang.String&nbsp;key)</pre>
<div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;<span class="deprecationComment">It's not possible in general to convert setting values to string,
     and thus it's impossible to ensure that <a href="../../freemarker/core/Configurable.html#setSetting-java.lang.String-java.lang.String-"><code>setSetting(String, String)</code></a> will work with
     the returned value correctly.</span></div>
<div class="block">Returns the textual representation of a setting.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>key</code> - the setting key. Can be any of standard <tt>XXX_KEY</tt>
 constants, or a custom key.</dd>
</dl>
</li>
</ul>
<a name="getSettings--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getSettings</h4>
<pre>@Deprecated
public&nbsp;java.util.Map&nbsp;getSettings()</pre>
<div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;<span class="deprecationComment">This method was always defective, and certainly it always
     will be. Don't use it. (Simply, it's hardly possible in general to
     convert setting values to text in a way that ensures that
     <a href="../../freemarker/core/Configurable.html#setSettings-java.util.Properties-"><code>setSettings(Properties)</code></a> will work with them correctly.)</span></div>
<div class="block">This meant to return the String-to-String <code>Map</code> of the
 settings. So it actually should return a <code>Properties</code> object,
 but it doesn't by mistake. The returned <code>Map</code> is read-only,
 but it will reflect the further configuration changes (aliasing effect).</div>
</li>
</ul>
<a name="getEnvironment--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getEnvironment</h4>
<pre>protected&nbsp;<a href="../../freemarker/core/Environment.html" title="class in freemarker.core">Environment</a>&nbsp;getEnvironment()</pre>
</li>
</ul>
<a name="unknownSettingException-java.lang.String-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>unknownSettingException</h4>
<pre>protected&nbsp;<a href="../../freemarker/template/TemplateException.html" title="class in freemarker.template">TemplateException</a>&nbsp;unknownSettingException(java.lang.String&nbsp;name)</pre>
<div class="block">Creates the exception that should be thrown when a setting name isn't recognized.</div>
</li>
</ul>
<a name="getCorrectedNameForUnknownSetting-java.lang.String-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getCorrectedNameForUnknownSetting</h4>
<pre>protected&nbsp;java.lang.String&nbsp;getCorrectedNameForUnknownSetting(java.lang.String&nbsp;name)</pre>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>name</code> - The wrong name</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>The corrected name, or <code>null</code> if there's no known correction</dd>
<dt><span class="simpleTagLabel">Since:</span></dt>
<dd>2.3.21</dd>
</dl>
</li>
</ul>
<a name="settingValueAssignmentException-java.lang.String-java.lang.String-java.lang.Throwable-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>settingValueAssignmentException</h4>
<pre>protected&nbsp;<a href="../../freemarker/template/TemplateException.html" title="class in freemarker.template">TemplateException</a>&nbsp;settingValueAssignmentException(java.lang.String&nbsp;name,
                                                            java.lang.String&nbsp;value,
                                                            java.lang.Throwable&nbsp;cause)</pre>
<dl>
<dt><span class="simpleTagLabel">Since:</span></dt>
<dd>2.3.21</dd>
</dl>
</li>
</ul>
<a name="invalidSettingValueException-java.lang.String-java.lang.String-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>invalidSettingValueException</h4>
<pre>protected&nbsp;<a href="../../freemarker/template/TemplateException.html" title="class in freemarker.template">TemplateException</a>&nbsp;invalidSettingValueException(java.lang.String&nbsp;name,
                                                         java.lang.String&nbsp;value)</pre>
</li>
</ul>
<a name="setSettings-java.util.Properties-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setSettings</h4>
<pre>public&nbsp;void&nbsp;setSettings(java.util.Properties&nbsp;props)
                 throws <a href="../../freemarker/template/TemplateException.html" title="class in freemarker.template">TemplateException</a></pre>
<div class="block">Set the settings stored in a <code>Properties</code> object.</div>
<dl>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code><a href="../../freemarker/template/TemplateException.html" title="class in freemarker.template">TemplateException</a></code> - if the <code>Properties</code> object contains
     invalid keys, or invalid setting values, or any other error occurs
     while changing the settings.</dd>
</dl>
</li>
</ul>
<a name="setSettings-java.io.InputStream-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setSettings</h4>
<pre>public&nbsp;void&nbsp;setSettings(java.io.InputStream&nbsp;propsIn)
                 throws <a href="../../freemarker/template/TemplateException.html" title="class in freemarker.template">TemplateException</a>,
                        java.io.IOException</pre>
<div class="block">Reads a setting list (key and element pairs) from the input stream.
 The stream has to follow the usual <code>.properties</code> format.</div>
<dl>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code><a href="../../freemarker/template/TemplateException.html" title="class in freemarker.template">TemplateException</a></code> - if the stream contains
     invalid keys, or invalid setting values, or any other error occurs
     while changing the settings.</dd>
<dd><code>java.io.IOException</code> - if an error occurred when reading from the input stream.</dd>
</dl>
</li>
</ul>
<a name="setCustomAttribute-java.lang.String-java.lang.Object-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setCustomAttribute</h4>
<pre>public&nbsp;void&nbsp;setCustomAttribute(java.lang.String&nbsp;name,
                               java.lang.Object&nbsp;value)</pre>
<div class="block">Sets a named custom attribute for this configurable.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>name</code> - the name of the custom attribute</dd>
<dd><code>value</code> - the value of the custom attribute. You can set the value to
 null, however note that there is a semantic difference between an
 attribute set to null and an attribute that is not present, see
 <a href="../../freemarker/core/Configurable.html#removeCustomAttribute-java.lang.String-"><code>removeCustomAttribute(String)</code></a>.</dd>
</dl>
</li>
</ul>
<a name="getCustomAttributeNames--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getCustomAttributeNames</h4>
<pre>public&nbsp;java.lang.String[]&nbsp;getCustomAttributeNames()</pre>
<div class="block">Returns an array with names of all custom attributes defined directly 
 on this configurable. (That is, it doesn't contain the names of custom attributes
 defined indirectly on its parent configurables.) The returned array is never null,
 but can be zero-length.
 The order of elements in the returned array is not defined and can change
 between invocations.</div>
</li>
</ul>
<a name="removeCustomAttribute-java.lang.String-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>removeCustomAttribute</h4>
<pre>public&nbsp;void&nbsp;removeCustomAttribute(java.lang.String&nbsp;name)</pre>
<div class="block">Removes a named custom attribute for this configurable. Note that this
 is different than setting the custom attribute value to null. If you
 set the value to null, <a href="../../freemarker/core/Configurable.html#getCustomAttribute-java.lang.String-"><code>getCustomAttribute(String)</code></a> will return
 null, while if you remove the attribute, it will return the value of
 the attribute in the parent configurable (if there is a parent 
 configurable, that is).</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>name</code> - the name of the custom attribute</dd>
</dl>
</li>
</ul>
<a name="getCustomAttribute-java.lang.String-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getCustomAttribute</h4>
<pre>public&nbsp;java.lang.Object&nbsp;getCustomAttribute(java.lang.String&nbsp;name)</pre>
<div class="block">Retrieves a named custom attribute for this configurable. If the 
 attribute is not present in the configurable, and the configurable has
 a parent, then the parent is looked up as well.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>name</code> - the name of the custom attribute</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>the value of the custom attribute. Note that if the custom attribute
 was created with <tt>&lt;#ftl&nbsp;attributes={...}&gt;</tt>, then this value is already
 unwrapped (i.e. it's a <code>String</code>, or a <code>List</code>, or a
 <code>Map</code>, ...etc., not a FreeMarker specific class).</dd>
</dl>
</li>
</ul>
<a name="doAutoImportsAndIncludes-freemarker.core.Environment-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>doAutoImportsAndIncludes</h4>
<pre>protected&nbsp;void&nbsp;doAutoImportsAndIncludes(<a href="../../freemarker/core/Environment.html" title="class in freemarker.core">Environment</a>&nbsp;env)
                                 throws <a href="../../freemarker/template/TemplateException.html" title="class in freemarker.template">TemplateException</a>,
                                        java.io.IOException</pre>
<div class="block">Executes the auto-imports and auto-includes for the main template of this environment.
 This is not meant to be called or overridden by code outside of FreeMarker.</div>
<dl>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code><a href="../../freemarker/template/TemplateException.html" title="class in freemarker.template">TemplateException</a></code></dd>
<dd><code>java.io.IOException</code></dd>
</dl>
</li>
</ul>
<a name="parseAsList-java.lang.String-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>parseAsList</h4>
<pre>protected&nbsp;java.util.ArrayList&nbsp;parseAsList(java.lang.String&nbsp;text)
                                   throws <a href="../../freemarker/core/ParseException.html" title="class in freemarker.core">ParseException</a></pre>
<dl>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code><a href="../../freemarker/core/ParseException.html" title="class in freemarker.core">ParseException</a></code></dd>
</dl>
</li>
</ul>
<a name="parseAsSegmentedList-java.lang.String-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>parseAsSegmentedList</h4>
<pre>protected&nbsp;java.util.ArrayList&nbsp;parseAsSegmentedList(java.lang.String&nbsp;text)
                                            throws <a href="../../freemarker/core/ParseException.html" title="class in freemarker.core">ParseException</a></pre>
<dl>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code><a href="../../freemarker/core/ParseException.html" title="class in freemarker.core">ParseException</a></code></dd>
</dl>
</li>
</ul>
<a name="parseAsImportList-java.lang.String-">
<!--   -->
</a>
<ul class="blockListLast">
<li class="blockList">
<h4>parseAsImportList</h4>
<pre>protected&nbsp;java.util.HashMap&nbsp;parseAsImportList(java.lang.String&nbsp;text)
                                       throws <a href="../../freemarker/core/ParseException.html" title="class in freemarker.core">ParseException</a></pre>
<dl>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code><a href="../../freemarker/core/ParseException.html" title="class in freemarker.core">ParseException</a></code></dd>
</dl>
</li>
</ul>
</li>
</ul>
</li>
</ul>
</div>
</div>
<!-- ========= END OF CLASS DATA ========= -->
<!-- ======= START OF BOTTOM NAVBAR ====== -->
<div class="bottomNav"><a name="navbar.bottom">
<!--   -->
</a>
<div class="skipNav"><a href="#skip.navbar.bottom" title="Skip navigation links">Skip navigation links</a></div>
<a name="navbar.bottom.firstrow">
<!--   -->
</a>
<ul class="navList" title="Navigation">
<li><a href="../../overview-summary.html">Overview</a></li>
<li><a href="package-summary.html">Package</a></li>
<li class="navBarCell1Rev">Class</li>
<li><a href="class-use/Configurable.html">Use</a></li>
<li><a href="package-tree.html">Tree</a></li>
<li><a href="../../deprecated-list.html">Deprecated</a></li>
<li><a href="../../index-all.html">Index</a></li>
<li><a href="../../help-doc.html">Help</a></li>
</ul>
</div>
<div class="subNav">
<ul class="navList">
<li><a href="../../freemarker/core/CommonTemplateMarkupOutputModel.html" title="class in freemarker.core"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
<li><a href="../../freemarker/core/Configurable.SettingValueAssignmentException.html" title="class in freemarker.core"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
</ul>
<ul class="navList">
<li><a href="../../index.html?freemarker/core/Configurable.html" target="_top">Frames</a></li>
<li><a href="Configurable.html" target="_top">No&nbsp;Frames</a></li>
</ul>
<ul class="navList" id="allclasses_navbar_bottom">
<li><a href="../../allclasses-noframe.html">All&nbsp;Classes</a></li>
</ul>
<div>
<script type="text/javascript"><!--
  allClassesLink = document.getElementById("allclasses_navbar_bottom");
  if(window==top) {
    allClassesLink.style.display = "block";
  }
  else {
    allClassesLink.style.display = "none";
  }
  //-->
</script>
</div>
<div>
<ul class="subNavList">
<li>Summary:&nbsp;</li>
<li><a href="#nested.class.summary">Nested</a>&nbsp;|&nbsp;</li>
<li><a href="#field.summary">Field</a>&nbsp;|&nbsp;</li>
<li><a href="#constructor.summary">Constr</a>&nbsp;|&nbsp;</li>
<li><a href="#method.summary">Method</a></li>
</ul>
<ul class="subNavList">
<li>Detail:&nbsp;</li>
<li><a href="#field.detail">Field</a>&nbsp;|&nbsp;</li>
<li><a href="#constructor.detail">Constr</a>&nbsp;|&nbsp;</li>
<li><a href="#method.detail">Method</a></li>
</ul>
</div>
<a name="skip.navbar.bottom">
<!--   -->
</a></div>
<!-- ======== END OF BOTTOM NAVBAR ======= -->
</body>
</html>
