language-c.hpp
Go to the documentation of this file.
1 /*
2  * Copyright 2021 INRIA
3  */
4 #ifndef __pycppad_codegen_lang_c_language_c_hpp__
5 #define __pycppad_codegen_lang_c_language_c_hpp__
6 
7 #include <cppad/cg/lang/c/language_c.hpp>
8 
9 namespace pycppad
10 {
11  namespace codegen
12  {
13  template<typename Scalar>
15  : public bp::def_visitor< LanguageCVisitor<Scalar> >
16  {
17  public:
18 
19  typedef ::CppAD::cg::LanguageC<Scalar> LanguageC;
20 
21  template<class PyClass>
22  void visit(PyClass& cl) const
23  {
24  cl
25  .def(bp::init<std::string, size_t>(bp::args("self","varTypeName","spaces")))
26  ;
27  }
28 
29  public:
30 
31  static void expose(const std::string & class_name = "LanguageC")
32  {
33  bp::class_<LanguageC,
34  boost::noncopyable>(class_name.c_str(),
35  "C language source code generator",
36  bp::no_init)
38  }
39  };
40 
41  }
42 }
43 #endif //#ifndef __pycppad_codegen_lang_c_language_c_hpp__
Definition: language-c.hpp:16
static void expose(const std::string &class_name="LanguageC")
Definition: language-c.hpp:31
void visit(PyClass &cl) const
Definition: language-c.hpp:22
::CppAD::cg::LanguageC< Scalar > LanguageC
Definition: language-c.hpp:19
Definition: ad.hpp:15