summaryrefslogtreecommitdiff
path: root/Examples/test-suite/director_comparison_operators.i
diff options
context:
space:
mode:
authorZackery Spytz <zspytz@gmail.com>2020-06-05 10:25:20 -0600
committerZackery Spytz <zspytz@gmail.com>2020-06-05 10:25:20 -0600
commit4e57c5536d165db868a6cb0ba7d1518ca5955f45 (patch)
tree06c96c9dedd1c9dd7b79793274821176430d205b /Examples/test-suite/director_comparison_operators.i
parent430a44e075bb26b2a1b4159846945969f495ad5b (diff)
downloadswig-4e57c5536d165db868a6cb0ba7d1518ca5955f45.tar.gz
Fix wrapping of virtual comparison operators with directors
Closes #1642.
Diffstat (limited to 'Examples/test-suite/director_comparison_operators.i')
-rw-r--r--Examples/test-suite/director_comparison_operators.i16
1 files changed, 16 insertions, 0 deletions
diff --git a/Examples/test-suite/director_comparison_operators.i b/Examples/test-suite/director_comparison_operators.i
new file mode 100644
index 000000000..9577847e1
--- /dev/null
+++ b/Examples/test-suite/director_comparison_operators.i
@@ -0,0 +1,16 @@
+%module(directors="1") director_comparison_operators
+
+%include "std_string.i"
+%feature("director");
+
+%inline %{
+class Foo {
+public:
+ virtual ~Foo() { }
+ virtual bool operator==(const Foo&) const = 0;
+ virtual bool operator>=(const Foo&) const = 0;
+ virtual bool operator<=(const Foo&) const = 0;
+ virtual bool operator!=(const Foo&) const = 0;
+ virtual std::string test(const char *foo="a=1,b=2") { return foo; }
+};
+%}