CommandLine.java
package dev.civl.mc.run.IF;
import dev.civl.gmc.GMCConfiguration;
/**
* A command line represents the command line information for running CIVL.
*
* @author Manchun Zheng
*
*/
public interface CommandLine {
/**
* This contains the names of all commands supported by CIVL, either it is a
* normal command or a compare command.
*
* @author zmanchun
*
*/
public enum CommandName {
CONFIG, COMPARE, GUI, HELP, REPLAY, RUN, SHOW, VERIFY, COMPARE_REPLAY
}
public final static String CONFIG = "config";
public final static String COMPARE = "compare";
public final static String GUI = "gui";
public final static String HELP = "help";
public final static String REPLAY = "replay";
public final static String RUN = "run";
public final static String SHOW = "show";
public final static String VERIFY = "verify";
/**
* CIVL command line kinds: normal, or compare.
*
* Normal command line contains one GMC section (anonymous), where compare
* command line has three GMC section (anonymous, impl, and spec).
*
* @author Manchun Zheng
*/
public enum CommandLineKind {
NORMAL, COMPARE
}
/**
* The kind of this command line
*
* @return
*/
CommandLineKind commandLineKind();
void setCommandString(String string);
String getCommandString();
GMCConfiguration gmcConfig();
void setGMCConfig(GMCConfiguration config);
}