<a name="#${funcInfo.name}"></a>

#[[##]]# ${funcInfo.name}

<pre>
${util.funcSummary($funcInfo)}
</pre>

${funcInfo.docString}

#if (!$funcInfo.parameters.isEmpty())
#[[###]]# Parameters

<table class="params-table">
  <colgroup>
    <col class="col-param" />
    <col class="col-description" />
  </colgroup>
  <tbody>
#foreach ($param in $funcInfo.parameters)
    <tr id="${funcInfo.name}-${param.name}">
      <td><code>${param.name}</code></td>
      <td>
        ${param.mandatoryString}.#if($param.hasDefaultValueString()) default is <code>${param.defaultString}</code>#end

#if (!$param.docString.isEmpty())
        <p>
          ${param.docString}
        </p>
#end
      </td>
    </tr>
#end
  </tbody>
</table>
#end
