This commit is contained in:
Alexey Kudravtsev
2014-08-27 17:55:37 +04:00
parent d62173cda3
commit d27e153306
3 changed files with 6 additions and 10 deletions
@@ -1,5 +1,5 @@
/*
* Copyright 2000-2011 JetBrains s.r.o.
* Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -291,6 +291,5 @@ public interface ASTNode extends UserDataHolder {
* @param clazz expected psi class
* @return the PSI element.
*/
@Nullable
<T extends PsiElement> T getPsi(Class<T> clazz);
<T extends PsiElement> T getPsi(@NotNull Class<T> clazz);
}
@@ -771,8 +771,7 @@ public class CompositeElement extends TreeElement {
}
@Override
@Nullable
public <T extends PsiElement> T getPsi(Class<T> clazz) {
public <T extends PsiElement> T getPsi(@NotNull Class<T> clazz) {
return LeafElement.getPsi(clazz, getPsi(), LOG);
}
@@ -290,16 +290,14 @@ public abstract class LeafElement extends TreeElement {
}
@Override
@Nullable
public <T extends PsiElement> T getPsi(Class<T> clazz) {
public <T extends PsiElement> T getPsi(@NotNull Class<T> clazz) {
return getPsi(clazz, getPsi(), LOG);
}
@Nullable
static <T extends PsiElement> T getPsi(Class<T> clazz, PsiElement element, Logger log) {
static <T extends PsiElement> T getPsi(@NotNull Class<T> clazz, PsiElement element, Logger log) {
log.assertTrue(clazz.isInstance(element), "unexpected psi class. expected: " + clazz
+ " got: " + (element == null ? null : element.getClass()));
//noinspection unchecked
return (T)element;
}
}