summaryrefslogtreecommitdiffstats
path: root/native
diff options
context:
space:
mode:
authorKeisuke Kuroyanagi <ksk@google.com>2014-11-10 18:53:18 +0000
committerAndroid (Google) Code Review <android-gerrit@google.com>2014-11-10 18:53:19 +0000
commit0c1822df5bec37a71123118561fd3fb385404647 (patch)
treea4fa63924cdf7b52f12e30de9dac5f11cb5eaf06 /native
parentb23f03488f165565e46f8d1b742ee6629f9c0f52 (diff)
parent395f6e702066b65f05c45d2b92cd4baab3dd62cb (diff)
downloadandroid_packages_inputmethods_LatinIME-0c1822df5bec37a71123118561fd3fb385404647.tar.gz
android_packages_inputmethods_LatinIME-0c1822df5bec37a71123118561fd3fb385404647.tar.bz2
android_packages_inputmethods_LatinIME-0c1822df5bec37a71123118561fd3fb385404647.zip
Merge "Implement help command for dicttoolkit."
Diffstat (limited to 'native')
-rw-r--r--native/dicttoolkit/src/command_executors/diff_executor.cpp6
-rw-r--r--native/dicttoolkit/src/command_executors/diff_executor.h1
-rw-r--r--native/dicttoolkit/src/command_executors/header_executor.cpp6
-rw-r--r--native/dicttoolkit/src/command_executors/header_executor.h1
-rw-r--r--native/dicttoolkit/src/command_executors/help_executor.cpp22
-rw-r--r--native/dicttoolkit/src/command_executors/help_executor.h1
-rw-r--r--native/dicttoolkit/src/command_executors/info_executor.cpp6
-rw-r--r--native/dicttoolkit/src/command_executors/info_executor.h1
-rw-r--r--native/dicttoolkit/src/command_executors/makedict_executor.cpp8
-rw-r--r--native/dicttoolkit/src/command_executors/makedict_executor.h1
10 files changed, 52 insertions, 1 deletions
diff --git a/native/dicttoolkit/src/command_executors/diff_executor.cpp b/native/dicttoolkit/src/command_executors/diff_executor.cpp
index 1fe90a9f6..077a40090 100644
--- a/native/dicttoolkit/src/command_executors/diff_executor.cpp
+++ b/native/dicttoolkit/src/command_executors/diff_executor.cpp
@@ -28,5 +28,11 @@ const char *const DiffExecutor::COMMAND_NAME = "diff";
return 0;
}
+/* static */ void DiffExecutor::printUsage() {
+ printf("*** %s\n", COMMAND_NAME);
+ printf("Usage: %s\n", COMMAND_NAME);
+ printf("Shows differences between two dictionaries.\n\n");
+}
+
} // namespace dicttoolkit
} // namespace latinime
diff --git a/native/dicttoolkit/src/command_executors/diff_executor.h b/native/dicttoolkit/src/command_executors/diff_executor.h
index 5b4e9e609..fc8dc0d8f 100644
--- a/native/dicttoolkit/src/command_executors/diff_executor.h
+++ b/native/dicttoolkit/src/command_executors/diff_executor.h
@@ -27,6 +27,7 @@ class DiffExecutor final {
static const char *const COMMAND_NAME;
static int run(const int argc, char **argv);
+ static void printUsage();
private:
DISALLOW_IMPLICIT_CONSTRUCTORS(DiffExecutor);
diff --git a/native/dicttoolkit/src/command_executors/header_executor.cpp b/native/dicttoolkit/src/command_executors/header_executor.cpp
index ec2ca8119..068a62c31 100644
--- a/native/dicttoolkit/src/command_executors/header_executor.cpp
+++ b/native/dicttoolkit/src/command_executors/header_executor.cpp
@@ -28,5 +28,11 @@ const char *const HeaderExecutor::COMMAND_NAME = "header";
return 0;
}
+/* static */ void HeaderExecutor::printUsage() {
+ printf("*** %s\n", COMMAND_NAME);
+ printf("Usage: %s\n", COMMAND_NAME);
+ printf("Prints the header contents of a dictionary file.\n\n");
+}
+
} // namespace dicttoolkit
} // namespace latinime
diff --git a/native/dicttoolkit/src/command_executors/header_executor.h b/native/dicttoolkit/src/command_executors/header_executor.h
index b482e6bb6..4cdeb1a99 100644
--- a/native/dicttoolkit/src/command_executors/header_executor.h
+++ b/native/dicttoolkit/src/command_executors/header_executor.h
@@ -27,6 +27,7 @@ class HeaderExecutor final {
static const char *const COMMAND_NAME;
static int run(const int argc, char **argv);
+ static void printUsage();
private:
DISALLOW_IMPLICIT_CONSTRUCTORS(HeaderExecutor);
diff --git a/native/dicttoolkit/src/command_executors/help_executor.cpp b/native/dicttoolkit/src/command_executors/help_executor.cpp
index dba9f79fc..bd29a5b16 100644
--- a/native/dicttoolkit/src/command_executors/help_executor.cpp
+++ b/native/dicttoolkit/src/command_executors/help_executor.cpp
@@ -17,6 +17,14 @@
#include "command_executors/help_executor.h"
#include <cstdio>
+#include <functional>
+#include <vector>
+
+#include "command_executors/diff_executor.h"
+#include "command_executors/header_executor.h"
+#include "command_executors/info_executor.h"
+#include "command_executors/makedict_executor.h"
+#include "utils/command_utils.h"
namespace latinime {
namespace dicttoolkit {
@@ -24,9 +32,21 @@ namespace dicttoolkit {
const char *const HelpExecutor::COMMAND_NAME = "help";
/* static */ int HelpExecutor::run(const int argc, char **argv) {
- fprintf(stderr, "Command '%s' has not been implemented yet.\n", COMMAND_NAME);
+ printf("Available commands:\n\n");
+ const std::vector<std::function<void(void)>> printUsageMethods = {DiffExecutor::printUsage,
+ HeaderExecutor::printUsage, InfoExecutor::printUsage, MakedictExecutor::printUsage,
+ printUsage};
+ for (const auto &printUsageMethod : printUsageMethods) {
+ printUsageMethod();
+ }
return 0;
}
+/* static */ void HelpExecutor::printUsage() {
+ printf("*** %s\n", COMMAND_NAME);
+ printf("Usage: %s\n", COMMAND_NAME);
+ printf("Show this help list.\n\n");
+}
+
} // namespace dicttoolkit
} // namespace latinime
diff --git a/native/dicttoolkit/src/command_executors/help_executor.h b/native/dicttoolkit/src/command_executors/help_executor.h
index 245fda9b4..280610eb9 100644
--- a/native/dicttoolkit/src/command_executors/help_executor.h
+++ b/native/dicttoolkit/src/command_executors/help_executor.h
@@ -27,6 +27,7 @@ class HelpExecutor final {
static const char *const COMMAND_NAME;
static int run(const int argc, char **argv);
+ static void printUsage();
private:
DISALLOW_IMPLICIT_CONSTRUCTORS(HelpExecutor);
diff --git a/native/dicttoolkit/src/command_executors/info_executor.cpp b/native/dicttoolkit/src/command_executors/info_executor.cpp
index 5c9a6366a..c4d84cab3 100644
--- a/native/dicttoolkit/src/command_executors/info_executor.cpp
+++ b/native/dicttoolkit/src/command_executors/info_executor.cpp
@@ -28,5 +28,11 @@ const char *const InfoExecutor::COMMAND_NAME = "info";
return 0;
}
+/* static */ void InfoExecutor::printUsage() {
+ printf("*** %s\n", COMMAND_NAME);
+ printf("Usage: %s\n", COMMAND_NAME);
+ printf("Prints various information about a dictionary file.\n\n");
+}
+
} // namespace dicttoolkit
} // namespace latinime
diff --git a/native/dicttoolkit/src/command_executors/info_executor.h b/native/dicttoolkit/src/command_executors/info_executor.h
index b42bc0e8e..4ffa74fb0 100644
--- a/native/dicttoolkit/src/command_executors/info_executor.h
+++ b/native/dicttoolkit/src/command_executors/info_executor.h
@@ -27,6 +27,7 @@ class InfoExecutor final {
static const char *const COMMAND_NAME;
static int run(const int argc, char **argv);
+ static void printUsage();
private:
DISALLOW_IMPLICIT_CONSTRUCTORS(InfoExecutor);
diff --git a/native/dicttoolkit/src/command_executors/makedict_executor.cpp b/native/dicttoolkit/src/command_executors/makedict_executor.cpp
index 5466a5917..ea62e3c37 100644
--- a/native/dicttoolkit/src/command_executors/makedict_executor.cpp
+++ b/native/dicttoolkit/src/command_executors/makedict_executor.cpp
@@ -28,5 +28,13 @@ const char *const MakedictExecutor::COMMAND_NAME = "makedict";
return 0;
}
+/* static */ void MakedictExecutor::printUsage() {
+ printf("*** %s\n", COMMAND_NAME);
+ printf("Usage: %s\n", COMMAND_NAME);
+ printf("Converts a source dictionary file to one or several outputs.\n"
+ "Source can be a binary dictionary file or a combined format file.\n"
+ "Binary version 2 (Jelly Bean), 4, and combined format outputs are supported.\n\n");
+}
+
} // namespace dicttoolkit
} // namespace latinime
diff --git a/native/dicttoolkit/src/command_executors/makedict_executor.h b/native/dicttoolkit/src/command_executors/makedict_executor.h
index 466d1f7e2..ae1309f60 100644
--- a/native/dicttoolkit/src/command_executors/makedict_executor.h
+++ b/native/dicttoolkit/src/command_executors/makedict_executor.h
@@ -27,6 +27,7 @@ class MakedictExecutor final {
static const char *const COMMAND_NAME;
static int run(const int argc, char **argv);
+ static void printUsage();
private:
DISALLOW_IMPLICIT_CONSTRUCTORS(MakedictExecutor);