PageRenderTime 41ms CodeModel.GetById 18ms RepoModel.GetById 0ms app.codeStats 0ms

/trunk/Examples/test-suite/template_base_template.i

#
Swig | 41 lines | 29 code | 12 blank | 0 comment | 0 complexity | b4e5af4ab2ab9a385137b10100facc53 MD5 | raw file
Possible License(s): LGPL-2.1, Cube, GPL-3.0, 0BSD, GPL-2.0
  1. %module template_base_template
  2. %warnfilter(SWIGWARN_RUBY_WRONG_NAME) traits<double, double>; /* Ruby, wrong class name */
  3. %warnfilter(SWIGWARN_PARSE_EXPLICIT_TEMPLATE);
  4. %inline %{
  5. template <class ArgType, class ResType>
  6. struct traits
  7. {
  8. typedef ArgType arg_type;
  9. typedef ResType res_type;
  10. };
  11. template <class ArgType, class ResType>
  12. struct Funktion
  13. {
  14. };
  15. // Egad!
  16. template <class AF, class AG>
  17. struct Klass
  18. : Funktion<typename traits<AF, AG>::arg_type,
  19. typename traits<AF, AG>::res_type>
  20. {
  21. };
  22. %}
  23. %{
  24. template struct Funktion <double, double>;
  25. template struct Klass <double, double>;
  26. %}
  27. %template(traits_dd) traits <double, double>;
  28. %template(Funktion_dd) Funktion <double, double>;
  29. %template(Klass_dd) Klass <double, double>;