Return-Path: X-Original-To: apmail-flex-commits-archive@www.apache.org Delivered-To: apmail-flex-commits-archive@www.apache.org Received: from mail.apache.org (hermes.apache.org [140.211.11.3]) by minotaur.apache.org (Postfix) with SMTP id D475619653 for ; Fri, 29 Apr 2016 23:18:48 +0000 (UTC) Received: (qmail 57064 invoked by uid 500); 29 Apr 2016 23:18:48 -0000 Delivered-To: apmail-flex-commits-archive@flex.apache.org Received: (qmail 56994 invoked by uid 500); 29 Apr 2016 23:18:48 -0000 Mailing-List: contact commits-help@flex.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: dev@flex.apache.org Delivered-To: mailing list commits@flex.apache.org Received: (qmail 56928 invoked by uid 99); 29 Apr 2016 23:18:48 -0000 Received: from git1-us-west.apache.org (HELO git1-us-west.apache.org) (140.211.11.23) by apache.org (qpsmtpd/0.29) with ESMTP; Fri, 29 Apr 2016 23:18:48 +0000 Received: by git1-us-west.apache.org (ASF Mail Server at git1-us-west.apache.org, from userid 33) id 3031FE03EC; Fri, 29 Apr 2016 23:18:48 +0000 (UTC) Content-Type: text/plain; charset="us-ascii" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit From: joshtynjala@apache.org To: commits@flex.apache.org Date: Fri, 29 Apr 2016 23:18:54 -0000 Message-Id: <01bc20d2118e4865addf17e698b58315@git.apache.org> In-Reply-To: <3f4d042e7b5d4eeb956889f1b63f05c8@git.apache.org> References: <3f4d042e7b5d4eeb956889f1b63f05c8@git.apache.org> X-Mailer: ASF-Git Admin Mailer Subject: [7/8] git commit: [flex-falcon] [refs/heads/develop] - source maps for getters and setters source maps for getters and setters Project: http://git-wip-us.apache.org/repos/asf/flex-falcon/repo Commit: http://git-wip-us.apache.org/repos/asf/flex-falcon/commit/f8fc7fda Tree: http://git-wip-us.apache.org/repos/asf/flex-falcon/tree/f8fc7fda Diff: http://git-wip-us.apache.org/repos/asf/flex-falcon/diff/f8fc7fda Branch: refs/heads/develop Commit: f8fc7fda95326cfeba040a6e34183ac9a297a7f5 Parents: 716a788 Author: Josh Tynjala Authored: Fri Apr 29 16:07:45 2016 -0700 Committer: Josh Tynjala Committed: Fri Apr 29 16:07:45 2016 -0700 ---------------------------------------------------------------------- .../internal/codegen/js/jx/AccessorEmitter.java | 110 ++++++++++++++++--- 1 file changed, 94 insertions(+), 16 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/flex-falcon/blob/f8fc7fda/compiler-jx/src/main/java/org/apache/flex/compiler/internal/codegen/js/jx/AccessorEmitter.java ---------------------------------------------------------------------- diff --git a/compiler-jx/src/main/java/org/apache/flex/compiler/internal/codegen/js/jx/AccessorEmitter.java b/compiler-jx/src/main/java/org/apache/flex/compiler/internal/codegen/js/jx/AccessorEmitter.java index f2910d7..7440462 100644 --- a/compiler-jx/src/main/java/org/apache/flex/compiler/internal/codegen/js/jx/AccessorEmitter.java +++ b/compiler-jx/src/main/java/org/apache/flex/compiler/internal/codegen/js/jx/AccessorEmitter.java @@ -107,13 +107,33 @@ public class AccessorEmitter extends JSSubEmitter implements boolean wroteGetter = false; PropertyNodes p = getModel().getPropertyMap().get(propName); + IGetterNode getterNode = p.getter; + ISetterNode setterNode = p.setter; writeNewline("/** @export */"); + if (getterNode != null) + { + startMapping(getterNode); + } + else + { + startMapping(setterNode); + } write(propName); write(ASEmitterTokens.COLON); write(ASEmitterTokens.SPACE); - writeNewline(ASEmitterTokens.BLOCK_OPEN); - if (p.getter != null) + write(ASEmitterTokens.BLOCK_OPEN); + if (getterNode != null) + { + endMapping(getterNode); + } + else + { + endMapping(setterNode); + } + writeNewline(); + if (getterNode != null) { + startMapping(getterNode); write(ASEmitterTokens.GET); write(ASEmitterTokens.COLON); write(ASEmitterTokens.SPACE); @@ -129,12 +149,13 @@ public class AccessorEmitter extends JSSubEmitter implements write(JSDocEmitterTokens.JSDOC_CLOSE); write(ASEmitterTokens.SPACE); write(ASEmitterTokens.FUNCTION); - fjs.emitParameters(p.getter.getParametersContainerNode()); + endMapping(getterNode); + fjs.emitParameters(getterNode.getParametersContainerNode()); - fjs.emitDefinePropertyFunction(p.getter); + fjs.emitDefinePropertyFunction(getterNode); wroteGetter = true; } - else if (p.setter != null && p.setter.getDefinition().isOverride()) + else if (setterNode != null && setterNode.getDefinition().isOverride()) { // see if there is a getter on a base class. If so, we have to // generate a call to the super from this class because @@ -187,11 +208,12 @@ public class AccessorEmitter extends JSSubEmitter implements wroteGetter = true; } } - if (p.setter != null) + if (setterNode != null) { if (wroteGetter) writeNewline(ASEmitterTokens.COMMA); + startMapping(setterNode); write(ASEmitterTokens.SET); write(ASEmitterTokens.COLON); write(ASEmitterTokens.SPACE); @@ -207,11 +229,12 @@ public class AccessorEmitter extends JSSubEmitter implements write(JSDocEmitterTokens.JSDOC_CLOSE); write(ASEmitterTokens.SPACE); write(ASEmitterTokens.FUNCTION); - fjs.emitParameters(p.setter.getParametersContainerNode()); + endMapping(setterNode); + fjs.emitParameters(setterNode.getParametersContainerNode()); - fjs.emitDefinePropertyFunction(p.setter); + fjs.emitDefinePropertyFunction(setterNode); } - else if (p.getter != null && p.getter.getDefinition().isOverride()) + else if (getterNode != null && getterNode.getDefinition().isOverride()) { // see if there is a getter on a base class. If so, we have to // generate a call to the super from this class because @@ -267,7 +290,23 @@ public class AccessorEmitter extends JSSubEmitter implements write(ASEmitterTokens.BLOCK_CLOSE); } } + if (getterNode != null) + { + startMapping(getterNode); + } + else + { + startMapping(setterNode); + } write(ASEmitterTokens.BLOCK_CLOSE); + if (getterNode != null) + { + endMapping(getterNode); + } + else + { + endMapping(setterNode); + } } writeNewline(ASEmitterTokens.BLOCK_CLOSE); write(ASEmitterTokens.PAREN_CLOSE); @@ -299,35 +338,74 @@ public class AccessorEmitter extends JSSubEmitter implements PropertyNodes p = getModel().getStaticPropertyMap().get( propName); + IGetterNode getterNode = p.getter; + ISetterNode setterNode = p.setter; writeNewline("/** @export */"); + if (getterNode != null) + { + startMapping(getterNode); + } + else + { + startMapping(setterNode); + } write(propName); write(ASEmitterTokens.COLON); write(ASEmitterTokens.SPACE); - writeNewline(ASEmitterTokens.BLOCK_OPEN); - if (p.getter != null) + write(ASEmitterTokens.BLOCK_OPEN); + if (getterNode != null) + { + endMapping(getterNode); + } + else + { + endMapping(setterNode); + } + writeNewline(); + if (getterNode != null) { + startMapping(getterNode); write(ASEmitterTokens.GET); write(ASEmitterTokens.COLON); write(ASEmitterTokens.SPACE); write(ASEmitterTokens.FUNCTION); - fjs.emitParameters(p.getter.getParametersContainerNode()); + endMapping(getterNode); + fjs.emitParameters(getterNode.getParametersContainerNode()); - fjs.emitDefinePropertyFunction(p.getter); + fjs.emitDefinePropertyFunction(getterNode); } - if (p.setter != null) + if (setterNode != null) { if (p.getter != null) writeNewline(ASEmitterTokens.COMMA); + startMapping(setterNode); write(ASEmitterTokens.SET); write(ASEmitterTokens.COLON); write(ASEmitterTokens.SPACE); write(ASEmitterTokens.FUNCTION); - fjs.emitParameters(p.setter.getParametersContainerNode()); + endMapping(setterNode); + fjs.emitParameters(setterNode.getParametersContainerNode()); - fjs.emitDefinePropertyFunction(p.setter); + fjs.emitDefinePropertyFunction(setterNode); + } + if (getterNode != null) + { + startMapping(getterNode); + } + else + { + startMapping(setterNode); } write(ASEmitterTokens.BLOCK_CLOSE); + if (getterNode != null) + { + endMapping(getterNode); + } + else + { + endMapping(setterNode); + } } writeNewline(ASEmitterTokens.BLOCK_CLOSE); write(ASEmitterTokens.PAREN_CLOSE);