<commit_before>package info.faceland.loot.sockets;

import info.faceland.loot.api.sockets.SocketGem;
import info.faceland.loot.api.sockets.SocketGemBuilder;
import info.faceland.loot.api.sockets.effects.SocketEffect;

import java.util.List;

public final class LootSocketGemBuilder implements SocketGemBuilder {

    private boolean built = false;
    private LootSocketGem gem;

    public LootSocketGemBuilder(String name) {
        this.gem = new LootSocketGem(name);
    }

    @Override
    public boolean isBuilt() {
        return built;
    }

    @Override
    public SocketGem build() {
        if (isBuilt()) {
            throw new IllegalStateException("already built");
        }
        built = true;
        return gem;
    }

    @Override
    public SocketGemBuilder withWeight(double d) {
        gem.setWeight(d);
        return this;
    }

    @Override
    public SocketGemBuilder withPrefix(String s) {
        gem.setPrefix(s);
        return this;
    }

    @Override
    public SocketGemBuilder withSuffix(String s) {
        gem.setSuffix(s);
        return this;
    }

    @Override
    public SocketGemBuilder withLore(List<String> l) {
        gem.setLore(l);
        return this;
    }

    @Override
    public SocketGemBuilder withSocketEffects(List<SocketEffect> effects) {
        gem.setSocketEffects(effects);
        return this;
    }

}<commit_msg>implementing withItemGroup() in LootSocketGemBuilder<commit_after>package info.faceland.loot.sockets;

import info.faceland.loot.api.groups.ItemGroup;
import info.faceland.loot.api.sockets.SocketGem;
import info.faceland.loot.api.sockets.SocketGemBuilder;
import info.faceland.loot.api.sockets.effects.SocketEffect;

import java.util.List;

public final class LootSocketGemBuilder implements SocketGemBuilder {

    private boolean built = false;
    private LootSocketGem gem;

    public LootSocketGemBuilder(String name) {
        this.gem = new LootSocketGem(name);
    }

    @Override
    public boolean isBuilt() {
        return built;
    }

    @Override
    public SocketGem build() {
        if (isBuilt()) {
            throw new IllegalStateException("already built");
        }
        built = true;
        return gem;
    }

    @Override
    public SocketGemBuilder withWeight(double d) {
        gem.setWeight(d);
        return this;
    }

    @Override
    public SocketGemBuilder withPrefix(String s) {
        gem.setPrefix(s);
        return this;
    }

    @Override
    public SocketGemBuilder withSuffix(String s) {
        gem.setSuffix(s);
        return this;
    }

    @Override
    public SocketGemBuilder withLore(List<String> l) {
        gem.setLore(l);
        return this;
    }

    @Override
    public SocketGemBuilder withSocketEffects(List<SocketEffect> effects) {
        gem.setSocketEffects(effects);
        return this;
    }

    @Override
    public SocketGemBuilder withItemGroup(ItemGroup itemGroup) {
        gem.setItemGroup(itemGroup);
        return this;
    }

}
{'fraction_non_alphanumeric': 0.08695652173913043, 'fraction_numerical': 0.0, 'mean_word_length': 2.618247298919568, 'pattern_counts': {'":': 0, '<': 7, '<?xml version=': 0, '>': 7, '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': '938063', 'n_tokens_mistral': 942, 'n_tokens_neox': 911, 'n_words': 191}