void (@NotNull CompletionResultSet result, @Nullable JavaRunConfigurationBase settings, @NotNull JdkOptionsData data) { Stream.of( data.getOptions().stream().filter(option1 -> option1.getVariant() != VMOptionVariant.XX), Stream.of(STANDARD_OPTIONS), settings == null ? null : settings.getKnownVMOptions().stream()) .flatMap(Function.identity()) .forEach(option -> { String fullLookup = option.getVariant().prefix() + option.getOptionName(); LookupElementBuilder builder = LookupElementBuilder.create(option.createPointer(), fullLookup) .withTypeText(option.getType()) .withPresentableText(fullLookup); VMOptionLookupElementDecorator decorator = option.getDecorator(); if (decorator != null) { result.addElement(decorator.tune(builder)); } else { Character suffix = option.getVariant().suffix(); TailType tailType = suffix == null ? null : new CharTailType(suffix); result.addElement(TailTypeDecorator.withTail(builder, tailType)); } }); }