update runtime executable

This commit is contained in:
Hartmut Seichter 2022-01-04 23:27:19 +01:00
parent 7479bfd625
commit cd8dfd7b69

View file

@ -14,6 +14,7 @@
#include <iostream>
#include <fstream>
#include <sstream>
int main(int argc,const char** argv) {
@ -24,19 +25,36 @@ int main(int argc,const char** argv) {
argagg::parser_results args;
std::ostringstream usage;
usage
<< "pixwerx rendering engine\n"
<< '\n'
<< "Usage: " << argv[0] << " [--help] [--file filename.lua]\n"
<< '\n';
try {
args = argparser.parse(argc,argv);
} catch (std::exception &e) {
std::cerr << e.what() << std::endl;
argagg::fmt_ostream help(std::cerr);
help << usage.str() << argparser << '\n'
<< "Encountered exception while parsing arguments: " << e.what()
<< '\n';
return -1;
}
std::ifstream input;
// run a file
if (args["file"]) {
input.open(args["file"].as<std::string>(),std::ifstream::in);
if (!input.is_open()) {
@ -55,4 +73,14 @@ int main(int argc,const char** argv) {
pw::script s;
return s.eval(sout.str().c_str());
// show help
} else if (args["help"]) {
argagg::fmt_ostream help(std::cerr);
help << usage.str() << argparser;
}
return 0;
}