OptimizerUtil (FreeMarker 2.3.35 API)
Description: declaration: package: freemarker.template.utility, class: OptimizerUtil

Package freemarker.template.utility

# Class OptimizerUtil

java.lang.Object
freemarker.template.utility.OptimizerUtil

public class OptimizerUtil extends Object

- ## Method Summary

  Modifier and Type
  Method
  Description
  `static List`
  `optimizeListStorage​(List list)`
  `static Number`
  `optimizeNumberRepresentation​(Number number)`
  This is needed to reverse the extreme conversions in arithmetic operations so that numbers can be meaningfully used with models that don't know what to do with a BigDecimal.

  ### Methods inherited from class java.lang.Object

  `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- ## Method Details

  - ### optimizeListStorage

    public static List optimizeListStorage​(List list)

  - ### optimizeNumberRepresentation

    public static Number optimizeNumberRepresentation​(Number number)
    This is needed to reverse the extreme conversions in arithmetic operations so that numbers can be meaningfully used with models that don't know what to do with a BigDecimal. Of course, this will make impossible for these models (i.e. Jython) to receive a BigDecimal even if it was originally placed as such in the data model. However, since arithmetic operations aggressively erase the information regarding the original number type, we have no other choice to ensure expected operation in majority of cases.