only put instance data in reflection info. In the future we should put static data on the class as well as putting the instance data on the prototype
Project: http://git-wip-us.apache.org/repos/asf/flex-falcon/repo Commit: http://git-wip-us.apache.org/repos/asf/flex-falcon/commit/eb41d259 Tree: http://git-wip-us.apache.org/repos/asf/flex-falcon/tree/eb41d259 Diff: http://git-wip-us.apache.org/repos/asf/flex-falcon/diff/eb41d259 Branch: refs/heads/feature/maven-migration Commit: eb41d2597169af9581eb6242df35efd60ae2a23b Parents: d37eaae Author: Alex Harui <aha...@apache.org> Authored: Mon Feb 29 10:42:57 2016 -0800 Committer: Alex Harui <aha...@apache.org> Committed: Mon Feb 29 17:50:29 2016 -0800 ---------------------------------------------------------------------- .../codegen/js/jx/PackageFooterEmitter.java | 21 +++++++++++++++----- 1 file changed, 16 insertions(+), 5 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/flex-falcon/blob/eb41d259/compiler.jx/src/org/apache/flex/compiler/internal/codegen/js/jx/PackageFooterEmitter.java ---------------------------------------------------------------------- diff --git a/compiler.jx/src/org/apache/flex/compiler/internal/codegen/js/jx/PackageFooterEmitter.java b/compiler.jx/src/org/apache/flex/compiler/internal/codegen/js/jx/PackageFooterEmitter.java index 7c5e244..fa99a54 100644 --- a/compiler.jx/src/org/apache/flex/compiler/internal/codegen/js/jx/PackageFooterEmitter.java +++ b/compiler.jx/src/org/apache/flex/compiler/internal/codegen/js/jx/PackageFooterEmitter.java @@ -26,6 +26,8 @@ import java.util.Set; import org.apache.flex.compiler.codegen.ISubEmitter; import org.apache.flex.compiler.codegen.js.IJSEmitter; +import org.apache.flex.compiler.common.ASModifier; +import org.apache.flex.compiler.common.ModifiersSet; import org.apache.flex.compiler.constants.IASKeywordConstants; import org.apache.flex.compiler.definitions.IDefinition; import org.apache.flex.compiler.definitions.IPackageDefinition; @@ -222,8 +224,11 @@ public class PackageFooterEmitter extends JSSubEmitter implements for (IDefinitionNode dnode : dnodes) { - if (dnode.getNodeID() == ASTNodeID.VariableID || - dnode.getNodeID() == ASTNodeID.BindableVariableID) + ModifiersSet modifierSet = dnode.getDefinition().getModifiers(); + boolean isStatic = (modifierSet != null && modifierSet + .hasModifier(ASModifier.STATIC)); + if (!isStatic && (dnode.getNodeID() == ASTNodeID.VariableID || + dnode.getNodeID() == ASTNodeID.BindableVariableID)) { IVariableNode varNode = (IVariableNode)dnode; String ns = varNode.getNamespace(); @@ -247,8 +252,11 @@ public class PackageFooterEmitter extends JSSubEmitter implements HashMap<String, MethodData> accessorMap = new HashMap<String, MethodData>(); for (IDefinitionNode dnode : dnodes) { - if (dnode.getNodeID() == ASTNodeID.GetterID || - dnode.getNodeID() == ASTNodeID.SetterID) + ModifiersSet modifierSet = dnode.getDefinition().getModifiers(); + boolean isStatic = (modifierSet != null && modifierSet + .hasModifier(ASModifier.STATIC)); + if (!isStatic && (dnode.getNodeID() == ASTNodeID.GetterID || + dnode.getNodeID() == ASTNodeID.SetterID)) { IFunctionNode fnNode = (IFunctionNode)dnode; String ns = fnNode.getNamespace(); @@ -281,7 +289,10 @@ public class PackageFooterEmitter extends JSSubEmitter implements } for (IDefinitionNode dnode : dnodes) { - if (dnode.getNodeID() == ASTNodeID.FunctionID) + ModifiersSet modifierSet = dnode.getDefinition().getModifiers(); + boolean isStatic = (modifierSet != null && modifierSet + .hasModifier(ASModifier.STATIC)); + if (dnode.getNodeID() == ASTNodeID.FunctionID && !isStatic) { IFunctionNode fnNode = (IFunctionNode)dnode; String ns = fnNode.getNamespace();