diff options
Diffstat (limited to 'src/moonp.cpp')
| -rw-r--r-- | src/moonp.cpp | 66 |
1 files changed, 30 insertions, 36 deletions
diff --git a/src/moonp.cpp b/src/moonp.cpp index cb53b55..32d85ed 100644 --- a/src/moonp.cpp +++ b/src/moonp.cpp | |||
| @@ -37,43 +37,37 @@ int main(int narg, const char** args) { | |||
| 37 | std::string resultFile; | 37 | std::string resultFile; |
| 38 | std::list<std::string> files; | 38 | std::list<std::string> files; |
| 39 | for (int i = 1; i < narg; ++i) { | 39 | for (int i = 1; i < narg; ++i) { |
| 40 | switch (hash(args[i])) { | 40 | std::string arg = args[i]; |
| 41 | case "-l"_id: | 41 | if (arg == "-l"sv) { |
| 42 | config.reserveLineNumber = true; | 42 | config.reserveLineNumber = true; |
| 43 | break; | 43 | } else if (arg == "-p"sv) { |
| 44 | case "-p"_id: | 44 | writeToFile = false; |
| 45 | writeToFile = false; | 45 | } else if (arg == "-t"sv) { |
| 46 | break; | 46 | ++i; |
| 47 | case "-t"_id: | 47 | if (i < narg) { |
| 48 | ++i; | 48 | targetPath = args[i]; |
| 49 | if (i < narg) { | 49 | } else { |
| 50 | targetPath = args[i]; | ||
| 51 | } else { | ||
| 52 | std::cout << help; | ||
| 53 | return 1; | ||
| 54 | } | ||
| 55 | break; | ||
| 56 | case "-b"_id: | ||
| 57 | dumpCompileTime = true; | ||
| 58 | break; | ||
| 59 | case "-h"_id: | ||
| 60 | std::cout << help; | 50 | std::cout << help; |
| 61 | return 0; | 51 | return 1; |
| 62 | case "-v"_id: | 52 | } |
| 63 | std::cout << "Moonscript version: " << MoonP::moonScriptVersion() << '\n'; | 53 | } else if (arg == "-b"sv) { |
| 64 | return 0; | 54 | dumpCompileTime = true; |
| 65 | case "-o"_id: | 55 | } else if (arg == "-h"sv) { |
| 66 | ++i; | 56 | std::cout << help; |
| 67 | if (i < narg) { | 57 | return 0; |
| 68 | resultFile = args[i]; | 58 | } else if (arg == "-v"sv) { |
| 69 | } else { | 59 | std::cout << "Moonscript version: " << MoonP::moonScriptVersion() << '\n'; |
| 70 | std::cout << help; | 60 | return 0; |
| 71 | return 1; | 61 | } else if (arg == "-o"sv) { |
| 72 | } | 62 | ++i; |
| 73 | break; | 63 | if (i < narg) { |
| 74 | default: | 64 | resultFile = args[i]; |
| 75 | files.push_back(args[i]); | 65 | } else { |
| 76 | break; | 66 | std::cout << help; |
| 67 | return 1; | ||
| 68 | } | ||
| 69 | } else { | ||
| 70 | files.push_back(arg); | ||
| 77 | } | 71 | } |
| 78 | } | 72 | } |
| 79 | if (files.empty()) { | 73 | if (files.empty()) { |
