The following built-ins are deprecated, but still working:
-
default: This was deprecated with the introduction of the default value operator.exp1?default(exp2)is near equivalent withexp1!exp2, and(exp1)?default(exp2)is near equivalent with with(exp1)!exp2. The only difference is that prior to FreeMarker 2.4, thedefaultbuilt-in has always evaluatedexp2, while the default value operator only evaluates it when the default value is really needed. Starting from FreeMarker 2.4, however, thedefaultbuilt-in was improved, and behaves exactly like the default value operator. -
exists: This was deprecated with the introduction of the missing value test operator.exp1?existsis equivalent withexp1??, also(exp1)?existsis equivalent with with(exp1)??. -
if_exists: This was deprecated with the introduction of the default value operator.exp1?if_existsis similar toexp1!, and(exp1)?if_existsis similar to(exp1)!. The difference is that the default value withif_existsis not only empty string, empty sequence and empty hashs at the same time, but also booleanfalseand a transform that does nothing and ignores all parameters. -
web_safe: the same ashtml
