@Override
public boolean process(Options options, String option, String arg) {
return super.process(options, "-classpath", arg);
}
},
new COption(CEYLONCWD, "opt.arg.path", "opt.ceyloncwd"),
new COption(CEYLONREPO, "opt.arg.url", "opt.ceylonrepo"){
@Override
public boolean process(Options options, String option, String arg) {
if(options != null)
options.addMulti(CEYLONREPO, arg);
return false;
}
},
new COption(CEYLONSYSTEMREPO, "opt.arg.url", "opt.ceylonsystemrepo"),
new COption(CEYLONCACHEREPO, "opt.arg.url", "opt.ceyloncacherepo"),
new COption(CEYLONNODEFREPOS, "opt.ceylonnodefrepos"),
new COption(CEYLONUSER, "opt.arg.value", "opt.ceylonuser"),
new COption(CEYLONPASS, "opt.arg.value", "opt.ceylonpass"),
new COption(CEYLONNOOSGI, "opt.ceylonnoosgi"),
new COption(CEYLONNOPOM, "opt.ceylonnopom"),
new COption(CEYLONPACK200, "opt.ceylonpack200"),
new COption(CEYLONRESOURCEROOT, "opt.arg.path", "opt.ceylonresourceroot"),
new COption(CEYLONDISABLEOPT, "opt.ceylondisableopt"),
new COption(CEYLONDISABLEOPT_CUSTOM, "opt.ceylondisableopt.suboptlist"),
new COption(CEYLONSUPPRESSWARNINGS, "opt.arg.value", "opt.ceylonsuppresswarnings"),
new Option(SOURCEPATH, "opt.arg.path", "opt.sourcepath"){
@Override
public boolean process(Options options, String option, String arg) {
if(options != null)
options.addMulti(SOURCEPATH, arg);
return false;
}
},
new COption(CEYLONSOURCEPATH, "opt.arg.directory", "opt.ceylonsourcepath"){
@Override
public boolean process(Options options, String option, String arg) {
if(options != null)
options.addMulti(SOURCEPATH, arg);
return false;
}
},
new COption(CEYLONRESOURCEPATH, "opt.arg.url", "opt.ceylonresourcepath"){
@Override
public boolean process(Options options, String option, String arg) {
if(options != null)
options.addMulti(CEYLONRESOURCEPATH, arg);
return false;
}
},
new Option(BOOTCLASSPATH, "opt.arg.path", "opt.bootclasspath") {
@Override
public boolean process(Options options, String option, String arg) {
options.remove("-Xbootclasspath/p:");
options.remove("-Xbootclasspath/a:");
return super.process(options, option, arg);
}
},
new XOption(XBOOTCLASSPATH_PREPEND,"opt.arg.path", "opt.Xbootclasspath.p"),
new XOption(XBOOTCLASSPATH_APPEND, "opt.arg.path", "opt.Xbootclasspath.a"),
new XOption(XBOOTCLASSPATH, "opt.arg.path", "opt.bootclasspath") {
@Override
public boolean process(Options options, String option, String arg) {
options.remove("-Xbootclasspath/p:");
options.remove("-Xbootclasspath/a:");
return super.process(options, "-bootclasspath", arg);
}
},
new Option(EXTDIRS, "opt.arg.dirs", "opt.extdirs"),
new XOption(DJAVA_EXT_DIRS, "opt.arg.dirs", "opt.extdirs") {
@Override
public boolean process(Options options, String option, String arg) {
return super.process(options, "-extdirs", arg);
}
},
new Option(ENDORSEDDIRS, "opt.arg.dirs", "opt.endorseddirs"),
new XOption(DJAVA_ENDORSED_DIRS, "opt.arg.dirs", "opt.endorseddirs") {
@Override
public boolean process(Options options, String option, String arg) {
return super.process(options, "-endorseddirs", arg);
}
},
new Option(PROC, "opt.proc.none.only",
Option.ChoiceKind.ONEOF, "none", "only"),
new Option(PROCESSOR, "opt.arg.class.list", "opt.processor"),
new Option(PROCESSORPATH, "opt.arg.path", "opt.processorpath"),
new Option(D, "opt.arg.directory", "opt.d"),
new COption(CEYLONOUT, "opt.arg.url", "opt.ceylonout"){
@Override
public boolean process(Options options, String option, String arg) {
return super.process(options, "-d", arg);
}
},
new COption(CEYLONOFFLINE, "opt.ceylonoffline"),
new COption(CEYLONCONTINUE, "opt.ceyloncontinue"),
new COption(CEYLONMAVENOVERRIDES, "opt.arg.url", "opt.ceylonmavenoverrides"),
new Option(S, "opt.arg.directory", "opt.sourceDest"),
new Option(IMPLICIT, "opt.implicit",
Option.ChoiceKind.ONEOF, "none", "class"),
new Option(ENCODING, "opt.arg.encoding", "opt.encoding") {
@Override
public boolean process(Options options, String option, String operand) {
try {
Charset.forName(operand);
options.put(option, operand);
return false;
} catch (UnsupportedCharsetException e) {
helper.error("err.unsupported.encoding", operand);
return true;
} catch (IllegalCharsetNameException e) {
helper.error("err.unsupported.encoding", operand);
return true;
}
}
},
new Option(SOURCE, "opt.arg.release", "opt.source") {
@Override
public boolean process(Options options, String option, String operand) {
Source source = Source.lookup(operand);
if (source == null) {
helper.error("err.invalid.source", operand);
return true;
}
return super.process(options, option, operand);
}
},
new Option(TARGET, "opt.arg.release", "opt.target") {
@Override
public boolean process(Options options, String option, String operand) {
Target target = Target.lookup(operand);
if (target == null) {
helper.error("err.invalid.target", operand);
return true;
}
return super.process(options, option, operand);
}
},
new COption(VERSION, "opt.version") {
@Override
public boolean process(Options options, String option) {
helper.printVersion();
return super.process(options, option);
}
},
new HiddenOption(FULLVERSION) {
@Override
public boolean process(Options options, String option) {
helper.printFullVersion();
return super.process(options, option);
}
},
new HiddenOption(DIAGS) {
@Override
public boolean process(Options options, String option) {
Option xd = getOptions(helper, EnumSet.of(XD))[0];
option = option.substring(option.indexOf('=') + 1);
String diagsOption = option.contains("%") ?
"-XDdiagsFormat=" :
"-XDdiags=";
diagsOption += option;
if (xd.matches(diagsOption))
return xd.process(options, diagsOption);
else
return false;
}
},
new COption(HELP, "opt.help") {
@Override
public boolean process(Options options, String option) {
helper.printHelp();
return super.process(options, option);
}