Updated Branches: refs/heads/develop fc4b7cfe3 -> 16551fb2a
FLEX-33918 another issue with a class/interface type not being emitted fully qualified Signed-off-by: Erik de Bruin <[email protected]> Project: http://git-wip-us.apache.org/repos/asf/flex-falcon/repo Commit: http://git-wip-us.apache.org/repos/asf/flex-falcon/commit/d56aaa9c Tree: http://git-wip-us.apache.org/repos/asf/flex-falcon/tree/d56aaa9c Diff: http://git-wip-us.apache.org/repos/asf/flex-falcon/diff/d56aaa9c Branch: refs/heads/develop Commit: d56aaa9c2b3015e01b70680000beac052047e7a8 Parents: fc4b7cf Author: Erik de Bruin <[email protected]> Authored: Wed Nov 20 00:12:35 2013 +0100 Committer: Erik de Bruin <[email protected]> Committed: Wed Nov 20 00:12:35 2013 +0100 ---------------------------------------------------------------------- .../flex/compiler/internal/codegen/js/JSDocEmitter.java | 2 +- .../internal/codegen/js/flexjs/JSFlexJSEmitter.java | 2 -- .../internal/codegen/js/goog/JSGoogDocEmitter.java | 12 ++++++++++++ .../internal/codegen/js/goog/JSGoogEmitter.java | 2 ++ 4 files changed, 15 insertions(+), 3 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/flex-falcon/blob/d56aaa9c/compiler.jx/src/org/apache/flex/compiler/internal/codegen/js/JSDocEmitter.java ---------------------------------------------------------------------- diff --git a/compiler.jx/src/org/apache/flex/compiler/internal/codegen/js/JSDocEmitter.java b/compiler.jx/src/org/apache/flex/compiler/internal/codegen/js/JSDocEmitter.java index 6984f46..75de11c 100644 --- a/compiler.jx/src/org/apache/flex/compiler/internal/codegen/js/JSDocEmitter.java +++ b/compiler.jx/src/org/apache/flex/compiler/internal/codegen/js/JSDocEmitter.java @@ -32,7 +32,7 @@ public class JSDocEmitter implements IDocEmitter, IEmitter private int currentIndent = 0; - private IEmitter emitter; + protected IEmitter emitter; private StringBuilder builder; http://git-wip-us.apache.org/repos/asf/flex-falcon/blob/d56aaa9c/compiler.jx/src/org/apache/flex/compiler/internal/codegen/js/flexjs/JSFlexJSEmitter.java ---------------------------------------------------------------------- diff --git a/compiler.jx/src/org/apache/flex/compiler/internal/codegen/js/flexjs/JSFlexJSEmitter.java b/compiler.jx/src/org/apache/flex/compiler/internal/codegen/js/flexjs/JSFlexJSEmitter.java index eda5579..84f1e6b 100644 --- a/compiler.jx/src/org/apache/flex/compiler/internal/codegen/js/flexjs/JSFlexJSEmitter.java +++ b/compiler.jx/src/org/apache/flex/compiler/internal/codegen/js/flexjs/JSFlexJSEmitter.java @@ -106,8 +106,6 @@ public class JSFlexJSEmitter extends JSGoogEmitter implements IJSFlexJSEmitter public IDefinition thisClass; - private ICompilerProject project; - @Override protected String getIndent(int numIndent) { http://git-wip-us.apache.org/repos/asf/flex-falcon/blob/d56aaa9c/compiler.jx/src/org/apache/flex/compiler/internal/codegen/js/goog/JSGoogDocEmitter.java ---------------------------------------------------------------------- diff --git a/compiler.jx/src/org/apache/flex/compiler/internal/codegen/js/goog/JSGoogDocEmitter.java b/compiler.jx/src/org/apache/flex/compiler/internal/codegen/js/goog/JSGoogDocEmitter.java index 96571de..8c8212a 100644 --- a/compiler.jx/src/org/apache/flex/compiler/internal/codegen/js/goog/JSGoogDocEmitter.java +++ b/compiler.jx/src/org/apache/flex/compiler/internal/codegen/js/goog/JSGoogDocEmitter.java @@ -36,6 +36,7 @@ import org.apache.flex.compiler.internal.codegen.js.JSDocEmitter; import org.apache.flex.compiler.internal.codegen.js.JSDocEmitterTokens; import org.apache.flex.compiler.internal.codegen.js.JSEmitterTokens; import org.apache.flex.compiler.internal.codegen.js.JSSharedData; +import org.apache.flex.compiler.internal.codegen.js.flexjs.JSFlexJSEmitter; import org.apache.flex.compiler.internal.scopes.ASScope; import org.apache.flex.compiler.internal.semantics.SemanticUtils; import org.apache.flex.compiler.projects.ICompilerProject; @@ -235,6 +236,17 @@ public class JSGoogDocEmitter extends JSDocEmitter implements IJSGoogDocEmitter if (!node.isConst()) { + IDefinition ndef = node.getDefinition(); + if (emitter != null && emitter instanceof JSFlexJSEmitter) + { + ICompilerProject project = ((JSFlexJSEmitter)emitter).project; + if (project != null) + { + packageName = ((ITypeDefinition)ndef.resolveType(project)) + .getPackageName(); + } + } + emitTypeShort(node, packageName); } else http://git-wip-us.apache.org/repos/asf/flex-falcon/blob/d56aaa9c/compiler.jx/src/org/apache/flex/compiler/internal/codegen/js/goog/JSGoogEmitter.java ---------------------------------------------------------------------- diff --git a/compiler.jx/src/org/apache/flex/compiler/internal/codegen/js/goog/JSGoogEmitter.java b/compiler.jx/src/org/apache/flex/compiler/internal/codegen/js/goog/JSGoogEmitter.java index dc039a9..3bebc64 100644 --- a/compiler.jx/src/org/apache/flex/compiler/internal/codegen/js/goog/JSGoogEmitter.java +++ b/compiler.jx/src/org/apache/flex/compiler/internal/codegen/js/goog/JSGoogEmitter.java @@ -87,6 +87,8 @@ public class JSGoogEmitter extends JSEmitter implements IJSGoogEmitter private List<String> propertyNames = new ArrayList<String>(); + protected ICompilerProject project; + protected IJSGoogDocEmitter getDoc() { return (IJSGoogDocEmitter) getDocEmitter();
