void (UsageInfo @NotNull [] usages) { try { for (UsageInfo aUsage : usages) { InheritanceToDelegationUsageInfo usage = (InheritanceToDelegationUsageInfo)aUsage; if (usage instanceof UnqualifiedNonDelegatedMemberUsageInfo) { delegateUsageFromClass(usage.getElement(), ((NonDelegatedMemberUsageInfo)usage).nonDelegatedMember, usage.getDelegateFieldAccessible()); } else { upcastToDelegation(usage.getElement(), usage.getDelegateFieldAccessible()); } } myAbstractDelegatedMethods = new HashSet<>(); addInnerClass(); addField(usages); delegateMethods(); addImplementingInterfaces(); updateSealedHierarchy(); } catch (IncorrectOperationException e) { LOG.error(e); } }