summaryrefslogtreecommitdiff
path: root/src/main/interactive_shell.h
diff options
context:
space:
mode:
authorChristopher L. Conway <christopherleeconway@gmail.com>2010-10-20 20:41:03 +0000
committerChristopher L. Conway <christopherleeconway@gmail.com>2010-10-20 20:41:03 +0000
commit93e8bc35db891c6041f9690366be933433a0ad52 (patch)
treee946c0824d6d91c44ecc97a627411e5d6c334ea9 /src/main/interactive_shell.h
parentdaad722774087de1cf35714868d3762b3ea7cb21 (diff)
Adding support for interactive mode
Diffstat (limited to 'src/main/interactive_shell.h')
-rw-r--r--src/main/interactive_shell.h52
1 files changed, 52 insertions, 0 deletions
diff --git a/src/main/interactive_shell.h b/src/main/interactive_shell.h
new file mode 100644
index 000000000..6bd9db295
--- /dev/null
+++ b/src/main/interactive_shell.h
@@ -0,0 +1,52 @@
+/********************* */
+/*! \file interactive_shell.h
+ ** \verbatim
+ ** Original author: cconway
+ ** Major contributors:
+ ** Minor contributors (to current version):
+ ** This file is part of the CVC4 prototype.
+ ** Copyright (c) 2009, 2010 The Analysis of Computer Systems Group (ACSys)
+ ** Courant Institute of Mathematical Sciences
+ ** New York University
+ ** See the file COPYING in the top-level source directory for licensing
+ ** information.\endverbatim
+ **
+ ** \brief Interactive shell for CVC4
+ **/
+
+#ifndef __CVC4__INTERACTIVE_SHELL_H
+#define __CVC4__INTERACTIVE_SHELL_H
+
+#include <iostream>
+#include <string>
+
+#include "parser/parser_builder.h"
+
+namespace CVC4 {
+
+ class Command;
+
+ using namespace parser;
+
+class InteractiveShell {
+ std::istream& d_in;
+ std::ostream& d_out;
+ ParserBuilder d_parserBuilder;
+
+public:
+ InteractiveShell(std::istream& in,
+ std::ostream& out,
+ ParserBuilder& parserBuilder) :
+ d_in(in),
+ d_out(out),
+ d_parserBuilder(parserBuilder) {
+ }
+
+ /** Read a command from the interactive shell. This will read as
+ many lines as necessary to parse a well-formed command. */
+ Command *readCommand();
+};
+
+} // CVC4 namespace
+
+#endif // __CVC4__INTERACTIVE_SHELL_H
generated by cgit on debian on lair
contact matthew@masot.net with questions or feedback