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

# · Swig · 55 lines · 37 code · 18 blank · 0 comment · 0 complexity · f58438d607a47ef8e7e8e464187738be MD5 · raw file

  1. %module li_std_string_extra
  2. %naturalvar A;
  3. %include <std_basic_string.i>
  4. %include <std_string.i>
  5. %inline %{
  6. struct A : std::string
  7. {
  8. A(const std::string& s) : std::string(s)
  9. {
  10. }
  11. };
  12. struct B
  13. {
  14. B(const std::string& s) : cname(0), name(s), a(s)
  15. {
  16. }
  17. char *cname;
  18. std::string name;
  19. A a;
  20. };
  21. const char* test_ccvalue(const char* x) {
  22. return x;
  23. }
  24. char* test_cvalue(char* x) {
  25. return x;
  26. }
  27. std::basic_string<char> test_value_basic1(std::basic_string<char> x) {
  28. return x;
  29. }
  30. std::basic_string<char,std::char_traits<char> > test_value_basic2(std::basic_string<char,std::char_traits<char> > x) {
  31. return x;
  32. }
  33. std::basic_string<char,std::char_traits<char>,std::allocator<char> > test_value_basic3(std::basic_string<char,std::char_traits<char>,std::allocator<char> > x) {
  34. return x;
  35. }
  36. %}
  37. %include "li_std_string.i"