/tags/rel-1.3.35/Examples/test-suite/template_extend1.i

# · Swig · 26 lines · 20 code · 6 blank · 0 comment · 0 complexity · e812e6f526bcfabba7aed2d224b23c00 MD5 · raw file

  1. // One of Luigi's evil tests
  2. %module template_extend1
  3. %warnfilter(SWIGWARN_RUBY_WRONG_NAME) Baz<long>; // Ruby, wrong class name
  4. %warnfilter(SWIGWARN_RUBY_WRONG_NAME) Baz<double>; // Ruby, wrong class name
  5. %{
  6. namespace Quux {
  7. template <class T> class Baz {};
  8. }
  9. %}
  10. namespace Quux {
  11. template <class T> class Baz {};
  12. %template (lBaz) Baz<long>;
  13. %extend Baz<long> {
  14. char *foo(void) { return (char *) "lBaz::foo"; }
  15. }
  16. %template (dBaz) Baz<double>;
  17. %extend Baz<double> {
  18. char *foo(void) { return (char *) "dBaz::foo"; }
  19. }
  20. }