You are viewing a plain text version of this content. The canonical link for it is here.
Posted to notifications@freemarker.apache.org by dd...@apache.org on 2017/03/03 20:32:35 UTC

incubator-freemarker git commit: Removed long deprecated directive.

Repository: incubator-freemarker
Updated Branches:
  refs/heads/3 b4dfe5d24 -> 5965bc4a0


Removed long deprecated <call ...>directive.


Project: http://git-wip-us.apache.org/repos/asf/incubator-freemarker/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-freemarker/commit/5965bc4a
Tree: http://git-wip-us.apache.org/repos/asf/incubator-freemarker/tree/5965bc4a
Diff: http://git-wip-us.apache.org/repos/asf/incubator-freemarker/diff/5965bc4a

Branch: refs/heads/3
Commit: 5965bc4a0fab1628722508ca106c3233039fed07
Parents: b4dfe5d
Author: ddekany <dd...@apache.org>
Authored: Fri Mar 3 21:32:26 2017 +0100
Committer: ddekany <dd...@apache.org>
Committed: Fri Mar 3 21:32:26 2017 +0100

----------------------------------------------------------------------
 .../freemarker/core/ASTDirUserDefined.java      |  3 +-
 src/main/javacc/FTL.jj                          | 41 --------------------
 src/manual/en_US/FM3-CHANGE-LOG.txt             |  2 +
 3 files changed, 3 insertions(+), 43 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/incubator-freemarker/blob/5965bc4a/src/main/java/org/apache/freemarker/core/ASTDirUserDefined.java
----------------------------------------------------------------------
diff --git a/src/main/java/org/apache/freemarker/core/ASTDirUserDefined.java b/src/main/java/org/apache/freemarker/core/ASTDirUserDefined.java
index 05d0850..6042bd8 100644
--- a/src/main/java/org/apache/freemarker/core/ASTDirUserDefined.java
+++ b/src/main/java/org/apache/freemarker/core/ASTDirUserDefined.java
@@ -45,7 +45,6 @@ final class ASTDirUserDefined extends ASTDirective implements DirectiveCallPlace
     private ASTExpression nameExp;
     private Map namedArgs;
     private List positionalArgs, bodyParameterNames;
-    boolean legacySyntax;
     private transient volatile SoftReference/*List<Map.Entry<String,ASTExpression>>*/ sortedNamedArgsCache;
     private CustomDataHolder customDataHolder;
 
@@ -75,7 +74,7 @@ final class ASTDirUserDefined extends ASTDirective implements DirectiveCallPlace
         if (tm == ASTDirMacro.DO_NOTHING_MACRO) return null; // shortcut here.
         if (tm instanceof ASTDirMacro) {
             ASTDirMacro macro = (ASTDirMacro) tm;
-            if (macro.isFunction() && !legacySyntax) {
+            if (macro.isFunction()) {
                 throw new _MiscTemplateException(env,
                         "Routine ", new _DelayedJQuote(macro.getName()), " is a function, not a directive. "
                         + "Functions can only be called from expressions, like in ${f()}, ${x + f()} or ",

http://git-wip-us.apache.org/repos/asf/incubator-freemarker/blob/5965bc4a/src/main/javacc/FTL.jj
----------------------------------------------------------------------
diff --git a/src/main/javacc/FTL.jj b/src/main/javacc/FTL.jj
index b654f44..b66623a 100644
--- a/src/main/javacc/FTL.jj
+++ b/src/main/javacc/FTL.jj
@@ -797,8 +797,6 @@ TOKEN:
     |
     <RETURN : <START_TAG> "return" <BLANK>> { handleTagSyntaxAndSwitch(matchedToken, FM_EXPRESSION); }
     |
-    <CALL : <START_TAG> "call" <BLANK>> { handleTagSyntaxAndSwitch(matchedToken, FM_EXPRESSION); }
-    |
     <SETTING : <START_TAG> "setting" <BLANK>> { handleTagSyntaxAndSwitch(matchedToken, FM_EXPRESSION); }
     |
     <OUTPUTFORMAT : <START_TAG> "output" ("f"|"F") "ormat" <BLANK>> {
@@ -3277,43 +3275,6 @@ ASTElement UnifiedMacroTransform() :
     }
 }
 
-ASTElement Call() :
-{
-    Token start, end, id;
-    HashMap namedArgs = null;
-    ArrayList positionalArgs = null;
-    String macroName= null;
-}
-{
-    start = <CALL>
-    id = <ID> { macroName = id.image; }
-    (
-        LOOKAHEAD(<ID><EQUALS>)
-        namedArgs = NamedArgs()
-        |
-        (
-            [
-            LOOKAHEAD(<OPEN_PAREN>)
-                <OPEN_PAREN>
-            ]
-            positionalArgs = PositionalArgs()
-            [<CLOSE_PAREN>]
-        )
-    )
-    end = LooseDirectiveEnd()
-    {
-        ASTDirUserDefined result = null;
-        if (positionalArgs != null) {
-            result = new ASTDirUserDefined(new ASTExpVariable(macroName), positionalArgs, TemplateElements.EMPTY, null);
-        } else {
-            result = new ASTDirUserDefined(new ASTExpVariable(macroName), namedArgs, TemplateElements.EMPTY, null);
-        }
-        result.legacySyntax = true;
-        result.setLocation(template, start, end);
-        return result;
-    }
-}
-
 HashMap NamedArgs() :
 {
     HashMap result = new HashMap();
@@ -3758,8 +3719,6 @@ ASTElement FreemarkerDirective() :
         |
         tp = ASTDirSep()
         |
-        tp = Call()
-        |
         tp = ASTComment()
         |
         tp = NoParse()

http://git-wip-us.apache.org/repos/asf/incubator-freemarker/blob/5965bc4a/src/manual/en_US/FM3-CHANGE-LOG.txt
----------------------------------------------------------------------
diff --git a/src/manual/en_US/FM3-CHANGE-LOG.txt b/src/manual/en_US/FM3-CHANGE-LOG.txt
index 3c66826..221d135 100644
--- a/src/manual/en_US/FM3-CHANGE-LOG.txt
+++ b/src/manual/en_US/FM3-CHANGE-LOG.txt
@@ -139,3 +139,5 @@ the FreeMarer 3 changelog here:
     of FreemarerServlet.createDefaultObjectWrapper() has changed to ObjectWrapperAndUnwrapper.) The unwrapping functionality is
     required when calling JSP custom tags/functions, and in FreeMarker 2 this was worked around with using the
     global static default DefaultObjectWrapper when the ObjectWrapper wasn't an ObjectWrapperAndUnwrapper.
+- Removed some long deprecated template language directives:
+  - <call ...>
\ No newline at end of file