aboutsummaryrefslogtreecommitdiff
path: root/src/main/java/dev/isxander/yacl3/api/controller/EnumControllerBuilder.java
blob: decb8f9ffa4fa6f87ef2f24114a7c55798afb768 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
package dev.isxander.yacl3.api.controller;

import dev.isxander.yacl3.api.Option;
import dev.isxander.yacl3.impl.controller.EnumControllerBuilderImpl;

public interface EnumControllerBuilder<T extends Enum<T>> extends ValueFormattableController<T, EnumControllerBuilder<T>> {
    EnumControllerBuilder<T> enumClass(Class<T> enumClass);

    static <T extends Enum<T>> EnumControllerBuilder<T> create(Option<T> option) {
        return new EnumControllerBuilderImpl<>(option);
    }
}