ru.cwcode.commands.arguments.EnumArg Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of Common Show documentation
Show all versions of Common Show documentation
Common of commands library (Minecraft)
package ru.cwcode.commands.arguments;
import ru.cwcode.commands.Argument;
import ru.cwcode.commands.api.Sender;
import java.util.HashMap;
import java.util.Map;
import java.util.Set;
import java.util.stream.Collectors;
import java.util.stream.Stream;
public class EnumArg extends Argument {
private final String name;
private Map values;
public EnumArg(Enum[] values, String name) {
this.name = name;
this.values = Stream.of(values).collect(Collectors.toMap(Enum::name,
anEnum -> anEnum,
(o, o2) -> o,
HashMap::new));
}
@Override
public boolean valid(String s) {
return values.containsKey(s);
}
@Override
public Set completions(Sender commandSender) {
return values.keySet();
}
@Override
public Object map() {
return values.get(raw);
}
@Override
public String argumentName() {
return name;
}
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy