19 #ifndef __CVC4__PARSER__INPUT_H
20 #define __CVC4__PARSER__INPUT_H
55 bool d_fileIsTemporary;
62 d_fileIsTemporary(isTemporary) {
69 if( d_fileIsTemporary ) {
70 remove(d_name.c_str());
75 const std::string getName()
const;
109 const std::string& filename,
110 bool useMmap =
false)
124 const std::
string& name,
125 bool lineBuffered = false)
126 throw (InputStreamException);
135 const std::
string& input,
136 const std::
string& name)
137 throw (InputStreamException);
144 virtual std::
string getUnparsedText() = 0;
150 const std::
string getInputStreamName(){
151 return getInputStream()->getName();
171 virtual Command* parseCommand() = 0;
176 virtual void warning(
const std::string& msg) = 0;
181 virtual void parseError(
const std::string& msg,
bool eofException =
false)
190 virtual
Expr parseExpr() = 0;
193 virtual
void setParser(
Parser& parser) = 0;
Class encapsulating CVC4 expressions and methods for constructing new expressions.
Exception class for parse errors.
This is CVC4 release version For build and installation please see the INSTALL file included with this distribution This first official release of CVC4 is the result of more than three years of efforts by researchers at New York University and The University of Iowa The project leaders are Clark please refer to the AUTHORS file in the source distribution CVC4 is a tool for determining the satisfiability of a first order formula modulo a first order CVC CVC3 but does not directly incorporate code from any previous version CVC4 is intended to be an open and extensible SMT engine It can be used as a stand alone tool or as a library It has been designed to increase the performance and reduce the memory overhead of its predecessors It is written entirely in C and is released under a free software see the INSTALL file that comes with this distribution We recommend that you visit our CVC4 tutorials online please write to the cvc users cs nyu edu mailing list *if you need to report a bug with CVC4
Definition of input and output languages.
A builder for input language parsers.
Macros that should be defined everywhere during the building of the libraries and driver binary...
This class encapsulates all of the state of a parser, including the name of the file, line number and column information, and in-scope declarations.