From 67b5dbdf76e99d5f9c86400243c8dd946b32b88b Mon Sep 17 00:00:00 2001 From: Jan Travnicek <Jan.Travnicek@fit.cvut.cz> Date: Thu, 24 Aug 2017 08:13:53 +0200 Subject: [PATCH] allow multiple queries in aql from command line --- aql2/src/aql.cpp | 14 +++++++++----- 1 file changed, 9 insertions(+), 5 deletions(-) diff --git a/aql2/src/aql.cpp b/aql2/src/aql.cpp index 0a8b643325..479ac365fb 100644 --- a/aql2/src/aql.cpp +++ b/aql2/src/aql.cpp @@ -51,8 +51,8 @@ int main ( int argc, char * argv[] ) { TCLAP::CmdLine cmd ( "Algorithms query language binary", ' ', "0.01" ); - TCLAP::ValueArg < std::string > query ( "q", "query", "Query index", false, "", "query" ); - cmd.add ( query ); + TCLAP::MultiArg < std::string > queries ( "q", "query", "Query string", false, "string" ); + cmd.add ( queries ); TCLAP::SwitchArg measure ( "m", "measure", "Measure times", false ); cmd.add ( measure ); @@ -83,10 +83,14 @@ int main ( int argc, char * argv[] ) { Prompt p ( std::move ( environment ) ); cli::Command::Result result = cli::Command::Result::OK; - if ( query.isSet ( ) ) - result = p.execute_line ( query.getValue ( ) ); - else + if ( queries.getValue ( ).empty ( ) ) { result = p.run ( ); + } else { + for ( const std::string & query : queries.getValue ( ) ) + p.execute_line ( query ); + + result = cli::Command::Result::QUIT; + } measurements::end ( ); -- GitLab