void (@NotNull ASTNode child, @Nullable Indent indent, @NotNull List<? super Block> result, @Nullable Wrap wrap, @Nullable Alignment alignment) { if (isXmlTag(child)) { result.add(createTagBlock(child, indent != null ? indent : Indent.getNoneIndent(), wrap, alignment)); } else if (child.getElementType() == XmlElementType.XML_DOCTYPE) { result.add( new XmlBlock(child, wrap, alignment, myXmlFormattingPolicy, indent, null, isPreserveSpace()) { @Override protected Wrap getDefaultWrap(final ASTNode node) { final IElementType type = node.getElementType(); return type == XmlTokenType.XML_ATTRIBUTE_VALUE_TOKEN ? Wrap.createWrap(getWrapType(myXmlFormattingPolicy.getAttributesWrap()), false) : null; } } ); } else if (child.getElementType() == XmlTokenType.XML_DATA_CHARACTERS && child.getTreeParent().getElementType() != XmlElementType.XML_CDATA && child.textContains('\n')) { result.add(createRawTextChild(child, indent, wrap, alignment)); } else { result.add(createSimpleChild(child, indent, wrap, alignment, null)); } }