package org.jetbrains.plugins.clojure.psi.stubs.index;
import com.intellij.psi.stubs.IntStubIndexExtension;
import com.intellij.psi.stubs.StubIndexKey;
import com.intellij.psi.search.GlobalSearchScope;
import com.intellij.openapi.project.Project;
import java.util.Collection;
import org.jetbrains.plugins.clojure.psi.api.ClojureFile;
import org.jetbrains.plugins.clojure.psi.impl.search.ClojureSourceFilterScope;
/**
* @author ilyas
*/
public class ClojureFullScriptNameIndex extends IntStubIndexExtension<ClojureFile> {
public static final StubIndexKey<Integer, ClojureFile> KEY = StubIndexKey.createIndexKey("clj.script.fqn");
private static final ClojureFullScriptNameIndex ourInstance = new ClojureFullScriptNameIndex();
public static ClojureFullScriptNameIndex getInstance() {
return ourInstance;
}
public StubIndexKey<Integer, ClojureFile> getKey() {
return KEY;
}
public Collection<ClojureFile> get(final Integer integer, final Project project, final GlobalSearchScope scope) {
return super.get(integer, project, new ClojureSourceFilterScope(scope, project));
}
@Override
public int getVersion() {
return ClojureIndexVersion.VERSION;
}
}