public CommandCompletions(CommandManager manager) {
this.manager = manager;
registerAsyncCompletion("nothing", c -> Collections.emptyList());
registerAsyncCompletion("range", (c) -> {
String config = c.getConfig();
if (config == null) {
return Collections.emptyList();
}
final String[] ranges = ACFPatterns.DASH.split(config);
int start;
int end;
if (ranges.length != 2) {
start = 0;
end = ACFUtil.parseInt(ranges[0], 0);
} else {
start = ACFUtil.parseInt(ranges[0], 0);
end = ACFUtil.parseInt(ranges[1], 0);
}
return IntStream.rangeClosed(start, end).mapToObj(Integer::toString).collect(Collectors.toList());
});
List<String> timeunits = Arrays.asList("minutes", "hours", "days", "weeks", "months", "years");
registerAsyncCompletion("timeunits", (c) -> timeunits);
}