package game.command; public abstract class DefaultingParser extends CompletingParser { private final Object def; public DefaultingParser(String name, Object def, Object ... completions) { super(name, completions); this.def = def; } public Object getDefault(CommandEnvironment env) { return this.def; } protected final boolean hasDefault() { return this.def != null; } }