<commit_before>package j2html.tags;

import j2html.attributes.Attr;

import java.util.ArrayList;
import java.util.List;

public class ContainerTag extends Tag {

    public List<Tag> children;

    public ContainerTag(String tagType) {
        super(tagType);
        this.children = new ArrayList<>();
    }

    /**
     * Appends a tag to the end of this element
     * @param child tag to be appended
     * @return itself for easy chaining
     */
    public ContainerTag with(Tag child) {
        if (this == child) {
            throw new Error("Cannot append a tag to itself.");
        }
        child.setParent(this);
        children.add(child);
        return this;
    }

    /**
     * Appends a list of j2html.tags to the end of this element
     * @param children j2html.tags to be appended
     * @return itself for easy chaining
     */
    public ContainerTag with(List<Tag> children) {
        if (children != null) {
            children.forEach(this::with);
        }
        return this;
    }

    /**
     * Appends the j2html.tags to the end of this element
     * @param children j2html.tags to be appended
     * @return itself for easy chaining
     */
    public ContainerTag with(Tag... children) {
        for (Tag aChildren : children) {
            with(aChildren);
        }
        return this;
    }

    /**
     * Appends a text tag to this element
     * @param text the text to be appended
     * @return itself for easy chaining
     */
    public ContainerTag withText(String text) {
        return with(new Text(text));
    }<commit_msg>clean javadoc<commit_after>package j2html.tags;

import j2html.attributes.Attr;

import java.util.ArrayList;
import java.util.List;

public class ContainerTag extends Tag {

    public List<Tag> children;

    public ContainerTag(String tagType) {
        super(tagType);
        this.children = new ArrayList<>();
    }

    /**
     * Appends a tag to the end of this element
     * @param child tag to be appended
     * @return itself for easy chaining
     */
    public ContainerTag with(Tag child) {
        if (this == child) {
            throw new Error("Cannot append a tag to itself.");
        }
        child.setParent(this);
        children.add(child);
        return this;
    }

    /**
     * Appends a list of tags to the end of this element
     * @param children tags to be appended
     * @return itself for easy chaining
     */
    public ContainerTag with(List<Tag> children) {
        if (children != null) {
            children.forEach(this::with);
        }
        return this;
    }

    /**
     * Appends the tags to the end of this element
     * @param children tags to be appended
     * @return itself for easy chaining
     */
    public ContainerTag with(Tag... children) {
        for (Tag aChildren : children) {
            with(aChildren);
        }
        return this;
    }

    /**
     * Appends a text tag to this element
     * @param text the text to be appended
     * @return itself for easy chaining
     */
    public ContainerTag withText(String text) {
        return with(new Text(text));
    }
{'fraction_non_alphanumeric': 0.09125717932354818, 'fraction_numerical': 0.0025526483726866626, 'mean_word_length': 2.049610894941634, 'pattern_counts': {'":': 0, '<': 9, '<?xml version=': 0, '>': 9, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '1876784', 'n_tokens_mistral': 879, 'n_tokens_neox': 855, 'n_words': 303}