19#ifndef __CVC4__OPTIONS__OPTIONS_H
20#define __CVC4__OPTIONS__OPTIONS_H
40class NodeManagerScope;
45 options::OptionsHolder* d_holder;
52 void assign(T, std::string option, std::string value,
SmtEngine* smt);
55 void assignBool(T, std::string option,
bool value,
SmtEngine* smt);
57 friend class NodeManager;
58 friend class NodeManagerScope;
78 void set(T,
const typename T::type&) {
81 T::you_are_trying_to_assign_to_a_read_only_option;
108 static void printUsage(
const std::string msg, std::ostream& out);
152#include "options/base_options.h"
Class representing an option-parsing exception such as badly-typed or missing arguments,...
static Options & current()
Get the current Options in effect.
const T::type & operator[](T) const
Get the value of the given option.
static void printUsage(const std::string msg, std::ostream &out)
Print overall command-line option usage message, prefixed by "msg"—which could be an error message ca...
static void printShortUsage(const std::string msg, std::ostream &out)
Print command-line option usage message for only the most-commonly used options.
std::vector< std::string > parseOptions(int argc, char *argv[])
Initialize the options based on the given command-line arguments.
std::string getDescription() const
Get a description of the command-line flags accepted by parseOptions.
bool wasSetByUser(T) const
Returns true iff the value of the given option was set by the user via a command-line option or SmtEn...
SExpr getOptions() const
Get the setting for all options.
Options(const Options &options)
static std::string suggestCommandLineOptions(const std::string &optionName)
Look up long command-line option names that bear some similarity to the given name.
void set(T, const typename T::type &)
Set the value of the given option.
static std::vector< std::string > suggestSmtOptions(const std::string &optionName)
Look up SMT option names that bear some similarity to the given name.
static void printLanguageHelp(std::ostream &out)
Print help for the –lang command line option.
Macros that should be defined everywhere during the building of the libraries and driver binary,...
Definition of input and output languages.
Options-related exceptions.
Simple representation of S-expressions.
#define CVC4_THREADLOCAL(__type...)