void (@NotNull StringBuilder builder, @NotNull Instruction instruction, @NotNull ControlFlowProvider provider) { PsiElement element = instruction.getElement(); Class<? extends Instruction> instructionClass = instruction.getClass(); builder.append("Instruction").append(instruction.num()).append("[font=\"Courier\", label=\"") .append(element != null ? escape(element.getText()) : "").append(" \\n(").append(instruction.num()).append(")[") .append(element != null ? element.getClass().getSimpleName() : "null").append("]").append(System.lineSeparator()) .append("{").append(instructionClass.getSimpleName().isEmpty() ? instructionClass.getSuperclass().getSimpleName() : instructionClass.getSimpleName() ).append("}"); String additionalInfo = provider.getAdditionalInfo(instruction); if (additionalInfo != null) { builder.append("\n{").append(additionalInfo).append("}"); } }