summaryrefslogtreecommitdiff
path: root/libs/python/pyste/tests/operators.h
diff options
context:
space:
mode:
authorLorry Tar Creator <lorry-tar-importer@baserock.org>2013-06-25 22:59:01 +0000
committer <>2013-09-27 11:49:28 +0000
commit8c4528713d907ee2cfd3bfcbbad272c749867f84 (patch)
treec09e2ce80f47b90c85cc720f5139089ad9c8cfff /libs/python/pyste/tests/operators.h
downloadboost-tarball-baserock/morph.tar.gz
Imported from /home/lorry/working-area/delta_boost-tarball/boost_1_54_0.tar.bz2.boost_1_54_0baserock/morph
Diffstat (limited to 'libs/python/pyste/tests/operators.h')
-rw-r--r--libs/python/pyste/tests/operators.h52
1 files changed, 52 insertions, 0 deletions
diff --git a/libs/python/pyste/tests/operators.h b/libs/python/pyste/tests/operators.h
new file mode 100644
index 000000000..5d3944216
--- /dev/null
+++ b/libs/python/pyste/tests/operators.h
@@ -0,0 +1,52 @@
+/* Copyright Bruno da Silva de Oliveira 2003. Use, modification and
+ distribution is subject to the Boost Software License, Version 1.0.
+ (See accompanying file LICENSE_1_0.txt or copy at
+ http://www.boost.org/LICENSE_1_0.txt)
+ */
+#ifndef OPERATORS_H
+#define OPERATORS_H
+
+
+namespace operators {
+
+struct C
+{
+ static double x;
+ double value;
+
+ const C operator+(const C other) const
+ {
+ C c;
+ c.value = value + other.value;
+ return c;
+ }
+ operator int() const
+ {
+ return (int)value;
+ }
+
+ double operator()()
+ {
+ return C::x;
+ }
+
+ double operator()(double other)
+ {
+ return C::x + other;
+ }
+
+ operator const char*() { return "C"; }
+};
+
+inline const C operator*(const C& lhs, const C& rhs)
+{
+ C c;
+ c.value = lhs.value * rhs.value;
+ return c;
+}
+
+
+}
+
+
+#endif