TreeElement (TreeElement first, ASTNode last, @Nullable ASTNode anchor, @Nullable Boolean before) { ASTNode anchorBefore; if (anchor == null) { anchorBefore = before == null || before.booleanValue() ? null : getFirstChildNode(); } else { anchorBefore = before.booleanValue() ? anchor : anchor.getTreeNext(); } return (TreeElement)CodeEditUtil.addChildren(this, first, last, anchorBefore); }