/*********************                                                        */
/** options.h
 **
 ** Copyright 2011-2014  New York University and The University of Iowa,
 ** and as below.
 **
 ** This file automatically generated by:
 **
 **     /home/mdeters/cvc4/builds/x86_64-unknown-linux-gnu/production/../../../src/options/mkoptions /home/mdeters/cvc4/builds/x86_64-unknown-linux-gnu/production/../../../src/options/base_options_template.h ../theory/strings/options.h
 **
 ** for the CVC4 project.
 **/

/* THIS FILE IS AUTOMATICALLY GENERATED, DO NOT EDIT ! */
/* THIS FILE IS AUTOMATICALLY GENERATED, DO NOT EDIT ! */
/* THIS FILE IS AUTOMATICALLY GENERATED, DO NOT EDIT ! */
/* THIS FILE IS AUTOMATICALLY GENERATED, DO NOT EDIT ! */
/* THIS FILE IS AUTOMATICALLY GENERATED, DO NOT EDIT ! */
/* THIS FILE IS AUTOMATICALLY GENERATED, DO NOT EDIT ! */

/* THIS FILE IS AUTOMATICALLY GENERATED, DO NOT EDIT ! */
/* THIS FILE IS AUTOMATICALLY GENERATED, DO NOT EDIT ! */
/* THIS FILE IS AUTOMATICALLY GENERATED, DO NOT EDIT ! */
/* THIS FILE IS AUTOMATICALLY GENERATED, DO NOT EDIT ! */
/* THIS FILE IS AUTOMATICALLY GENERATED, DO NOT EDIT ! */
/* THIS FILE IS AUTOMATICALLY GENERATED, DO NOT EDIT ! */

/* Edit the template file instead.                     */

/*********************                                                        */
/*! \file base_options_template.h
 ** \verbatim
 ** Original author: Morgan Deters
 ** Major contributors: none
 ** Minor contributors (to current version): none
 ** 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 Contains code for handling command-line options.
 **
 ** Contains code for handling command-line options
 **/

#include <cvc4/cvc4_public.h>

#ifndef __CVC4__OPTIONS__STRINGS_H
#define __CVC4__OPTIONS__STRINGS_H

#include <cvc4/options/options.h>


#line 26 "/home/mdeters/cvc4/builds/x86_64-unknown-linux-gnu/production/../../../src/options/base_options_template.h"

#define CVC4_OPTIONS__STRINGS__FOR_OPTION_HOLDER \
  stringExp__option_t::type stringExp; \
  bool stringExp__setByUser__; \
  stringLB__option_t::type stringLB; \
  bool stringLB__setByUser__; \
  stringFMF__option_t::type stringFMF; \
  bool stringFMF__setByUser__; \
  stringEIT__option_t::type stringEIT; \
  bool stringEIT__setByUser__; \
  stringOpt1__option_t::type stringOpt1; \
  bool stringOpt1__setByUser__; \
  stringOpt2__option_t::type stringOpt2; \
  bool stringOpt2__setByUser__; \
  stringCharCardinality__option_t::type stringCharCardinality; \
  bool stringCharCardinality__setByUser__;

#line 30 "/home/mdeters/cvc4/builds/x86_64-unknown-linux-gnu/production/../../../src/options/base_options_template.h"

namespace CVC4 {

namespace options {


#line 8 "/home/mdeters/cvc4/builds/x86_64-unknown-linux-gnu/production/../../../src/options/../theory/strings/options"
extern struct CVC4_PUBLIC stringExp__option_t { typedef bool type; type operator()() const; bool wasSetByUser() const; void set(const type& v); } stringExp CVC4_PUBLIC;
#line 11 "/home/mdeters/cvc4/builds/x86_64-unknown-linux-gnu/production/../../../src/options/../theory/strings/options"
extern struct CVC4_PUBLIC stringLB__option_t { typedef unsigned type; type operator()() const; bool wasSetByUser() const; } stringLB CVC4_PUBLIC;
#line 14 "/home/mdeters/cvc4/builds/x86_64-unknown-linux-gnu/production/../../../src/options/../theory/strings/options"
extern struct CVC4_PUBLIC stringFMF__option_t { typedef bool type; type operator()() const; bool wasSetByUser() const; void set(const type& v); } stringFMF CVC4_PUBLIC;
#line 17 "/home/mdeters/cvc4/builds/x86_64-unknown-linux-gnu/production/../../../src/options/../theory/strings/options"
extern struct CVC4_PUBLIC stringEIT__option_t { typedef bool type; type operator()() const; bool wasSetByUser() const; } stringEIT CVC4_PUBLIC;
#line 20 "/home/mdeters/cvc4/builds/x86_64-unknown-linux-gnu/production/../../../src/options/../theory/strings/options"
extern struct CVC4_PUBLIC stringOpt1__option_t { typedef bool type; type operator()() const; bool wasSetByUser() const; } stringOpt1 CVC4_PUBLIC;
#line 23 "/home/mdeters/cvc4/builds/x86_64-unknown-linux-gnu/production/../../../src/options/../theory/strings/options"
extern struct CVC4_PUBLIC stringOpt2__option_t { typedef bool type; type operator()() const; bool wasSetByUser() const; } stringOpt2 CVC4_PUBLIC;
#line 26 "/home/mdeters/cvc4/builds/x86_64-unknown-linux-gnu/production/../../../src/options/../theory/strings/options"
extern struct CVC4_PUBLIC stringCharCardinality__option_t { typedef int16_t type; type operator()() const; bool wasSetByUser() const; } stringCharCardinality CVC4_PUBLIC;

#line 38 "/home/mdeters/cvc4/builds/x86_64-unknown-linux-gnu/production/../../../src/options/base_options_template.h"

}/* CVC4::options namespace */


#line 8 "/home/mdeters/cvc4/builds/x86_64-unknown-linux-gnu/production/../../../src/options/../theory/strings/options"
template <> void Options::set(options::stringExp__option_t, const options::stringExp__option_t::type& x);
#line 8 "/home/mdeters/cvc4/builds/x86_64-unknown-linux-gnu/production/../../../src/options/../theory/strings/options"
template <> const options::stringExp__option_t::type& Options::operator[](options::stringExp__option_t) const;
#line 8 "/home/mdeters/cvc4/builds/x86_64-unknown-linux-gnu/production/../../../src/options/../theory/strings/options"
template <> bool Options::wasSetByUser(options::stringExp__option_t) const;
#line 8 "/home/mdeters/cvc4/builds/x86_64-unknown-linux-gnu/production/../../../src/options/../theory/strings/options"
template <> void Options::assignBool(options::stringExp__option_t, std::string option, bool value, SmtEngine* smt);
#line 11 "/home/mdeters/cvc4/builds/x86_64-unknown-linux-gnu/production/../../../src/options/../theory/strings/options"
template <> const options::stringLB__option_t::type& Options::operator[](options::stringLB__option_t) const;
#line 11 "/home/mdeters/cvc4/builds/x86_64-unknown-linux-gnu/production/../../../src/options/../theory/strings/options"
template <> bool Options::wasSetByUser(options::stringLB__option_t) const;
#line 11 "/home/mdeters/cvc4/builds/x86_64-unknown-linux-gnu/production/../../../src/options/../theory/strings/options"
template <> void Options::assign(options::stringLB__option_t, std::string option, std::string value, SmtEngine* smt);
#line 14 "/home/mdeters/cvc4/builds/x86_64-unknown-linux-gnu/production/../../../src/options/../theory/strings/options"
template <> void Options::set(options::stringFMF__option_t, const options::stringFMF__option_t::type& x);
#line 14 "/home/mdeters/cvc4/builds/x86_64-unknown-linux-gnu/production/../../../src/options/../theory/strings/options"
template <> const options::stringFMF__option_t::type& Options::operator[](options::stringFMF__option_t) const;
#line 14 "/home/mdeters/cvc4/builds/x86_64-unknown-linux-gnu/production/../../../src/options/../theory/strings/options"
template <> bool Options::wasSetByUser(options::stringFMF__option_t) const;
#line 14 "/home/mdeters/cvc4/builds/x86_64-unknown-linux-gnu/production/../../../src/options/../theory/strings/options"
template <> void Options::assignBool(options::stringFMF__option_t, std::string option, bool value, SmtEngine* smt);
#line 17 "/home/mdeters/cvc4/builds/x86_64-unknown-linux-gnu/production/../../../src/options/../theory/strings/options"
template <> const options::stringEIT__option_t::type& Options::operator[](options::stringEIT__option_t) const;
#line 17 "/home/mdeters/cvc4/builds/x86_64-unknown-linux-gnu/production/../../../src/options/../theory/strings/options"
template <> bool Options::wasSetByUser(options::stringEIT__option_t) const;
#line 17 "/home/mdeters/cvc4/builds/x86_64-unknown-linux-gnu/production/../../../src/options/../theory/strings/options"
template <> void Options::assignBool(options::stringEIT__option_t, std::string option, bool value, SmtEngine* smt);
#line 20 "/home/mdeters/cvc4/builds/x86_64-unknown-linux-gnu/production/../../../src/options/../theory/strings/options"
template <> const options::stringOpt1__option_t::type& Options::operator[](options::stringOpt1__option_t) const;
#line 20 "/home/mdeters/cvc4/builds/x86_64-unknown-linux-gnu/production/../../../src/options/../theory/strings/options"
template <> bool Options::wasSetByUser(options::stringOpt1__option_t) const;
#line 20 "/home/mdeters/cvc4/builds/x86_64-unknown-linux-gnu/production/../../../src/options/../theory/strings/options"
template <> void Options::assignBool(options::stringOpt1__option_t, std::string option, bool value, SmtEngine* smt);
#line 23 "/home/mdeters/cvc4/builds/x86_64-unknown-linux-gnu/production/../../../src/options/../theory/strings/options"
template <> const options::stringOpt2__option_t::type& Options::operator[](options::stringOpt2__option_t) const;
#line 23 "/home/mdeters/cvc4/builds/x86_64-unknown-linux-gnu/production/../../../src/options/../theory/strings/options"
template <> bool Options::wasSetByUser(options::stringOpt2__option_t) const;
#line 23 "/home/mdeters/cvc4/builds/x86_64-unknown-linux-gnu/production/../../../src/options/../theory/strings/options"
template <> void Options::assignBool(options::stringOpt2__option_t, std::string option, bool value, SmtEngine* smt);
#line 26 "/home/mdeters/cvc4/builds/x86_64-unknown-linux-gnu/production/../../../src/options/../theory/strings/options"
template <> const options::stringCharCardinality__option_t::type& Options::operator[](options::stringCharCardinality__option_t) const;
#line 26 "/home/mdeters/cvc4/builds/x86_64-unknown-linux-gnu/production/../../../src/options/../theory/strings/options"
template <> bool Options::wasSetByUser(options::stringCharCardinality__option_t) const;
#line 26 "/home/mdeters/cvc4/builds/x86_64-unknown-linux-gnu/production/../../../src/options/../theory/strings/options"
template <> void Options::assign(options::stringCharCardinality__option_t, std::string option, std::string value, SmtEngine* smt);

#line 44 "/home/mdeters/cvc4/builds/x86_64-unknown-linux-gnu/production/../../../src/options/base_options_template.h"

namespace options {


#line 8 "/home/mdeters/cvc4/builds/x86_64-unknown-linux-gnu/production/../../../src/options/../theory/strings/options"
inline stringExp__option_t::type stringExp__option_t::operator()() const { return Options::current()[*this]; }
#line 8 "/home/mdeters/cvc4/builds/x86_64-unknown-linux-gnu/production/../../../src/options/../theory/strings/options"
inline bool stringExp__option_t::wasSetByUser() const { return Options::current().wasSetByUser(*this); }
#line 8 "/home/mdeters/cvc4/builds/x86_64-unknown-linux-gnu/production/../../../src/options/../theory/strings/options"
inline void stringExp__option_t::set(const stringExp__option_t::type& v) { Options::current().set(*this, v); }

#line 11 "/home/mdeters/cvc4/builds/x86_64-unknown-linux-gnu/production/../../../src/options/../theory/strings/options"
inline stringLB__option_t::type stringLB__option_t::operator()() const { return Options::current()[*this]; }
#line 11 "/home/mdeters/cvc4/builds/x86_64-unknown-linux-gnu/production/../../../src/options/../theory/strings/options"
inline bool stringLB__option_t::wasSetByUser() const { return Options::current().wasSetByUser(*this); }

#line 14 "/home/mdeters/cvc4/builds/x86_64-unknown-linux-gnu/production/../../../src/options/../theory/strings/options"
inline stringFMF__option_t::type stringFMF__option_t::operator()() const { return Options::current()[*this]; }
#line 14 "/home/mdeters/cvc4/builds/x86_64-unknown-linux-gnu/production/../../../src/options/../theory/strings/options"
inline bool stringFMF__option_t::wasSetByUser() const { return Options::current().wasSetByUser(*this); }
#line 14 "/home/mdeters/cvc4/builds/x86_64-unknown-linux-gnu/production/../../../src/options/../theory/strings/options"
inline void stringFMF__option_t::set(const stringFMF__option_t::type& v) { Options::current().set(*this, v); }

#line 17 "/home/mdeters/cvc4/builds/x86_64-unknown-linux-gnu/production/../../../src/options/../theory/strings/options"
inline stringEIT__option_t::type stringEIT__option_t::operator()() const { return Options::current()[*this]; }
#line 17 "/home/mdeters/cvc4/builds/x86_64-unknown-linux-gnu/production/../../../src/options/../theory/strings/options"
inline bool stringEIT__option_t::wasSetByUser() const { return Options::current().wasSetByUser(*this); }

#line 20 "/home/mdeters/cvc4/builds/x86_64-unknown-linux-gnu/production/../../../src/options/../theory/strings/options"
inline stringOpt1__option_t::type stringOpt1__option_t::operator()() const { return Options::current()[*this]; }
#line 20 "/home/mdeters/cvc4/builds/x86_64-unknown-linux-gnu/production/../../../src/options/../theory/strings/options"
inline bool stringOpt1__option_t::wasSetByUser() const { return Options::current().wasSetByUser(*this); }

#line 23 "/home/mdeters/cvc4/builds/x86_64-unknown-linux-gnu/production/../../../src/options/../theory/strings/options"
inline stringOpt2__option_t::type stringOpt2__option_t::operator()() const { return Options::current()[*this]; }
#line 23 "/home/mdeters/cvc4/builds/x86_64-unknown-linux-gnu/production/../../../src/options/../theory/strings/options"
inline bool stringOpt2__option_t::wasSetByUser() const { return Options::current().wasSetByUser(*this); }

#line 26 "/home/mdeters/cvc4/builds/x86_64-unknown-linux-gnu/production/../../../src/options/../theory/strings/options"
inline stringCharCardinality__option_t::type stringCharCardinality__option_t::operator()() const { return Options::current()[*this]; }
#line 26 "/home/mdeters/cvc4/builds/x86_64-unknown-linux-gnu/production/../../../src/options/../theory/strings/options"
inline bool stringCharCardinality__option_t::wasSetByUser() const { return Options::current().wasSetByUser(*this); }

#line 50 "/home/mdeters/cvc4/builds/x86_64-unknown-linux-gnu/production/../../../src/options/base_options_template.h"

}/* CVC4::options namespace */

}/* CVC4 namespace */

#endif /* __CVC4__OPTIONS__STRINGS_H */
