Loading native/dicttoolkit/NativeFileList.mk +4 −2 Original line number Diff line number Diff line Loading @@ -15,7 +15,9 @@ LATIN_IME_DICT_TOOLKIT_MAIN_SRC_FILES := \ dict_toolkit_main.cpp LATIN_IME_DICT_TOOLKIT_SRC_FILES := LATIN_IME_DICT_TOOLKIT_SRC_FILES := \ utils/command_utils.cpp LATIN_IME_DICT_TOOLKIT_TEST_FILES := \ dict_toolkit_defines_test.cpp dict_toolkit_defines_test.cpp \ utils/command_utils_test.cpp native/dicttoolkit/UnitTests.mk +1 −0 Original line number Diff line number Diff line Loading @@ -46,6 +46,7 @@ include $(BUILD_HOST_STATIC_LIBRARY) include $(CLEAR_VARS) # TODO: Remove -std=c++11 once it is set by default on host build. LOCAL_ADDRESS_SANITIZER := true LOCAL_CFLAGS += -std=c++11 -Wno-unused-parameter -Wno-unused-function LOCAL_CLANG := true LOCAL_CXX_STL := libc++ Loading native/dicttoolkit/dict_toolkit_main.cpp +18 −1 Original line number Diff line number Diff line Loading @@ -16,8 +16,25 @@ #include <cstdio> #include "dict_toolkit_defines.h" #include "utils/command_utils.h" void usage(int argc, char **argv) { fprintf(stderr, "Usage: %s <command> [arguments]\n", argc > 0 ? argv[0] : "dicttoolkit"); } int main(int argc, char **argv) { if (argc < MIN_ARG_COUNT) { usage(argc, argv); return 0; } using namespace latinime::dicttoolkit; const CommandType commandType = CommandUtils::getCommandType(argv[1]); if (commandType == CommandType::Unknown) { CommandUtils::printCommandUnknownMessage(argv[0], argv[1]); return 0; } // TODO: Implement. printf("%s\n", argv[0]); fprintf(stderr, "Command '%s' has not been implemented yet.\n", argv[1]); return 0; } native/dicttoolkit/src/dict_toolkit_defines.h +2 −0 Original line number Diff line number Diff line Loading @@ -19,4 +19,6 @@ #include "defines.h" #define MIN_ARG_COUNT 2 #endif // LATINIME_DICT_TOOLKIT_DEFINES_H native/dicttoolkit/src/utils/command_utils.cpp 0 → 100644 +45 −0 Original line number Diff line number Diff line /* * Copyright (C) 2014 The Android Open Source Project * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. */ #include "utils/command_utils.h" namespace latinime { namespace dicttoolkit { const char *const CommandUtils::COMMAND_NAME_INFO = "info"; const char *const CommandUtils::COMMAND_NAME_DIFF = "diff"; const char *const CommandUtils::COMMAND_NAME_MAKEDICT = "makedict"; const char *const CommandUtils::COMMAND_NAME_HEADER = "header"; const char *const CommandUtils::COMMAND_NAME_HELP = "help"; /* static */ CommandType CommandUtils::getCommandType(const std::string &commandName) { if (commandName == COMMAND_NAME_INFO) { return CommandType::Info; } else if (commandName == COMMAND_NAME_DIFF) { return CommandType::Diff; } else if (commandName == COMMAND_NAME_MAKEDICT) { return CommandType::Makedict; } else if (commandName == COMMAND_NAME_HEADER) { return CommandType::Header; } else if (commandName == COMMAND_NAME_HELP) { return CommandType::Help; } else { return CommandType::Unknown; } } } // namespace dicttoolkit } // namespace latinime Loading
native/dicttoolkit/NativeFileList.mk +4 −2 Original line number Diff line number Diff line Loading @@ -15,7 +15,9 @@ LATIN_IME_DICT_TOOLKIT_MAIN_SRC_FILES := \ dict_toolkit_main.cpp LATIN_IME_DICT_TOOLKIT_SRC_FILES := LATIN_IME_DICT_TOOLKIT_SRC_FILES := \ utils/command_utils.cpp LATIN_IME_DICT_TOOLKIT_TEST_FILES := \ dict_toolkit_defines_test.cpp dict_toolkit_defines_test.cpp \ utils/command_utils_test.cpp
native/dicttoolkit/UnitTests.mk +1 −0 Original line number Diff line number Diff line Loading @@ -46,6 +46,7 @@ include $(BUILD_HOST_STATIC_LIBRARY) include $(CLEAR_VARS) # TODO: Remove -std=c++11 once it is set by default on host build. LOCAL_ADDRESS_SANITIZER := true LOCAL_CFLAGS += -std=c++11 -Wno-unused-parameter -Wno-unused-function LOCAL_CLANG := true LOCAL_CXX_STL := libc++ Loading
native/dicttoolkit/dict_toolkit_main.cpp +18 −1 Original line number Diff line number Diff line Loading @@ -16,8 +16,25 @@ #include <cstdio> #include "dict_toolkit_defines.h" #include "utils/command_utils.h" void usage(int argc, char **argv) { fprintf(stderr, "Usage: %s <command> [arguments]\n", argc > 0 ? argv[0] : "dicttoolkit"); } int main(int argc, char **argv) { if (argc < MIN_ARG_COUNT) { usage(argc, argv); return 0; } using namespace latinime::dicttoolkit; const CommandType commandType = CommandUtils::getCommandType(argv[1]); if (commandType == CommandType::Unknown) { CommandUtils::printCommandUnknownMessage(argv[0], argv[1]); return 0; } // TODO: Implement. printf("%s\n", argv[0]); fprintf(stderr, "Command '%s' has not been implemented yet.\n", argv[1]); return 0; }
native/dicttoolkit/src/dict_toolkit_defines.h +2 −0 Original line number Diff line number Diff line Loading @@ -19,4 +19,6 @@ #include "defines.h" #define MIN_ARG_COUNT 2 #endif // LATINIME_DICT_TOOLKIT_DEFINES_H
native/dicttoolkit/src/utils/command_utils.cpp 0 → 100644 +45 −0 Original line number Diff line number Diff line /* * Copyright (C) 2014 The Android Open Source Project * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. */ #include "utils/command_utils.h" namespace latinime { namespace dicttoolkit { const char *const CommandUtils::COMMAND_NAME_INFO = "info"; const char *const CommandUtils::COMMAND_NAME_DIFF = "diff"; const char *const CommandUtils::COMMAND_NAME_MAKEDICT = "makedict"; const char *const CommandUtils::COMMAND_NAME_HEADER = "header"; const char *const CommandUtils::COMMAND_NAME_HELP = "help"; /* static */ CommandType CommandUtils::getCommandType(const std::string &commandName) { if (commandName == COMMAND_NAME_INFO) { return CommandType::Info; } else if (commandName == COMMAND_NAME_DIFF) { return CommandType::Diff; } else if (commandName == COMMAND_NAME_MAKEDICT) { return CommandType::Makedict; } else if (commandName == COMMAND_NAME_HEADER) { return CommandType::Header; } else if (commandName == COMMAND_NAME_HELP) { return CommandType::Help; } else { return CommandType::Unknown; } } } // namespace dicttoolkit } // namespace latinime