From 550d676eb90fbd1923dc92431bcf93ae8234056e Mon Sep 17 00:00:00 2001
From: Jan Travnicek <Jan.Travnicek@fit.cvut.cz>
Date: Sun, 29 Jun 2014 20:50:16 +0200
Subject: [PATCH] acat2 add string

---
 acat2/src/acat.cpp | 13 ++++++++++---
 1 file changed, 10 insertions(+), 3 deletions(-)

diff --git a/acat2/src/acat.cpp b/acat2/src/acat.cpp
index e9e6269e37..3e6917527d 100644
--- a/acat2/src/acat.cpp
+++ b/acat2/src/acat.cpp
@@ -28,6 +28,11 @@ void getRegExp(std::list<sax::Token>& tokens) {
 	std::cout << regexp;
 }
 
+void getString(std::list<sax::Token>& tokens) {
+	string::String string = alib::FromXMLParsers::stringParser.parseValue(tokens);
+	std::cout << string;
+}
+
 int main(int argc, char** argv) {
 	if(argc == 2 && std::string(argv[1])=="-v" ) {
 			std::cout << argv[0] << " version " << VERSION << "\n";
@@ -54,11 +59,13 @@ int main(int argc, char** argv) {
 		sax::SaxParseInterface::parseFile(argv[optind],tokens);
 	}
 
-	if (tokens.front().getData() == "automaton") {
+	if (alib::FromXMLParsers::automatonParser.first(tokens)) {
 		getAutomaton(tokens);
-	} else if (tokens.front().getData() == "regexp") {
+	} else if (alib::FromXMLParsers::regexpParser.first(tokens)) {
 		getRegExp(tokens);
+	} else if (alib::FromXMLParsers::stringParser.first(tokens)) {
+		getString(tokens);
 	} else {
-		throw alib::AlibException( "Expected root tag automaton, grammar or regexp. Read: " + tokens.front().getData());
+		throw alib::AlibException( "Expected root tag automaton, grammar, regexp or string. Read: " + tokens.front().getData());
 	}
 }
-- 
GitLab