metaSMT 2
metaSMT/API/Assumption.hpp
Go to the documentation of this file.
00001 #pragma once
00002 
00003 #include "../Features.hpp"
00004 
00005 namespace metaSMT {
00006   struct assumption_cmd { typedef void result_type; };
00007   
00032   template <typename Context_, typename Expr_>
00033   void assumption( Context_ & ctx, Expr_ const & e )
00034   {
00035     BOOST_MPL_ASSERT_MSG(
00036         ( features::supports< Context_, assumption_cmd>::value),
00037         context_does_not_support_assumption_api,
00038     );
00039 
00040     ctx.command(assumption_cmd(),  evaluate(ctx, e) );
00041   }
00043 } /* metaSMT */
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines