blob: 19360d3b5cfe7925263545884f97f1e17e069129 [file] [log] [blame]
<!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:34 CET 2023 -->
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>TemplateMarkupOutputModel (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="TemplateMarkupOutputModel (FreeMarker 2.3.32 API)";
}
}
catch(err) {
}
//-->
var methods = {"i0":6};
var tabs = {65535:["t0","All Methods"],2:["t2","Instance Methods"],4:["t3","Abstract 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/TemplateMarkupOutputModel.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/TemplateHTMLOutputModel.html" title="class in freemarker.core"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
<li><a href="../../freemarker/core/TemplateNumberFormat.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/TemplateMarkupOutputModel.html" target="_top">Frames</a></li>
<li><a href="TemplateMarkupOutputModel.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>Nested&nbsp;|&nbsp;</li>
<li>Field&nbsp;|&nbsp;</li>
<li>Constr&nbsp;|&nbsp;</li>
<li><a href="#method.summary">Method</a></li>
</ul>
<ul class="subNavList">
<li>Detail:&nbsp;</li>
<li>Field&nbsp;|&nbsp;</li>
<li>Constr&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="Interface TemplateMarkupOutputModel" class="title">Interface TemplateMarkupOutputModel&lt;MO extends TemplateMarkupOutputModel&lt;MO&gt;&gt;</h2>
</div>
<div class="contentContainer">
<div class="description">
<ul class="blockList">
<li class="blockList">
<dl>
<dt><span class="paramLabel">Type Parameters:</span></dt>
<dd><code>MO</code> - Refers to the interface's own type, which is useful in interfaces that extend
<a href="../../freemarker/core/TemplateMarkupOutputModel.html" title="interface in freemarker.core"><code>TemplateMarkupOutputModel</code></a> (Java Generics trick).</dd>
</dl>
<dl>
<dt>All Superinterfaces:</dt>
<dd><a href="../../freemarker/template/TemplateModel.html" title="interface in freemarker.template">TemplateModel</a></dd>
</dl>
<dl>
<dt>All Known Implementing Classes:</dt>
<dd><a href="../../freemarker/core/CommonTemplateMarkupOutputModel.html" title="class in freemarker.core">CommonTemplateMarkupOutputModel</a>, <a href="../../freemarker/core/TemplateCombinedMarkupOutputModel.html" title="class in freemarker.core">TemplateCombinedMarkupOutputModel</a>, <a href="../../freemarker/core/TemplateHTMLOutputModel.html" title="class in freemarker.core">TemplateHTMLOutputModel</a>, <a href="../../freemarker/core/TemplateRTFOutputModel.html" title="class in freemarker.core">TemplateRTFOutputModel</a>, <a href="../../freemarker/core/TemplateXHTMLOutputModel.html" title="class in freemarker.core">TemplateXHTMLOutputModel</a>, <a href="../../freemarker/core/TemplateXMLOutputModel.html" title="class in freemarker.core">TemplateXMLOutputModel</a></dd>
</dl>
<hr>
<br>
<pre>public interface <span class="typeNameLabel">TemplateMarkupOutputModel&lt;MO extends TemplateMarkupOutputModel&lt;MO&gt;&gt;</span>
extends <a href="../../freemarker/template/TemplateModel.html" title="interface in freemarker.template">TemplateModel</a></pre>
<div class="block">"markup output" template language data-type; stores markup (some kind of "rich text" / structured format, as opposed
to plain text) that meant to be printed as template output. This type is related to the <a href="../../freemarker/core/OutputFormat.html" title="class in freemarker.core"><code>OutputFormat</code></a>
mechanism. Values of this kind are exempt from <a href="../../freemarker/core/OutputFormat.html" title="class in freemarker.core"><code>OutputFormat</code></a>-based automatic escaping.
<p>
Each implementation of this type has a corresponding <a href="../../freemarker/core/OutputFormat.html" title="class in freemarker.core"><code>OutputFormat</code></a> subclass, whose singleton instance is
returned by <a href="../../freemarker/core/TemplateMarkupOutputModel.html#getOutputFormat--"><code>getOutputFormat()</code></a>. See more about how markup output values work at <a href="../../freemarker/core/OutputFormat.html" title="class in freemarker.core"><code>OutputFormat</code></a>.
<p>
Note that <a href="../../freemarker/core/TemplateMarkupOutputModel.html" title="interface in freemarker.core"><code>TemplateMarkupOutputModel</code></a>-s are by design not treated like <a href="../../freemarker/template/TemplateScalarModel.html" title="interface in freemarker.template"><code>TemplateScalarModel</code></a>-s, and so
the implementations of this interface usually shouldn't implement <a href="../../freemarker/template/TemplateScalarModel.html" title="interface in freemarker.template"><code>TemplateScalarModel</code></a>. (Because, operations
applicable on plain strings, like converting to upper case, substringing, etc., can corrupt markup.) If the template
author wants to pass in the "source" of the markup as string somewhere, he should use <code>?markup_string</code>.</div>
<dl>
<dt><span class="simpleTagLabel">Since:</span></dt>
<dd>2.3.24</dd>
</dl>
</li>
</ul>
</div>
<div class="summary">
<ul class="blockList">
<li class="blockList">
<!-- =========== FIELD SUMMARY =========== -->
<ul class="blockList">
<li class="blockList"><a name="field.summary">
<!-- -->
</a>
<h3>Field Summary</h3>
<ul class="blockList">
<li class="blockList"><a name="fields.inherited.from.class.freemarker.template.TemplateModel">
<!-- -->
</a>
<h3>Fields inherited from interface&nbsp;freemarker.template.<a href="../../freemarker/template/TemplateModel.html" title="interface in freemarker.template">TemplateModel</a></h3>
<code><a href="../../freemarker/template/TemplateModel.html#NOTHING">NOTHING</a></code></li>
</ul>
</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="t3" class="tableTab"><span><a href="javascript:show(4);">Abstract 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><a href="../../freemarker/core/MarkupOutputFormat.html" title="class in freemarker.core">MarkupOutputFormat</a>&lt;<a href="../../freemarker/core/TemplateMarkupOutputModel.html" title="type parameter in TemplateMarkupOutputModel">MO</a>&gt;</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../freemarker/core/TemplateMarkupOutputModel.html#getOutputFormat--">getOutputFormat</a></span>()</code>
<div class="block">Returns the singleton <a href="../../freemarker/core/OutputFormat.html" title="class in freemarker.core"><code>OutputFormat</code></a> object that implements the operations for the "markup output" value.</div>
</td>
</tr>
</table>
</li>
</ul>
</li>
</ul>
</div>
<div class="details">
<ul class="blockList">
<li class="blockList">
<!-- ============ METHOD DETAIL ========== -->
<ul class="blockList">
<li class="blockList"><a name="method.detail">
<!-- -->
</a>
<h3>Method Detail</h3>
<a name="getOutputFormat--">
<!-- -->
</a>
<ul class="blockListLast">
<li class="blockList">
<h4>getOutputFormat</h4>
<pre><a href="../../freemarker/core/MarkupOutputFormat.html" title="class in freemarker.core">MarkupOutputFormat</a>&lt;<a href="../../freemarker/core/TemplateMarkupOutputModel.html" title="type parameter in TemplateMarkupOutputModel">MO</a>&gt;&nbsp;getOutputFormat()</pre>
<div class="block">Returns the singleton <a href="../../freemarker/core/OutputFormat.html" title="class in freemarker.core"><code>OutputFormat</code></a> object that implements the operations for the "markup output" value.</div>
</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/TemplateMarkupOutputModel.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/TemplateHTMLOutputModel.html" title="class in freemarker.core"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
<li><a href="../../freemarker/core/TemplateNumberFormat.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/TemplateMarkupOutputModel.html" target="_top">Frames</a></li>
<li><a href="TemplateMarkupOutputModel.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>Nested&nbsp;|&nbsp;</li>
<li>Field&nbsp;|&nbsp;</li>
<li>Constr&nbsp;|&nbsp;</li>
<li><a href="#method.summary">Method</a></li>
</ul>
<ul class="subNavList">
<li>Detail:&nbsp;</li>
<li>Field&nbsp;|&nbsp;</li>
<li>Constr&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>