diff --git a/com.ibm.wala.cast.java.test.data/src/foo/bar/hello/world/MethodMadness.java b/com.ibm.wala.cast.java.test.data/src/foo/bar/hello/world/MethodMadness.java index 315ae58ed..b0bd1fe51 100644 --- a/com.ibm.wala.cast.java.test.data/src/foo/bar/hello/world/MethodMadness.java +++ b/com.ibm.wala.cast.java.test.data/src/foo/bar/hello/world/MethodMadness.java @@ -51,6 +51,7 @@ public class MethodMadness { public static void staticTest() { System.out.println("staticTest"); } + @SuppressWarnings("static-access") protected int protectedInteger() { this.s = 5; new MethodMadness("thrownaway").staticTest(); // MethodMadness object evaluated but thrown away diff --git a/com.ibm.wala.cast.js.nodejs/src/com/ibm/wala/cast/js/nodejs/NodejsRequireTargetSelector.java b/com.ibm.wala.cast.js.nodejs/src/com/ibm/wala/cast/js/nodejs/NodejsRequireTargetSelector.java index 893da1465..2ad5d8d87 100644 --- a/com.ibm.wala.cast.js.nodejs/src/com/ibm/wala/cast/js/nodejs/NodejsRequireTargetSelector.java +++ b/com.ibm.wala.cast.js.nodejs/src/com/ibm/wala/cast/js/nodejs/NodejsRequireTargetSelector.java @@ -24,8 +24,8 @@ import org.json.JSONObject; import com.ibm.wala.cast.js.ipa.callgraph.JSCallGraphUtil; import com.ibm.wala.cast.js.loader.JavaScriptLoader; import com.ibm.wala.cast.js.ssa.JavaScriptInvoke; -import com.ibm.wala.cast.js.types.JavaScriptMethods; import com.ibm.wala.cast.js.types.JavaScriptTypes; +import com.ibm.wala.cast.types.AstMethodReference; import com.ibm.wala.classLoader.CallSiteReference; import com.ibm.wala.classLoader.IClass; import com.ibm.wala.classLoader.IMethod; @@ -118,7 +118,7 @@ public class NodejsRequireTargetSelector implements MethodTargetSelector { System.err.println(builder.getClassHierarchy()); - IMethod method = script.getMethod(JavaScriptMethods.fnSelector); + IMethod method = script.getMethod(AstMethodReference.fnSelector); previouslyRequired.put(sourceModule.getClassName(), method); return method; diff --git a/com.ibm.wala.cast.js.rhino.test/harness-src/com/ibm/wala/cast/js/examples/hybrid/Driver.java b/com.ibm.wala.cast.js.rhino.test/harness-src/com/ibm/wala/cast/js/examples/hybrid/Driver.java index 2218cffe2..42bc96760 100644 --- a/com.ibm.wala.cast.js.rhino.test/harness-src/com/ibm/wala/cast/js/examples/hybrid/Driver.java +++ b/com.ibm.wala.cast.js.rhino.test/harness-src/com/ibm/wala/cast/js/examples/hybrid/Driver.java @@ -12,7 +12,6 @@ import com.ibm.wala.cast.js.ipa.callgraph.JSCallGraphUtil; import com.ibm.wala.cast.js.ipa.callgraph.JavaScriptConstructTargetSelector; import com.ibm.wala.cast.js.ipa.callgraph.JavaScriptEntryPoints; import com.ibm.wala.cast.js.loader.JavaScriptLoader; -import com.ibm.wala.cast.js.test.JSCallGraphBuilderUtil; import com.ibm.wala.cast.js.translator.CAstRhinoTranslatorFactory; import com.ibm.wala.classLoader.IMethod; import com.ibm.wala.classLoader.Language; @@ -57,7 +56,7 @@ public class Driver { scope.addToScope( scope.getJavaScriptLoader(), - JSCallGraphBuilderUtil.getPrologueFile("prologue.js")); + JSCallGraphUtil.getPrologueFile("prologue.js")); for(int i = 1; i < args.length; i++) { URL script = Driver.class.getClassLoader().getResource(args[i]); scope.addToScope( diff --git a/com.ibm.wala.cast.js.rhino.test/harness-src/com/ibm/wala/cast/js/vis/JsViewerDriver.java b/com.ibm.wala.cast.js.rhino.test/harness-src/com/ibm/wala/cast/js/vis/JsViewerDriver.java index 2a82c33ea..d1ac7527f 100644 --- a/com.ibm.wala.cast.js.rhino.test/harness-src/com/ibm/wala/cast/js/vis/JsViewerDriver.java +++ b/com.ibm.wala.cast.js.rhino.test/harness-src/com/ibm/wala/cast/js/vis/JsViewerDriver.java @@ -25,6 +25,7 @@ import com.ibm.wala.cast.js.html.WebPageLoaderFactory; import com.ibm.wala.cast.js.html.WebUtil; import com.ibm.wala.cast.js.html.jericho.JerichoHtmlParser; import com.ibm.wala.cast.js.ipa.callgraph.JSCFABuilder; +import com.ibm.wala.cast.js.ipa.callgraph.JSCallGraphUtil; import com.ibm.wala.cast.js.loader.JavaScriptLoader; import com.ibm.wala.cast.js.test.JSCallGraphBuilderUtil; import com.ibm.wala.cast.js.translator.CAstRhinoTranslatorFactory; @@ -49,7 +50,7 @@ public class JsViewerDriver extends JSCallGraphBuilderUtil { URL url = new URL(args[0]); // computing CG + PA - JSCallGraphBuilderUtil.setTranslatorFactory(new CAstRhinoTranslatorFactory()); + JSCallGraphUtil.setTranslatorFactory(new CAstRhinoTranslatorFactory()); JavaScriptLoader.addBootstrapFile(WebUtil.preamble); SourceModule[] sources = getSources(domless, url); diff --git a/com.ibm.wala.cast.js.test/harness-src/com/ibm/wala/cast/js/test/FieldBasedCGUtil.java b/com.ibm.wala.cast.js.test/harness-src/com/ibm/wala/cast/js/test/FieldBasedCGUtil.java index 332db80b8..2d9d98c45 100644 --- a/com.ibm.wala.cast.js.test/harness-src/com/ibm/wala/cast/js/test/FieldBasedCGUtil.java +++ b/com.ibm.wala.cast.js.test/harness-src/com/ibm/wala/cast/js/test/FieldBasedCGUtil.java @@ -78,7 +78,7 @@ public class FieldBasedCGUtil { JavaScriptLoaderFactory loaders = new JavaScriptLoaderFactory(translatorFactory); Module[] scripts = new Module[]{ new SourceURLModule(url), - JSCallGraphBuilderUtil.getPrologueFile("prologue.js") + JSCallGraphUtil.getPrologueFile("prologue.js") }; return buildCG(loaders, scripts, builderType, monitor, supportFullPointerAnalysis); } diff --git a/com.ibm.wala.cast.js/source/com/ibm/wala/cast/js/ipa/callgraph/JavaScriptFunctionDotCallTargetSelector.java b/com.ibm.wala.cast.js/source/com/ibm/wala/cast/js/ipa/callgraph/JavaScriptFunctionDotCallTargetSelector.java index 247afb29b..a6a948eaf 100644 --- a/com.ibm.wala.cast.js/source/com/ibm/wala/cast/js/ipa/callgraph/JavaScriptFunctionDotCallTargetSelector.java +++ b/com.ibm.wala.cast.js/source/com/ibm/wala/cast/js/ipa/callgraph/JavaScriptFunctionDotCallTargetSelector.java @@ -12,6 +12,7 @@ package com.ibm.wala.cast.js.ipa.callgraph; import java.util.Map; +import com.ibm.wala.cast.ipa.callgraph.CAstCallGraphUtil; import com.ibm.wala.cast.js.ipa.summaries.JavaScriptSummarizedFunction; import com.ibm.wala.cast.js.ipa.summaries.JavaScriptSummary; import com.ibm.wala.cast.js.loader.JSCallSiteReference; @@ -183,7 +184,7 @@ public class JavaScriptFunctionDotCallTargetSelector implements MethodTargetSele private static String getKey(int nargs, CGNode caller, CallSiteReference site) { if (SEPARATE_SYNTHETIC_METHOD_PER_SITE) { - return JSCallGraphUtil.getShortName(caller) + "_" + caller.getGraphNodeId() + "_" + site.getProgramCounter(); + return CAstCallGraphUtil.getShortName(caller) + "_" + caller.getGraphNodeId() + "_" + site.getProgramCounter(); } else { return ""+nargs; } diff --git a/com.ibm.wala.cast.js/source/com/ibm/wala/cast/js/ipa/callgraph/LoadFileTargetSelector.java b/com.ibm.wala.cast.js/source/com/ibm/wala/cast/js/ipa/callgraph/LoadFileTargetSelector.java index 87d82b9e3..0e9735e74 100644 --- a/com.ibm.wala.cast.js/source/com/ibm/wala/cast/js/ipa/callgraph/LoadFileTargetSelector.java +++ b/com.ibm.wala.cast.js/source/com/ibm/wala/cast/js/ipa/callgraph/LoadFileTargetSelector.java @@ -18,7 +18,6 @@ import java.util.HashSet; import java.util.Set; import com.ibm.wala.cast.js.loader.JavaScriptLoader; -import com.ibm.wala.cast.js.types.JavaScriptMethods; import com.ibm.wala.cast.js.types.JavaScriptTypes; import com.ibm.wala.cast.types.AstMethodReference; import com.ibm.wala.classLoader.CallSiteReference; @@ -79,7 +78,7 @@ public class LoadFileTargetSelector implements MethodTargetSelector { JSCallGraphUtil.loadAdditionalFile(builder.getClassHierarchy() , cl, url); loadedFiles.add(url); IClass script = builder.getClassHierarchy().lookupClass(TypeReference.findOrCreate(cl.getReference(), "L" + url.getFile())); - return script.getMethod(JavaScriptMethods.fnSelector); + return script.getMethod(AstMethodReference.fnSelector); } } catch (MalformedURLException e1) { // do nothing, fall through and return 'target' diff --git a/com.ibm.wala.cast/source/java/com/ibm/wala/cast/util/CAstPrinter.java b/com.ibm.wala.cast/source/java/com/ibm/wala/cast/util/CAstPrinter.java index 8117c0256..91ddc2302 100644 --- a/com.ibm.wala.cast/source/java/com/ibm/wala/cast/util/CAstPrinter.java +++ b/com.ibm.wala.cast/source/java/com/ibm/wala/cast/util/CAstPrinter.java @@ -189,7 +189,7 @@ public class CAstPrinter { } public static void xmlTo(CAstNode top, CAstSourcePositionMap pos, Writer w) { - instance.doXmlTo(top, pos, w); + doXmlTo(top, pos, w); } private static void doXmlTo(CAstNode top, CAstSourcePositionMap pos, Writer w) { diff --git a/com.ibm.wala.dalvik/src/com/ibm/wala/dalvik/ipa/callgraph/androidModel/AndroidModelClass.java b/com.ibm.wala.dalvik/src/com/ibm/wala/dalvik/ipa/callgraph/androidModel/AndroidModelClass.java index 2b53e8b57..e67d7967c 100644 --- a/com.ibm.wala.dalvik/src/com/ibm/wala/dalvik/ipa/callgraph/androidModel/AndroidModelClass.java +++ b/com.ibm.wala.dalvik/src/com/ibm/wala/dalvik/ipa/callgraph/androidModel/AndroidModelClass.java @@ -127,7 +127,7 @@ public final /* singleton */ class AndroidModelClass extends SyntheticClass { clinit.setStatic(true); final TypeSafeInstructionFactory instructionFactory = new TypeSafeInstructionFactory(cha); - final Set components = AndroidEntryPointManager.MANAGER.getComponents(); + final Set components = AndroidEntryPointManager.getComponents(); int ssaNo = 1; if (AndroidEntryPointManager.MANAGER.doFlatComponents()) { diff --git a/com.ibm.wala.dalvik/src/com/ibm/wala/dalvik/ipa/callgraph/androidModel/parameters/FlatInstantiator.java b/com.ibm.wala.dalvik/src/com/ibm/wala/dalvik/ipa/callgraph/androidModel/parameters/FlatInstantiator.java index 6d9eeaf6b..33d77f406 100644 --- a/com.ibm.wala.dalvik/src/com/ibm/wala/dalvik/ipa/callgraph/androidModel/parameters/FlatInstantiator.java +++ b/com.ibm.wala.dalvik/src/com/ibm/wala/dalvik/ipa/callgraph/androidModel/parameters/FlatInstantiator.java @@ -161,7 +161,7 @@ public class FlatInstantiator implements IInstantiator { { // Special type? final SpecializedInstantiator sInst = new SpecializedInstantiator(body, instructionFactory, pm, cha, scope, analysisScope, this); - if (sInst.understands(T)) { + if (SpecializedInstantiator.understands(T)) { return sInst.createInstance(T, asManaged, key, seen, currentDepth); } } diff --git a/com.ibm.wala.dalvik/src/com/ibm/wala/dalvik/ipa/callgraph/androidModel/parameters/SpecializedInstantiator.java b/com.ibm.wala.dalvik/src/com/ibm/wala/dalvik/ipa/callgraph/androidModel/parameters/SpecializedInstantiator.java index ebe07e81f..2d49531d3 100644 --- a/com.ibm.wala.dalvik/src/com/ibm/wala/dalvik/ipa/callgraph/androidModel/parameters/SpecializedInstantiator.java +++ b/com.ibm.wala.dalvik/src/com/ibm/wala/dalvik/ipa/callgraph/androidModel/parameters/SpecializedInstantiator.java @@ -197,7 +197,7 @@ public class SpecializedInstantiator extends FlatInstantiator { appComponents.add(instance); } } else { - for (TypeReference component : AndroidEntryPointManager.MANAGER.getComponents()) { + for (TypeReference component : AndroidEntryPointManager.getComponents()) { final VariableKey iKey = new SSAValue.TypeKey(component.getName()); if (this.pm.isSeen(iKey)) { diff --git a/com.ibm.wala.dalvik/src/com/ibm/wala/dalvik/ipa/callgraph/androidModel/stubs/Overrides.java b/com.ibm.wala.dalvik/src/com/ibm/wala/dalvik/ipa/callgraph/androidModel/stubs/Overrides.java index 08baba74b..1a4168452 100644 --- a/com.ibm.wala.dalvik/src/com/ibm/wala/dalvik/ipa/callgraph/androidModel/stubs/Overrides.java +++ b/com.ibm.wala.dalvik/src/com/ibm/wala/dalvik/ipa/callgraph/androidModel/stubs/Overrides.java @@ -204,7 +204,7 @@ public class Overrides { { // Make Mini-Models to override to for (final AndroidComponent target: AndroidComponent.values()) { - if (AndroidEntryPointManager.MANAGER.EPContainAny(target)) { + if (AndroidEntryPointManager.EPContainAny(target)) { final AndroidModel targetModel = new UnknownTargetModel(this.cha, this.options, this.cache, target); callTo.put(target, targetModel); } else { diff --git a/com.ibm.wala.shrike/src/com/ibm/wala/shrike/bench/Bench.java b/com.ibm.wala.shrike/src/com/ibm/wala/shrike/bench/Bench.java index 5798569f5..07c1861e8 100644 --- a/com.ibm.wala.shrike/src/com/ibm/wala/shrike/bench/Bench.java +++ b/com.ibm.wala.shrike/src/com/ibm/wala/shrike/bench/Bench.java @@ -32,7 +32,7 @@ import com.ibm.wala.shrikeBT.analysis.Verifier; import com.ibm.wala.shrikeBT.shrikeCT.CTDecoder; import com.ibm.wala.shrikeBT.shrikeCT.ClassInstrumenter; import com.ibm.wala.shrikeBT.shrikeCT.OfflineInstrumenter; -import com.ibm.wala.shrikeCT.ClassReader; +import com.ibm.wala.shrikeCT.ClassConstants; import com.ibm.wala.shrikeCT.ClassWriter; /** @@ -190,7 +190,7 @@ public class Bench { if (ci.isChanged()) { ClassWriter cw = ci.emitClass(); - cw.addField(ClassReader.ACC_PUBLIC | ClassReader.ACC_STATIC, fieldName, Constants.TYPE_boolean, new ClassWriter.Element[0]); + cw.addField(ClassConstants.ACC_PUBLIC | ClassConstants.ACC_STATIC, fieldName, Constants.TYPE_boolean, new ClassWriter.Element[0]); instrumenter.outputModifiedClass(ci, cw); } } diff --git a/com.ibm.wala.shrike/src/com/ibm/wala/shrike/copywriter/CopyWriter.java b/com.ibm.wala.shrike/src/com/ibm/wala/shrike/copywriter/CopyWriter.java index 93e136c17..a3794c114 100644 --- a/com.ibm.wala.shrike/src/com/ibm/wala/shrike/copywriter/CopyWriter.java +++ b/com.ibm.wala.shrike/src/com/ibm/wala/shrike/copywriter/CopyWriter.java @@ -23,6 +23,7 @@ import com.ibm.wala.shrikeBT.shrikeCT.CTCompiler; import com.ibm.wala.shrikeBT.shrikeCT.CTDecoder; import com.ibm.wala.shrikeBT.shrikeCT.ClassInstrumenter; import com.ibm.wala.shrikeBT.shrikeCT.OfflineInstrumenter; +import com.ibm.wala.shrikeCT.ClassConstants; import com.ibm.wala.shrikeCT.ClassReader; import com.ibm.wala.shrikeCT.ClassReader.AttrIterator; import com.ibm.wala.shrikeCT.ClassWriter; @@ -239,27 +240,27 @@ public class CopyWriter { private static int copyEntry(ConstantPoolParser cp, ClassWriter w, int i) throws InvalidClassFileException { byte t = cp.getItemType(i); switch (t) { - case ClassReader.CONSTANT_String: + case ClassConstants.CONSTANT_String: return w.addCPString(cp.getCPString(i)); - case ClassReader.CONSTANT_Class: + case ClassConstants.CONSTANT_Class: return w.addCPClass(cp.getCPClass(i)); - case ClassReader.CONSTANT_FieldRef: + case ClassConstants.CONSTANT_FieldRef: return w.addCPFieldRef(cp.getCPRefClass(i), cp.getCPRefName(i), cp.getCPRefType(i)); - case ClassReader.CONSTANT_InterfaceMethodRef: + case ClassConstants.CONSTANT_InterfaceMethodRef: return w.addCPInterfaceMethodRef(cp.getCPRefClass(i), cp.getCPRefName(i), cp.getCPRefType(i)); - case ClassReader.CONSTANT_MethodRef: + case ClassConstants.CONSTANT_MethodRef: return w.addCPMethodRef(cp.getCPRefClass(i), cp.getCPRefName(i), cp.getCPRefType(i)); - case ClassReader.CONSTANT_NameAndType: + case ClassConstants.CONSTANT_NameAndType: return w.addCPNAT(cp.getCPNATName(i), cp.getCPNATType(i)); - case ClassReader.CONSTANT_Integer: + case ClassConstants.CONSTANT_Integer: return w.addCPInt(cp.getCPInt(i)); - case ClassReader.CONSTANT_Float: + case ClassConstants.CONSTANT_Float: return w.addCPFloat(cp.getCPFloat(i)); - case ClassReader.CONSTANT_Long: + case ClassConstants.CONSTANT_Long: return w.addCPLong(cp.getCPLong(i)); - case ClassReader.CONSTANT_Double: + case ClassConstants.CONSTANT_Double: return w.addCPDouble(cp.getCPDouble(i)); - case ClassReader.CONSTANT_Utf8: + case ClassConstants.CONSTANT_Utf8: return w.addCPUtf8(cp.getCPUtf8(i)); } return -1; @@ -292,8 +293,8 @@ public class CopyWriter { if (1 < CPCount) { switch (cp.getItemType(1)) { - case ClassReader.CONSTANT_Long: - case ClassReader.CONSTANT_Double: + case ClassConstants.CONSTANT_Long: + case ClassConstants.CONSTANT_Double: // item 1 is a double-word item, so the next real item is at 3 // to make sure item 3 is allocated at index 3, we'll need to // insert a dummy entry at index 2 diff --git a/com.ibm.wala.shrike/src/com/ibm/wala/shrikeBT/ArrayStoreInstruction.java b/com.ibm.wala.shrike/src/com/ibm/wala/shrikeBT/ArrayStoreInstruction.java index 1101f4b31..34b592ccb 100644 --- a/com.ibm.wala.shrike/src/com/ibm/wala/shrikeBT/ArrayStoreInstruction.java +++ b/com.ibm.wala.shrike/src/com/ibm/wala/shrikeBT/ArrayStoreInstruction.java @@ -59,7 +59,7 @@ final public class ArrayStoreInstruction extends Instruction implements IArraySt @Override public String getType() { - return Decoder.indexedTypes[opcode - OP_iastore]; + return Constants.indexedTypes[opcode - OP_iastore]; } @Override diff --git a/com.ibm.wala.shrike/src/com/ibm/wala/shrikeBT/shrikeCT/tools/AddSerialVersion.java b/com.ibm.wala.shrike/src/com/ibm/wala/shrikeBT/shrikeCT/tools/AddSerialVersion.java index 8f2c7b742..c775355ed 100644 --- a/com.ibm.wala.shrike/src/com/ibm/wala/shrikeBT/shrikeCT/tools/AddSerialVersion.java +++ b/com.ibm.wala.shrike/src/com/ibm/wala/shrikeBT/shrikeCT/tools/AddSerialVersion.java @@ -22,6 +22,7 @@ import java.util.Arrays; import java.util.Comparator; import com.ibm.wala.shrikeBT.Util; +import com.ibm.wala.shrikeCT.ClassConstants; import com.ibm.wala.shrikeCT.ClassReader; import com.ibm.wala.shrikeCT.ClassWriter; import com.ibm.wala.shrikeCT.ConstantValueWriter; @@ -52,7 +53,7 @@ public class AddSerialVersion { } long UID = computeSerialVersionUID(r); - w.addField(ClassReader.ACC_PUBLIC | ClassReader.ACC_STATIC | ClassReader.ACC_FINAL, "serialVersionUID", "J", + w.addField(ClassConstants.ACC_PUBLIC | ClassConstants.ACC_STATIC | ClassConstants.ACC_FINAL, "serialVersionUID", "J", new ClassWriter.Element[] { new ConstantValueWriter(w, UID) }); } @@ -112,7 +113,7 @@ public class AddSerialVersion { int fieldCount = 0; for (int f = 0; f < fields.length; f++) { int flags = r.getFieldAccessFlags(f); - if ((flags & ClassReader.ACC_PRIVATE) == 0 || (flags & (ClassReader.ACC_STATIC | ClassReader.ACC_TRANSIENT)) == 0) { + if ((flags & ClassConstants.ACC_PRIVATE) == 0 || (flags & (ClassConstants.ACC_STATIC | ClassConstants.ACC_TRANSIENT)) == 0) { fields[fieldCount] = new Integer(f); fieldNames[f] = r.getFieldName(f); fieldCount++; @@ -141,7 +142,7 @@ public class AddSerialVersion { for (int m = 0; m < methodSigs.length; m++) { String name = r.getMethodName(m); int flags = r.getMethodAccessFlags(m); - if (name.equals("") || (flags & ClassReader.ACC_PRIVATE) == 0) { + if (name.equals("") || (flags & ClassConstants.ACC_PRIVATE) == 0) { methods[methodCount] = new Integer(m); methodSigs[m] = name + r.getMethodType(m); if (name.equals("")) { diff --git a/com.ibm.wala.shrike/src/com/ibm/wala/shrikeBT/shrikeCT/tools/ClassSearcher.java b/com.ibm.wala.shrike/src/com/ibm/wala/shrikeBT/shrikeCT/tools/ClassSearcher.java index 2dcdd9d55..e8afe96d3 100644 --- a/com.ibm.wala.shrike/src/com/ibm/wala/shrikeBT/shrikeCT/tools/ClassSearcher.java +++ b/com.ibm.wala.shrike/src/com/ibm/wala/shrikeBT/shrikeCT/tools/ClassSearcher.java @@ -16,6 +16,7 @@ import java.io.Writer; import com.ibm.wala.shrikeBT.shrikeCT.ClassInstrumenter; import com.ibm.wala.shrikeBT.shrikeCT.OfflineInstrumenter; +import com.ibm.wala.shrikeCT.ClassConstants; import com.ibm.wala.shrikeCT.ClassReader; import com.ibm.wala.shrikeCT.ConstantPoolParser; @@ -60,7 +61,7 @@ public class ClassSearcher { ClassReader r = ci.getReader(); ConstantPoolParser cp = r.getCP(); for (int i = 1; i < cp.getItemCount(); i++) { - if (cp.getItemType(i) == ConstantPoolParser.CONSTANT_Class && (cp.getCPClass(i).equals(cl1) || cp.getCPClass(i).equals(cl2))) { + if (cp.getItemType(i) == ClassConstants.CONSTANT_Class && (cp.getCPClass(i).equals(cl1) || cp.getCPClass(i).equals(cl2))) { w.write(cp.getCPClass(i) + " " + resource + " " + r.getName() + "\n"); } }