in src/java/org/jetbrains/plugins/clojure/psi/impl/list/ListDeclarations.java [55:81]
public static boolean get(PsiScopeProcessor processor,
ResolveState state,
PsiElement lastParent,
PsiElement place,
ClList list,
@Nullable String headText) {
if (headText == null) return true;
if (headText.equals(FN)) return processFnDeclaration(processor, list, place, lastParent);
if (headText.equals(IMPORT)) return ImportOwner.processImports(processor, place, list, headText);
if (headText.equals(USE)) return ImportOwner.processUses(processor, place, list, headText);
if (headText.equals(REFER)) return ImportOwner.processRefer(processor, place, list, headText);
if (headText.equals(REQUIRE)) return ImportOwner.processRequires(processor, place, list, headText);
if (headText.equals(MEMFN)) return processMemFnDeclaration(processor, list, place);
if (headText.equals(DOT)) return processDotDeclaration(processor, list, place, lastParent);
if (headText.equals(LOOP)) return processLoopDeclaration(processor, list, place, lastParent);
if (headText.equals(DOSEQ)) return processDoseqDeclaration(processor, list, place, lastParent);
if (headText.equals(DECLARE)) return processDeclareDeclaration(processor, list, place, lastParent);
if (headText.equals(LET) && !processLetContents(processor, list, place)) return false;
if (LOCAL_BINDINGS.contains(headText)) return processBindings(processor, list, place);
final PsiElement parent = list.getParent();
if (parent != null && parent instanceof ClList) {
return getWithParentContext(processor, list, ((ClList) parent), state, lastParent, place);
}
return true;
}