Add -helpfull and -?? to command-line tools
Change-Id: I18f91d3b58b21395f8bde970edabd4d9edb238cb
diff --git a/dev/core/src/com/google/gwt/util/tools/ToolBase.java b/dev/core/src/com/google/gwt/util/tools/ToolBase.java
index ce201ec..6d5baa2 100644
--- a/dev/core/src/com/google/gwt/util/tools/ToolBase.java
+++ b/dev/core/src/com/google/gwt/util/tools/ToolBase.java
@@ -84,6 +84,10 @@
}
protected void printHelp() {
+ printHelp(false);
+ }
+
+ protected void printHelp(boolean includeUndocumented) {
System.err.println(About.getGwtVersion());
Set<ArgHandler> uniqueArgHandlers = new LinkedHashSet<ArgHandler>(argHandlers.values());
@@ -120,7 +124,7 @@
// Print the command-line template.
//
for (ArgHandler handler : uniqueArgHandlers) {
- if (handler.isUndocumented()) {
+ if (!includeUndocumented && handler.isUndocumented()) {
continue;
}
String helpTag = handler.getHelpTag();
@@ -137,7 +141,7 @@
// Print the flagless args.
//
- if (nullHandler != null && !nullHandler.isUndocumented()) {
+ if (nullHandler != null && (!nullHandler.isUndocumented() || includeUndocumented)) {
String[] tagArgs = nullHandler.getTagArgs();
for (String element : tagArgs) {
System.err.print(nullHandler.isRequired() ? " " : " [");
@@ -159,7 +163,7 @@
// Print the details.
//
for (ArgHandler handler : uniqueArgHandlers) {
- if (handler.isUndocumented()) {
+ if (!includeUndocumented && handler.isUndocumented()) {
continue;
}
String helpTag = handler.getHelpTag();
@@ -178,7 +182,7 @@
// And details for the "extra" args, if any.
//
- if (nullHandler != null && !nullHandler.isUndocumented()) {
+ if (nullHandler != null && (!nullHandler.isUndocumented() || includeUndocumented)) {
System.err.println("and ");
String tagArg = nullHandler.getTagArgs()[0];
int len = tagArg.length();
@@ -198,14 +202,19 @@
if (args.length > 0) {
boolean help = false;
+ boolean helpUndocumented = false;
if ("-help".equalsIgnoreCase(args[0])) {
help = true;
} else if ("-?".equals(args[0])) {
help = true;
+ } else if ("-helpfull".equalsIgnoreCase(args[0])) {
+ help = helpUndocumented = true;
+ } else if ("-??".equals(args[0])) {
+ help = helpUndocumented = true;
}
if (help) {
- printHelp();
+ printHelp(helpUndocumented);
return false;
}
}