void (@NotNull Element element) { boolean merged = false; if (myMergeByTextAttributes && !myPieces.isEmpty()) { Element oldElement = myPieces.get(myPieces.size() - 1); if (oldElement.getEnd() >= element.getStart() && Comparing.equal(oldElement.getAttributes(), element.getAttributes()) && Comparing.equal(oldElement.getElementType(), element.getElementType())) { merged = true; myPieces.remove(myPieces.size() - 1); myPieces.add(new Element(oldElement.getStart(), element.getEnd(), element.getElementType(), element.getAttributes())); } } if (!merged) { myPieces.add(element); } }