From 2d952cb4f086fae5eb24aaa05eb436558461d1b7 Mon Sep 17 00:00:00 2001 From: dolby-oss Date: Wed, 1 Aug 2007 15:38:17 +0000 Subject: [PATCH] merge code from loop unroller into standard CAstRewriter git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@1561 f5eafffb-2e1d-0410-98e4-8ec43c5233c4 --- .../js/translator/PropertyReadExpander.java | 43 ++++++++++--------- 1 file changed, 22 insertions(+), 21 deletions(-) diff --git a/com.ibm.wala.cast.js/source/com/ibm/wala/cast/js/translator/PropertyReadExpander.java b/com.ibm.wala.cast.js/source/com/ibm/wala/cast/js/translator/PropertyReadExpander.java index 522c00a7c..b3d43141e 100644 --- a/com.ibm.wala.cast.js/source/com/ibm/wala/cast/js/translator/PropertyReadExpander.java +++ b/com.ibm.wala.cast.js/source/com/ibm/wala/cast/js/translator/PropertyReadExpander.java @@ -3,28 +3,29 @@ package com.ibm.wala.cast.js.translator; import java.util.Map; import com.ibm.wala.cast.ir.translator.AstTranslator.InternalCAstSymbol; -import com.ibm.wala.cast.tree.CAst; -import com.ibm.wala.cast.tree.CAstNode; -import com.ibm.wala.cast.tree.impl.CAstOperator; -import com.ibm.wala.cast.tree.impl.CAstRewriter; +import com.ibm.wala.cast.tree.*; +import com.ibm.wala.cast.tree.impl.*; +import com.ibm.wala.util.collections.*; import com.ibm.wala.util.debug.Assertions; -public class PropertyReadExpander extends CAstRewriter { +public class PropertyReadExpander extends CAstRewriter { private int readTempCounter = 0; private static final String TEMP_NAME = "readTemp"; - interface RewriteContext { + abstract static class RewriteContext + extends CAstBasicRewriter.NonCopyingContext + { - boolean inRead(); + abstract boolean inRead(); - boolean inAssignment(); + abstract boolean inAssignment(); - void setAssign(CAstNode receiverTemp, CAstNode elementTemp); + abstract void setAssign(CAstNode receiverTemp, CAstNode elementTemp); } - private final class AssignOpContext implements RewriteContext { + private final class AssignOpContext extends RewriteContext { private CAstNode receiverTemp; private CAstNode elementTemp; @@ -43,7 +44,7 @@ public class PropertyReadExpander extends CAstRewriter nodeMap) + Map nodeMap) { int kind = root.getKind(); @@ -161,7 +162,7 @@ public class PropertyReadExpander extends CAstRewriter