You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@flex.apache.org by cd...@apache.org on 2016/04/21 13:35:43 UTC

[13/19] git commit: [flex-falcon] [refs/heads/feature/maven-migration-test] - compiler.jx: externc can now handle templates on fields

compiler.jx: externc can now handle templates on fields


Project: http://git-wip-us.apache.org/repos/asf/flex-falcon/repo
Commit: http://git-wip-us.apache.org/repos/asf/flex-falcon/commit/b1bfa692
Tree: http://git-wip-us.apache.org/repos/asf/flex-falcon/tree/b1bfa692
Diff: http://git-wip-us.apache.org/repos/asf/flex-falcon/diff/b1bfa692

Branch: refs/heads/feature/maven-migration-test
Commit: b1bfa692007d10de4ee3f3b9a8434e36aaae462d
Parents: a6887f8
Author: Josh Tynjala <jo...@apache.org>
Authored: Wed Apr 20 10:31:23 2016 -0700
Committer: Josh Tynjala <jo...@apache.org>
Committed: Wed Apr 20 10:31:23 2016 -0700

----------------------------------------------------------------------
 .../codegen/externals/reference/FieldReference.java         | 9 ++++++++-
 1 file changed, 8 insertions(+), 1 deletion(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/flex-falcon/blob/b1bfa692/compiler.jx/src/org/apache/flex/compiler/internal/codegen/externals/reference/FieldReference.java
----------------------------------------------------------------------
diff --git a/compiler.jx/src/org/apache/flex/compiler/internal/codegen/externals/reference/FieldReference.java b/compiler.jx/src/org/apache/flex/compiler/internal/codegen/externals/reference/FieldReference.java
index d99a66d..e01a72a 100644
--- a/compiler.jx/src/org/apache/flex/compiler/internal/codegen/externals/reference/FieldReference.java
+++ b/compiler.jx/src/org/apache/flex/compiler/internal/codegen/externals/reference/FieldReference.java
@@ -20,6 +20,7 @@
 package org.apache.flex.compiler.internal.codegen.externals.reference;
 
 import org.apache.flex.compiler.clients.ExternCConfiguration.ExcludedMember;
+import org.apache.flex.compiler.internal.codegen.externals.utils.FunctionUtils;
 import org.apache.flex.compiler.internal.codegen.externals.utils.JSTypeUtils;
 
 import com.google.javascript.rhino.JSDocInfo;
@@ -220,7 +221,13 @@ public class FieldReference extends MemberReference
     {
         if (overrideStringType != null)
             return overrideStringType;
-        return JSTypeUtils.toFieldTypeString(this);
+        String typeString = JSTypeUtils.toFieldTypeString(this);
+        if (FunctionUtils.hasTemplate(this)
+                && FunctionUtils.containsTemplate(this, typeString))
+        {
+            return "Object";
+        }
+        return typeString;
     }
 
     @Override