import "copyrightAndOthers.stg"

targetPath() ::= "org/eclipse/collections/api/factory/primitive"

fileName(primitive) ::= "<primitive.name>Lists"

class(primitive) ::= <<
<body(primitive.type, primitive.name)>
>>

body(type, name) ::= <<
<copyrightAndOthers()>

package org.eclipse.collections.api.factory.primitive;

import org.eclipse.collections.api.factory.ServiceLoaderUtils;
import org.eclipse.collections.api.factory.list.primitive.Immutable<name>ListFactory;
import org.eclipse.collections.api.factory.list.primitive.Mutable<name>ListFactory;

/**
 * <name>Lists is a static utility for creating {@link Immutable<name>ListFactory} and {@link Mutable<name>ListFactory}.
 * This file was automatically generated from template file primitiveListsAPI.stg.
 *
 * @since 11.1.
 */
@SuppressWarnings("ConstantNamingConvention")
public final class <name>Lists
{
    public static final Immutable<name>ListFactory immutable =
            ServiceLoaderUtils.loadServiceClass(Immutable<name>ListFactory.class);
    public static final Mutable<name>ListFactory mutable =
            ServiceLoaderUtils.loadServiceClass(Mutable<name>ListFactory.class);

    private <name>Lists()
    {
        throw new AssertionError("Suppress default constructor for noninstantiability");
    }
}

>>
