@NotNull @Override public List<PyAssignmentStatement> findAttributes() { /** * TODO: This method if insanely heavy since it unstubs foreign files. Need to save stubs and * use them somehow. */ return CachedValuesManager.getManager(getProject()) .getCachedValue( this, ATTRIBUTES_KEY, () -> { final List<PyAssignmentStatement> result = findAttributesStatic(this); return CachedValueProvider.Result.create( result, PsiModificationTracker.MODIFICATION_COUNT); }, false); }
@Nullable @Override public StructuredDocString getStructuredDocString() { return CachedValuesManager.getCachedValue(this, myCachedStructuredDocStringProvider); }