String (@NotNull LookupElement element) { // This method is not synchronized in BaseCompletionLookupArranger. // The only shared state accessed here is myAdditionalPrefix, // which is declared as volatile and accessed atomically. String prefix = itemMatcher(element).getPrefix(); String additionalPrefix = myAdditionalPrefix; return additionalPrefix.isEmpty() ? prefix : prefix + additionalPrefix; }