Added PyClass.getAncestorClasses(TypeEvalContext)

This commit is contained in:
Andrey Vlasovskikh
2013-04-18 15:49:52 +04:00
parent 563104c668
commit cfc8d927bc
2 changed files with 10 additions and 1 deletions
@@ -113,6 +113,9 @@ public interface PyClass extends PsiNameIdentifierOwner, PyStatement, NameDefine
@NotNull
List<PyClass> getAncestorClasses();
@NotNull
List<PyClass> getAncestorClasses(@NotNull TypeEvalContext context);
/**
* Get a list of all ancestor types.
*/
@@ -177,8 +177,14 @@ public class PyClassImpl extends PyPresentableElementImpl<PyClassStub> implement
@NotNull
@Override
public List<PyClass> getAncestorClasses() {
return getAncestorClasses(TypeEvalContext.fastStubOnly(null));
}
@NotNull
@Override
public List<PyClass> getAncestorClasses(@NotNull TypeEvalContext context) {
final List<PyClass> results = new ArrayList<PyClass>();
for (PyClassLikeType type : getAncestorTypes(TypeEvalContext.fastStubOnly(null))) {
for (PyClassLikeType type : getAncestorTypes(context)) {
if (type instanceof PyClassType) {
results.add(((PyClassType)type).getPyClass());
}