Exemple #1
0
int main() { 
 F1 f(7);

 TEST((x_ >>2*x_ +1)(10));

 triqs::clef::function<double(double,double)>  f2;
 f2(x_,y_) = x_ + y_;
 TEST(f2(2,3));
 f2(x_,y_) = x_ + 2*y_;
 TEST(f2(2,3));

 boost::function<double(double,double)> ff2(f2);
 TEST(ff2(2,3));

 triqs::clef::function<double(double)>  f1 ( f(x_) + 2*x_ ,x_);
 TEST(f1(3));

 triqs::clef::function<double(double,double)> g2;
 g2(x_,y_) = x_ - y_ + f2(x_,2*y_);
 TEST(g2(2,3));

 boost::function<double(double,double)> ff8 = make_function( x_ + y_, x_, y_); 
 TEST(ff8(2,3));
 
 boost::function<double(double)>  f3;
 f3 = x_>> f(x_) + 2*x_;
 TEST(f3(3));

 BOOST_AUTO (h ,  make_function( 2*x_ + y_ + 1, x_));
 //  is a lazy expression expression with placeholder y_, returning a function... 
 std::cout << tql::eval(h, y_=1) << std::endl; 
 TEST(tql::eval( h, y_=1) (10)); 
 TEST(h); 

}
Exemple #2
0
int main () {
  chk (!pv1a);
  chk (pv2a);
  chk (pv3a);
  chk (pv4a);
  chk (pv4);
  chk (pv5a);
  chk (pv5);
  chk (!pv6a);
  chk (fv7 ());
  chk (fv7a ());
  chk (fv8 ());
  chk (fv8a ());
  chk (!pv9a);
  chk (!&Wv10a);
  chk (!&Wv11a);
  chk (!&Wv12);
  chk (!&wv12);
  chk (!&wv13);
  chk (!&Wv14a);

  chk (!pf1a);
  chk (!pf1c);
  chk (pf2a);
  chk (pf3a);
  chk (pf4a);
  chk (pf4);
  chk (pf5a);
  chk (pf5);
  chk (!pf6a);
  chk (ff7 ());
  chk (ff7a ());
  chk (ff8 ());
  chk (ff8a ());
  chk (!pf9a);
  chk (!&Wf10a);
  chk (!&Wf11a);
  chk (!&Wf12);
  chk (!&wf12);
  chk (!&wf13);
  chk (!&Wf14a);

  exit (0);
}