package x10.wala.ipa.callgraph; import com.ibm.wala.classLoader.IClass; import com.ibm.wala.ipa.callgraph.AnalysisScope; import com.ibm.wala.ipa.callgraph.impl.SetOfClasses; import com.ibm.wala.types.TypeReference; import java.util.*; import x10.wala.classLoader.X10LanguageImpl; import x10.wala.loader.X10SourceLoaderImpl; public class X10SourceAnalysisScope extends AnalysisScope { public X10SourceAnalysisScope() { super(Collections.singleton(X10LanguageImpl.X10Lang)); loadersByName.put(X10SourceLoaderImpl.X10SourceLoader.getName(), X10SourceLoaderImpl.X10SourceLoader); setLoaderImpl(X10SourceLoaderImpl.X10SourceLoader, "x10.wala.loader.X10SourceLoaderImpl"); this.setExclusions(new SetOfClasses() { @Override public boolean contains(String klassName) { return klassName.matches("x10/lang/(Void)?Fun_.*"); } @Override public boolean contains(TypeReference klass) { return contains(klass.getName().toString().substring(1)); } @Override public void add(IClass klass) { } }); } }