// 
// Decompiled by Procyon v0.6.0
// 

package com.hypixel.hytale.server.npc.asset.builder;

import javax.annotation.Nullable;
import it.unimi.dsi.fastutil.objects.ObjectArrayList;
import javax.annotation.Nonnull;
import java.util.List;

public class BuilderObjectListHelper<T> extends BuilderObjectArrayHelper<List<T>, T>
{
    public BuilderObjectListHelper(final Class<?> classType, final BuilderContext owner) {
        super(classType, owner);
    }
    
    @Nullable
    @Override
    public List<T> build(@Nonnull final BuilderSupport builderSupport) {
        if (this.hasNoElements()) {
            return null;
        }
        final List<T> objects = new ObjectArrayList<T>();
        for (final BuilderObjectReferenceHelper<T> builder : this.builders) {
            if (!builder.excludeFromRegularBuild()) {
                final T obj = builder.build(builderSupport);
                if (obj != null) {
                    objects.add(obj);
                }
            }
        }
        return objects;
    }
}
