Repository: flex-falcon Updated Branches: refs/heads/develop 631f43ec0 -> b1cd3bb7e
Removed JSCompiler references from ReferenceModel. - all evaluate() calls go throught he model now. Project: http://git-wip-us.apache.org/repos/asf/flex-falcon/repo Commit: http://git-wip-us.apache.org/repos/asf/flex-falcon/commit/b1cd3bb7 Tree: http://git-wip-us.apache.org/repos/asf/flex-falcon/tree/b1cd3bb7 Diff: http://git-wip-us.apache.org/repos/asf/flex-falcon/diff/b1cd3bb7 Branch: refs/heads/develop Commit: b1cd3bb7e42cf443d3674e8f8cce5cd6d650df67 Parents: 631f43e Author: Michael Schmalle <[email protected]> Authored: Sun Jun 14 10:46:59 2015 -0400 Committer: Michael Schmalle <[email protected]> Committed: Sun Jun 14 10:46:59 2015 -0400 ---------------------------------------------------------------------- .../codegen/externals/TestTypeExternals.java | 3 +- .../externals/reference/BaseReference.java | 15 +++---- .../externals/reference/ClassReference.java | 45 +++++++++----------- .../externals/reference/FieldReference.java | 6 +-- .../externals/reference/MethodReference.java | 3 +- .../externals/reference/ReferenceModel.java | 15 +++++-- .../codegen/externals/utils/JSTypeUtils.java | 32 ++++++-------- 7 files changed, 55 insertions(+), 64 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/flex-falcon/blob/b1cd3bb7/compiler.jx.tests/src/org/apache/flex/compiler/internal/codegen/externals/TestTypeExternals.java ---------------------------------------------------------------------- diff --git a/compiler.jx.tests/src/org/apache/flex/compiler/internal/codegen/externals/TestTypeExternals.java b/compiler.jx.tests/src/org/apache/flex/compiler/internal/codegen/externals/TestTypeExternals.java index a617a8e..09fb8d1 100644 --- a/compiler.jx.tests/src/org/apache/flex/compiler/internal/codegen/externals/TestTypeExternals.java +++ b/compiler.jx.tests/src/org/apache/flex/compiler/internal/codegen/externals/TestTypeExternals.java @@ -126,8 +126,7 @@ public class TestTypeExternals extends ExternalsTestBase { JSDocInfo comment = model.getClassReference("Foo").getMethod(methodName).getComment(); JSTypeExpression parameterType = comment.getParameterType("arg1"); - JSType jsType = parameterType.evaluate(null, - model.getJSCompiler().getTypeRegistry()); + JSType jsType = model.evaluate(parameterType); return jsType; } http://git-wip-us.apache.org/repos/asf/flex-falcon/blob/b1cd3bb7/compiler.jx/src/org/apache/flex/compiler/internal/codegen/externals/reference/BaseReference.java ---------------------------------------------------------------------- diff --git a/compiler.jx/src/org/apache/flex/compiler/internal/codegen/externals/reference/BaseReference.java b/compiler.jx/src/org/apache/flex/compiler/internal/codegen/externals/reference/BaseReference.java index cbd1170..7bc7598 100644 --- a/compiler.jx/src/org/apache/flex/compiler/internal/codegen/externals/reference/BaseReference.java +++ b/compiler.jx/src/org/apache/flex/compiler/internal/codegen/externals/reference/BaseReference.java @@ -24,7 +24,6 @@ import java.util.Set; import org.apache.flex.compiler.clients.ExternCConfiguration.ExcludedMemeber; -import com.google.javascript.jscomp.Compiler; import com.google.javascript.rhino.JSDocInfo; import com.google.javascript.rhino.JSDocInfo.Marker; import com.google.javascript.rhino.JSDocInfo.StringPosition; @@ -97,10 +96,10 @@ public abstract class BaseReference return comment; } - public Compiler getCompiler() - { - return model.getJSCompiler(); - } + // public Compiler getCompiler() + // { + // return model.getJSCompiler(); + // } public ReferenceModel getModel() { @@ -216,8 +215,7 @@ public abstract class BaseReference if (parameterType != null) { sb.append("["); - sb.append(parameterType.evaluate(null, - getModel().getJSCompiler().getTypeRegistry()).toAnnotationString()); + sb.append(getModel().evaluate(parameterType).toAnnotationString()); sb.append("]"); sb.append(" "); } @@ -236,8 +234,7 @@ public abstract class BaseReference { sb.append(" * @returns "); sb.append("{"); - sb.append(returnType.evaluate(null, - getModel().getJSCompiler().getTypeRegistry()).toAnnotationString()); + sb.append(getModel().evaluate(returnType).toAnnotationString()); sb.append("} "); String description = getComment().getReturnDescription(); if (description != null) http://git-wip-us.apache.org/repos/asf/flex-falcon/blob/b1cd3bb7/compiler.jx/src/org/apache/flex/compiler/internal/codegen/externals/reference/ClassReference.java ---------------------------------------------------------------------- diff --git a/compiler.jx/src/org/apache/flex/compiler/internal/codegen/externals/reference/ClassReference.java b/compiler.jx/src/org/apache/flex/compiler/internal/codegen/externals/reference/ClassReference.java index df381c0..015b234 100644 --- a/compiler.jx/src/org/apache/flex/compiler/internal/codegen/externals/reference/ClassReference.java +++ b/compiler.jx/src/org/apache/flex/compiler/internal/codegen/externals/reference/ClassReference.java @@ -262,8 +262,7 @@ public class ClassReference extends BaseReference ArrayList<ClassReference> result = new ArrayList<ClassReference>(); for (JSTypeExpression jsTypeExpression : getComment().getImplementedInterfaces()) { - String interfaceName = jsTypeExpression.evaluate(null, - getModel().getJSCompiler().getTypeRegistry()).getDisplayName(); + String interfaceName = getModel().evaluate(jsTypeExpression).getDisplayName(); ClassReference classReference = getModel().getClassReference( interfaceName); if (classReference != null) @@ -278,8 +277,7 @@ public class ClassReference extends BaseReference ArrayList<ClassReference> result = new ArrayList<ClassReference>(); for (JSTypeExpression jsTypeExpression : getComment().getImplementedInterfaces()) { - String interfaceName = jsTypeExpression.evaluate(null, - getModel().getJSCompiler().getTypeRegistry()).toAnnotationString(); + String interfaceName = getModel().evaluate(jsTypeExpression).toAnnotationString(); //System.out.println(" !!!!!!!! [" + interfaceName + "]"); ClassReference reference = getModel().getClassReference( interfaceName); @@ -405,17 +403,17 @@ public class ClassReference extends BaseReference sb.append("{\n"); sb.append("\n"); - printImports(sb); + emitImports(sb); boolean isInterface = isInterface(); if (isInterface) { - printInterface(sb); + emitInterface(sb); } else { - printClass(sb); + emitClass(sb); } sb.append("{\n"); @@ -423,7 +421,7 @@ public class ClassReference extends BaseReference if (!isInterface) { - printConstructor(sb); + emitConstructor(sb); sb.append("\n"); } @@ -447,7 +445,7 @@ public class ClassReference extends BaseReference sb.append("}\n"); // package } - private void printClass(StringBuilder sb) + private void emitClass(StringBuilder sb) { boolean isDynamic = false; @@ -467,7 +465,7 @@ public class ClassReference extends BaseReference if (getComment().hasBaseType()) { - printSuperClass(sb); + emitSuperClass(sb); sb.append(" "); } else @@ -478,11 +476,11 @@ public class ClassReference extends BaseReference if (!isInterface()) { - printImplements(sb); + emitImplements(sb); } } - private void printInterface(StringBuilder sb) + private void emitInterface(StringBuilder sb) { sb.append("public interface "); @@ -496,8 +494,7 @@ public class ClassReference extends BaseReference sb.append("extends "); for (JSTypeExpression jsTypeExpression : extendedInterfaces) { - String value = jsTypeExpression.evaluate(null, - getModel().getJSCompiler().getTypeRegistry()).toAnnotationString(); + String value = getModel().evaluate(jsTypeExpression).toAnnotationString(); sb.append(value); if (i < len - 1) sb.append(", "); @@ -506,15 +503,15 @@ public class ClassReference extends BaseReference } } - private void printSuperClass(StringBuilder sb) + private void emitSuperClass(StringBuilder sb) { sb.append("extends "); - String value = JSTypeUtils.toTypeJsType(getModel().getJSCompiler(), + String value = JSTypeUtils.toTypeJsType(getModel(), getComment().getBaseType()).toString(); sb.append(value); } - private void printImplements(StringBuilder sb) + private void emitImplements(StringBuilder sb) { List<JSTypeExpression> implementedInterfaces = getComment().getImplementedInterfaces(); if (implementedInterfaces.size() == 0) @@ -525,8 +522,8 @@ public class ClassReference extends BaseReference int len = implementedInterfaces.size(); for (int i = 0; i < len; i++) { - String value = implementedInterfaces.get(i).evaluate(null, - getModel().getJSCompiler().getTypeRegistry()).getDisplayName(); + String value = getModel().evaluate(implementedInterfaces.get(i)).getDisplayName(); + sb.append(value); if (i < len - 1) sb.append(", "); @@ -535,7 +532,7 @@ public class ClassReference extends BaseReference sb.append(" "); } - private void printConstructor(StringBuilder sb) + private void emitConstructor(StringBuilder sb) { if (constructor != null) { @@ -543,7 +540,7 @@ public class ClassReference extends BaseReference } } - private void printImports(StringBuilder sb) + private void emitImports(StringBuilder sb) { sb.append("\n"); for (String imp : imports) @@ -587,8 +584,7 @@ public class ClassReference extends BaseReference List<JSTypeExpression> implementedInterfaces = getComment().getImplementedInterfaces(); for (JSTypeExpression jsTypeExpression : implementedInterfaces) { - String interfaceName = jsTypeExpression.evaluate(null, - getModel().getJSCompiler().getTypeRegistry()).getDisplayName(); + String interfaceName = getModel().evaluate(jsTypeExpression).getDisplayName(); ClassReference classReference = getModel().getClassReference( interfaceName); return classReference.hasSuperMethod(reference.getQualifiedName()); @@ -650,8 +646,7 @@ public class ClassReference extends BaseReference JSTypeExpression baseType = getComment().getBaseType(); if (baseType != null) { - JSType jsType = baseType.evaluate(null, - getModel().getJSCompiler().getTypeRegistry()); + JSType jsType = getModel().evaluate(baseType); if (jsType != null) return getModel().getClassReference(jsType.getDisplayName()); } http://git-wip-us.apache.org/repos/asf/flex-falcon/blob/b1cd3bb7/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 e6e92cf..ca06781 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 @@ -51,8 +51,7 @@ public class FieldReference extends MemberReference public String toTypeAnnotationString() { - JSType jsType = getComment().getType().evaluate(null, - getModel().getJSCompiler().getTypeRegistry()); + JSType jsType = getModel().evaluate(getComment().getType()); return jsType.toAnnotationString(); } @@ -153,8 +152,7 @@ public class FieldReference extends MemberReference { sb.append(" * @see JSType - "); sb.append("["); - sb.append(type.evaluate(null, - getModel().getJSCompiler().getTypeRegistry()).toAnnotationString()); + sb.append(getModel().evaluate(type).toAnnotationString()); sb.append("] "); String description = getComment().getReturnDescription(); if (description != null) http://git-wip-us.apache.org/repos/asf/flex-falcon/blob/b1cd3bb7/compiler.jx/src/org/apache/flex/compiler/internal/codegen/externals/reference/MethodReference.java ---------------------------------------------------------------------- diff --git a/compiler.jx/src/org/apache/flex/compiler/internal/codegen/externals/reference/MethodReference.java b/compiler.jx/src/org/apache/flex/compiler/internal/codegen/externals/reference/MethodReference.java index fba7caf..59727a8 100644 --- a/compiler.jx/src/org/apache/flex/compiler/internal/codegen/externals/reference/MethodReference.java +++ b/compiler.jx/src/org/apache/flex/compiler/internal/codegen/externals/reference/MethodReference.java @@ -57,8 +57,7 @@ public class MethodReference extends MemberReference public String toReturnTypeAnnotationString() { - JSType jsType = getComment().getReturnType().evaluate(null, - getModel().getJSCompiler().getTypeRegistry()); + JSType jsType = getModel().evaluate(getComment().getReturnType()); return jsType.toAnnotationString(); } http://git-wip-us.apache.org/repos/asf/flex-falcon/blob/b1cd3bb7/compiler.jx/src/org/apache/flex/compiler/internal/codegen/externals/reference/ReferenceModel.java ---------------------------------------------------------------------- diff --git a/compiler.jx/src/org/apache/flex/compiler/internal/codegen/externals/reference/ReferenceModel.java b/compiler.jx/src/org/apache/flex/compiler/internal/codegen/externals/reference/ReferenceModel.java index 229953f..7f9a342 100644 --- a/compiler.jx/src/org/apache/flex/compiler/internal/codegen/externals/reference/ReferenceModel.java +++ b/compiler.jx/src/org/apache/flex/compiler/internal/codegen/externals/reference/ReferenceModel.java @@ -31,6 +31,7 @@ import org.apache.flex.compiler.internal.codegen.externals.utils.DebugLogUtils; import com.google.javascript.jscomp.Compiler; import com.google.javascript.jscomp.NodeUtil; import com.google.javascript.rhino.JSDocInfo; +import com.google.javascript.rhino.JSTypeExpression; import com.google.javascript.rhino.Node; import com.google.javascript.rhino.jstype.JSType; @@ -46,10 +47,10 @@ public class ReferenceModel private HashMap<String, FunctionReference> functions = new HashMap<String, FunctionReference>(); private HashMap<String, ConstantReference> constants = new HashMap<String, ConstantReference>(); - public Compiler getJSCompiler() - { - return jscompiler; - } + // public Compiler getJSCompiler() + // { + // return jscompiler; + // } public void setJSCompiler(Compiler compiler) { @@ -283,6 +284,12 @@ public class ReferenceModel } } + public final JSType evaluate(JSTypeExpression expression) + { + JSType jsType = expression.evaluate(null, jscompiler.getTypeRegistry()); + return jsType; + } + //-------------------------------------------------------------------------- public ExcludedMemeber isExcludedClass(ClassReference classReference) http://git-wip-us.apache.org/repos/asf/flex-falcon/blob/b1cd3bb7/compiler.jx/src/org/apache/flex/compiler/internal/codegen/externals/utils/JSTypeUtils.java ---------------------------------------------------------------------- diff --git a/compiler.jx/src/org/apache/flex/compiler/internal/codegen/externals/utils/JSTypeUtils.java b/compiler.jx/src/org/apache/flex/compiler/internal/codegen/externals/utils/JSTypeUtils.java index 448ebbd..ddd8fe1 100644 --- a/compiler.jx/src/org/apache/flex/compiler/internal/codegen/externals/utils/JSTypeUtils.java +++ b/compiler.jx/src/org/apache/flex/compiler/internal/codegen/externals/utils/JSTypeUtils.java @@ -21,8 +21,8 @@ package org.apache.flex.compiler.internal.codegen.externals.utils; import org.apache.flex.compiler.internal.codegen.externals.reference.BaseReference; import org.apache.flex.compiler.internal.codegen.externals.reference.ConstantReference; +import org.apache.flex.compiler.internal.codegen.externals.reference.ReferenceModel; -import com.google.javascript.jscomp.AbstractCompiler; import com.google.javascript.rhino.JSTypeExpression; import com.google.javascript.rhino.jstype.JSType; import com.google.javascript.rhino.jstype.UnionType; @@ -39,8 +39,8 @@ public class JSTypeUtils if (paramType != null) { - JSType jsType = JSTypeUtils.toParamJsType( - reference.getModel().getJSCompiler(), paramType); + JSType jsType = JSTypeUtils.toParamJsType(reference.getModel(), + paramType); //System.err.println(jsType); if (jsType != null) @@ -75,11 +75,10 @@ public class JSTypeUtils return type; } - private static JSType toParamJsType(AbstractCompiler compiler, + private static JSType toParamJsType(ReferenceModel model, JSTypeExpression typeExpression) { - JSType jsType = typeExpression.evaluate(null, - compiler.getTypeRegistry()); + JSType jsType = model.evaluate(typeExpression); if (jsType.isUnionType()) { @@ -98,8 +97,7 @@ public class JSTypeUtils public static String toConstantTypeString(ConstantReference reference) { JSTypeExpression typeExpression = reference.getComment().getType(); - JSType jsType = typeExpression.evaluate(null, - reference.getModel().getJSCompiler().getTypeRegistry()); + JSType jsType = reference.getModel().evaluate(typeExpression); String type = jsType.toString(); type = TypeUtils.transformParamType(type); return type; @@ -112,8 +110,8 @@ public class JSTypeUtils JSTypeExpression returnType = reference.getComment().getReturnType(); if (returnType != null) { - JSType jsType = JSTypeUtils.toReturnJsType( - reference.getModel().getJSCompiler(), returnType); + JSType jsType = JSTypeUtils.toReturnJsType(reference.getModel(), + returnType); //System.err.println(jsType); if (jsType != null) @@ -136,11 +134,10 @@ public class JSTypeUtils return type; } - private static JSType toReturnJsType(AbstractCompiler compiler, + private static JSType toReturnJsType(ReferenceModel model, JSTypeExpression typeExpression) { - JSType jsType = typeExpression.evaluate(null, - compiler.getTypeRegistry()); + JSType jsType = model.evaluate(typeExpression); if (jsType.isUnionType()) { @@ -162,8 +159,8 @@ public class JSTypeUtils if (ttype != null) { - JSType jsType = JSTypeUtils.toTypeJsType( - reference.getModel().getJSCompiler(), ttype); + JSType jsType = JSTypeUtils.toTypeJsType(reference.getModel(), + ttype); //System.err.println(jsType); if (jsType != null) @@ -202,11 +199,10 @@ public class JSTypeUtils return type; } - public static JSType toTypeJsType(AbstractCompiler compiler, + public static JSType toTypeJsType(ReferenceModel model, JSTypeExpression typeExpression) { - JSType jsType = typeExpression.evaluate(null, - compiler.getTypeRegistry()); + JSType jsType = model.evaluate(typeExpression); if (jsType.isUnionType()) {
