diff options
Diffstat (limited to 'tests/cpp/tmember.nim')
-rw-r--r-- | tests/cpp/tmember.nim | 11 |
1 files changed, 11 insertions, 0 deletions
diff --git a/tests/cpp/tmember.nim b/tests/cpp/tmember.nim index 3f498c722..07bd5e0ee 100644 --- a/tests/cpp/tmember.nim +++ b/tests/cpp/tmember.nim @@ -7,6 +7,7 @@ false hello foo hello boo hello boo +FunctorSupport! destructing destructing ''' @@ -51,3 +52,13 @@ let booAsFoo = cast[FooPtr](newCpp[Boo]()) foo.salute() boo.salute() booAsFoo.salute() + +type + NimFunctor = object + discard +proc invoke(f: NimFunctor, n:int) {.member:"operator ()('2 #2)" .} = + echo "FunctorSupport!" + +{.experimental: "callOperator".} +proc `()`(f: NimFunctor, n:int) {.importcpp:"#(@)" .} +NimFunctor()(1) |