metaSMT git
Classes | Public Types | Public Member Functions

metaSMT::GraphSolver_Context< SolverContext > Struct Template Reference

#include <GraphSolver_Context.hpp>

List of all members.

Classes

struct  Cmd_Caller0
struct  Cmd_Caller1
struct  create_x_result

Public Types

typedef SolverContext solver_type
typedef SMT_Expression result_type
typedef SolverContext::result_type solver_result

Public Member Functions

 GraphSolver_Context ()
 GraphSolver_Context (const GraphSolver_Context &ctx)
void assertion (SMT_Expression e)
void assumption (SMT_Expression e)
template<typename CMD , typename Arg >
boost::enable_if
< boost::is_same< typename
CMD::result_type, void >
>::type 
command (CMD const &cmd, Arg arg)
template<typename CMD >
boost::enable_if
< boost::is_same< typename
CMD::result_type, void >
>::type 
command (CMD const &cmd)
template<typename CMD >
CMD::result_type command (CMD const &cmd)
void sync ()
bool solve ()
void write_smt (std::ostream &os)
void write_smt (std::ostream &os, result_type r)
result_wrapper read_value (SMT_Expression var)
template<typename Expr >
SMT_Expression evaluate (Expr e)
SMT_Expression evaluate (result_type r)

Detailed Description

template<typename SolverContext>
struct metaSMT::GraphSolver_Context< SolverContext >

GraphSolver_Context takes a SolverType. All constraints are first forwarded to a Graph_Context, for deduplication and later handed to solver.

Definition at line 92 of file GraphSolver_Context.hpp.


Member Typedef Documentation

template<typename SolverContext >
typedef SMT_Expression metaSMT::GraphSolver_Context< SolverContext >::result_type

Definition at line 114 of file GraphSolver_Context.hpp.

template<typename SolverContext >
typedef SolverContext::result_type metaSMT::GraphSolver_Context< SolverContext >::solver_result

Definition at line 115 of file GraphSolver_Context.hpp.

template<typename SolverContext >
typedef SolverContext metaSMT::GraphSolver_Context< SolverContext >::solver_type

Definition at line 113 of file GraphSolver_Context.hpp.


Constructor & Destructor Documentation

template<typename SolverContext >
metaSMT::GraphSolver_Context< SolverContext >::GraphSolver_Context ( ) [inline]

Definition at line 94 of file GraphSolver_Context.hpp.

template<typename SolverContext >
metaSMT::GraphSolver_Context< SolverContext >::GraphSolver_Context ( const GraphSolver_Context< SolverContext > &  ctx) [inline]

Definition at line 98 of file GraphSolver_Context.hpp.


Member Function Documentation

template<typename SolverContext >
void metaSMT::GraphSolver_Context< SolverContext >::assertion ( SMT_Expression  e) [inline]

Definition at line 117 of file GraphSolver_Context.hpp.

template<typename SolverContext >
void metaSMT::GraphSolver_Context< SolverContext >::assumption ( SMT_Expression  e) [inline]

Definition at line 128 of file GraphSolver_Context.hpp.

template<typename SolverContext >
template<typename CMD >
boost::enable_if< boost::is_same< typename CMD::result_type, void> >::type metaSMT::GraphSolver_Context< SolverContext >::command ( CMD const &  cmd) [inline]

Definition at line 166 of file GraphSolver_Context.hpp.

template<typename SolverContext >
template<typename CMD >
CMD::result_type metaSMT::GraphSolver_Context< SolverContext >::command ( CMD const &  cmd) [inline]

Definition at line 174 of file GraphSolver_Context.hpp.

template<typename SolverContext >
template<typename CMD , typename Arg >
boost::enable_if< boost::is_same< typename CMD::result_type, void> >::type metaSMT::GraphSolver_Context< SolverContext >::command ( CMD const &  cmd,
Arg  arg 
) [inline]

Definition at line 157 of file GraphSolver_Context.hpp.

template<typename SolverContext >
template<typename Expr >
SMT_Expression metaSMT::GraphSolver_Context< SolverContext >::evaluate ( Expr  e) [inline]

Definition at line 241 of file GraphSolver_Context.hpp.

template<typename SolverContext >
SMT_Expression metaSMT::GraphSolver_Context< SolverContext >::evaluate ( result_type  r) [inline]

Definition at line 243 of file GraphSolver_Context.hpp.

template<typename SolverContext >
result_wrapper metaSMT::GraphSolver_Context< SolverContext >::read_value ( SMT_Expression  var) [inline]

Definition at line 228 of file GraphSolver_Context.hpp.

template<typename SolverContext >
bool metaSMT::GraphSolver_Context< SolverContext >::solve ( ) [inline]

Definition at line 188 of file GraphSolver_Context.hpp.

template<typename SolverContext >
void metaSMT::GraphSolver_Context< SolverContext >::sync ( ) [inline]

Definition at line 181 of file GraphSolver_Context.hpp.

template<typename SolverContext >
void metaSMT::GraphSolver_Context< SolverContext >::write_smt ( std::ostream &  os) [inline]

Definition at line 200 of file GraphSolver_Context.hpp.

template<typename SolverContext >
void metaSMT::GraphSolver_Context< SolverContext >::write_smt ( std::ostream &  os,
result_type  r 
) [inline]

Definition at line 209 of file GraphSolver_Context.hpp.


The documentation for this struct was generated from the following file:
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines