org.mapstruct.ap.internal.model.IterableCreation.ftl Maven / Gradle / Ivy
<#--
Copyright MapStruct Authors.
Licensed under the Apache License version 2.0, available at http://www.apache.org/licenses/LICENSE-2.0
-->
<#-- @ftlvariable name="" type="org.mapstruct.ap.internal.model.IterableCreation" -->
<@compress single_line=true>
<#if factoryMethod??>
<@includeModel object=factoryMethod targetType=resultType/>
<#elseif enumSet>
EnumSet.noneOf( <@includeModel object=enumSetElementType raw=true/>.class )
<#else>
new
<#if resultType.implementationType??>
<@includeModel object=resultType.implementationType/><#if ext.useSizeIfPossible?? && ext.useSizeIfPossible && canUseSize>( <@sizeForCreation /> )<#else>()
<#else>
<@includeModel object=resultType/>()
<#macro sizeForCreation>
<@compress single_line=true>
<#if loadFactorAdjustment>
Math.max( (int) ( <@iterableSize/> / .75f ) + 1, 16 )
<#else>
<@iterableSize/>
<#macro iterableSize>
<@compress single_line=true>
<#if sourceParameter.type.arrayType>
${sourceParameter.name}.length
<#else>
${sourceParameter.name}.size()