Set up the parse utility program to read from standard input if no file is specified

This commit is contained in:
Jesse Beder
2009-07-10 04:25:11 +00:00
parent 11f98f1cc6
commit 174f2c1fe7

View File

@@ -4,16 +4,17 @@
int main(int argc, char **argv) int main(int argc, char **argv)
{ {
if(argc != 2) { std::ifstream fin;
std::cout << "Usage: " << argv[0] << " input-file\n"; if(argc > 1)
return 0; fin.open(argv[1]);
}
std::istream& input = (argc > 1 ? fin : std::cin);
std::ifstream fin(argv[1]);
try { try {
YAML::Parser parser(fin); YAML::Parser parser(input);
YAML::Node doc; while(parser) {
parser.GetNextDocument(doc); YAML::Node doc;
parser.GetNextDocument(doc);
}
} catch(const YAML::Exception& e) { } catch(const YAML::Exception& e) {
std::cerr << e.what() << "\n"; std::cerr << e.what() << "\n";
} }