Added 'inherited' flag for PyType.resolveMember

Do not try class members providers for ancestor classes before class
members providers for the current class.
This commit is contained in:
Andrey Vlasovskikh
2013-04-23 18:05:17 +04:00
parent e9fccfb338
commit 4d04cfc792
22 changed files with 66 additions and 51 deletions
@@ -22,18 +22,18 @@ public interface PyType {
/**
* Resolves an attribute of type.
*
*
* @param name attribute name
* @param location the expression of type qualifierType on which the member is being resolved (optional)
* @param direction
* @param resolveContext
* @param inherited look up inherited members and members provided by class providers
* @return null if name definitely cannot be found (e.g. in a qualified reference),
* or an empty list if name is not found but other contexts are worth looking at,
* or a list of elements that define the name, a la multiResolve().
*/
@Nullable
List<? extends RatedResolveResult> resolveMember(@NotNull final String name, @Nullable PyExpression location, AccessDirection direction,
PyResolveContext resolveContext);
PyResolveContext resolveContext, boolean inherited);
/**
* Proposes completion variants from type's attributes.