diff options
Diffstat (limited to 'src/util/language.h')
-rw-r--r-- | src/util/language.h | 202 |
1 files changed, 0 insertions, 202 deletions
diff --git a/src/util/language.h b/src/util/language.h deleted file mode 100644 index 05574880f..000000000 --- a/src/util/language.h +++ /dev/null @@ -1,202 +0,0 @@ -/********************* */ -/*! \file language.h - ** \verbatim - ** Original author: Morgan Deters - ** Major contributors: none - ** Minor contributors (to current version): Francois Bobot, Andrew Reynolds - ** This file is part of the CVC4 project. - ** Copyright (c) 2009-2014 New York University and The University of Iowa - ** See the file COPYING in the top-level source directory for licensing - ** information.\endverbatim - ** - ** \brief Definition of input and output languages - ** - ** Definition of input and output languages. - **/ - -#include "cvc4_public.h" - -#ifndef __CVC4__LANGUAGE_H -#define __CVC4__LANGUAGE_H - -#include <sstream> -#include <string> - -#include "util/exception.h" -#include "options/option_exception.h" - -namespace CVC4 { -namespace language { - -namespace input { - -enum CVC4_PUBLIC Language { - // SPECIAL "NON-LANGUAGE" LANGUAGES HAVE ENUM VALUE < 0 - - /** Auto-detect the language */ - LANG_AUTO = -1, - - // COMMON INPUT AND OUTPUT LANGUAGES HAVE ENUM VALUES IN [0,9] - // AND SHOULD CORRESPOND IN PLACEMENT WITH OUTPUTLANGUAGE - // - // EVEN IF A LANGUAGE ISN'T CURRENTLY SUPPORTED AS AN INPUT OR - // OUTPUT LANGUAGE, IF IT IS "IN PRINCIPLE" A COMMON LANGUAGE, - // INCLUDE IT HERE - - /** The SMTLIB v1 input language */ - LANG_SMTLIB_V1 = 0, - /** The SMTLIB v2.0 input language */ - LANG_SMTLIB_V2_0, - /** The SMTLIB v2.5 input language */ - LANG_SMTLIB_V2_5, - /** Backward-compatibility for enumeration naming */ - LANG_SMTLIB_V2 = LANG_SMTLIB_V2_5, - /** The TPTP input language */ - LANG_TPTP, - /** The CVC4 input language */ - LANG_CVC4, - /** The Z3-str input language */ - LANG_Z3STR, - /** The SyGuS input language */ - LANG_SYGUS, - - // START OUTPUT-ONLY LANGUAGES AT ENUM VALUE 10 - // THESE ARE IN PRINCIPLE NOT POSSIBLE INPUT LANGUAGES - - /** LANG_MAX is > any valid InputLanguage id */ - LANG_MAX -};/* enum Language */ - -inline std::ostream& operator<<(std::ostream& out, Language lang) CVC4_PUBLIC; -inline std::ostream& operator<<(std::ostream& out, Language lang) { - switch(lang) { - case LANG_AUTO: - out << "LANG_AUTO"; - break; - case LANG_SMTLIB_V1: - out << "LANG_SMTLIB_V1"; - break; - case LANG_SMTLIB_V2_0: - out << "LANG_SMTLIB_V2_0"; - break; - case LANG_SMTLIB_V2_5: - out << "LANG_SMTLIB_V2_5"; - break; - case LANG_TPTP: - out << "LANG_TPTP"; - break; - case LANG_CVC4: - out << "LANG_CVC4"; - break; - case LANG_Z3STR: - out << "LANG_Z3STR"; - break; - case LANG_SYGUS: - out << "LANG_SYGUS"; - break; - default: - out << "undefined_input_language"; - } - return out; -} - -}/* CVC4::language::input namespace */ - -namespace output { - -enum CVC4_PUBLIC Language { - // SPECIAL "NON-LANGUAGE" LANGUAGES HAVE ENUM VALUE < 0 - - /** Match the output language to the input language */ - LANG_AUTO = -1, - - // COMMON INPUT AND OUTPUT LANGUAGES HAVE ENUM VALUES IN [0,9] - // AND SHOULD CORRESPOND IN PLACEMENT WITH INPUTLANGUAGE - // - // EVEN IF A LANGUAGE ISN'T CURRENTLY SUPPORTED AS AN INPUT OR - // OUTPUT LANGUAGE, IF IT IS "IN PRINCIPLE" A COMMON LANGUAGE, - // INCLUDE IT HERE - - /** The SMTLIB v1 output language */ - LANG_SMTLIB_V1 = input::LANG_SMTLIB_V1, - /** The SMTLIB v2.0 output language */ - LANG_SMTLIB_V2_0 = input::LANG_SMTLIB_V2_0, - /** The SMTLIB v2.5 output language */ - LANG_SMTLIB_V2_5 = input::LANG_SMTLIB_V2_5, - /** Backward-compatibility for enumeration naming */ - LANG_SMTLIB_V2 = input::LANG_SMTLIB_V2, - /** The TPTP output language */ - LANG_TPTP = input::LANG_TPTP, - /** The CVC4 output language */ - LANG_CVC4 = input::LANG_CVC4, - /** The Z3-str output language */ - LANG_Z3STR = input::LANG_Z3STR, - /** The sygus output language */ - LANG_SYGUS = input::LANG_SYGUS, - - // START OUTPUT-ONLY LANGUAGES AT ENUM VALUE 10 - // THESE ARE IN PRINCIPLE NOT POSSIBLE INPUT LANGUAGES - - /** The AST output language */ - LANG_AST = 10, - /** The CVC3-compatibility output language */ - LANG_CVC3, - - /** LANG_MAX is > any valid OutputLanguage id */ - LANG_MAX -};/* enum Language */ - -inline std::ostream& operator<<(std::ostream& out, Language lang) CVC4_PUBLIC; -inline std::ostream& operator<<(std::ostream& out, Language lang) { - switch(lang) { - case LANG_SMTLIB_V1: - out << "LANG_SMTLIB_V1"; - break; - case LANG_SMTLIB_V2_0: - out << "LANG_SMTLIB_V2_0"; - break; - case LANG_SMTLIB_V2_5: - out << "LANG_SMTLIB_V2_5"; - break; - case LANG_TPTP: - out << "LANG_TPTP"; - break; - case LANG_CVC4: - out << "LANG_CVC4"; - break; - case LANG_Z3STR: - out << "LANG_Z3STR"; - break; - case LANG_SYGUS: - out << "LANG_SYGUS"; - break; - case LANG_AST: - out << "LANG_AST"; - break; - case LANG_CVC3: - out << "LANG_CVC3"; - break; - default: - out << "undefined_output_language"; - } - return out; -} - -}/* CVC4::language::output namespace */ - -}/* CVC4::language namespace */ - -typedef language::input::Language InputLanguage; -typedef language::output::Language OutputLanguage; - -namespace language { - -InputLanguage toInputLanguage(OutputLanguage language) CVC4_PUBLIC; -OutputLanguage toOutputLanguage(InputLanguage language) CVC4_PUBLIC; -InputLanguage toInputLanguage(std::string language) CVC4_PUBLIC; -OutputLanguage toOutputLanguage(std::string language) CVC4_PUBLIC; - -}/* CVC4::language namespace */ -}/* CVC4 namespace */ - -#endif /* __CVC4__LANGUAGE_H */ |