diff options
Diffstat (limited to 'tests/run/tinterf.nim')
-rw-r--r-- | tests/run/tinterf.nim | 20 |
1 files changed, 20 insertions, 0 deletions
diff --git a/tests/run/tinterf.nim b/tests/run/tinterf.nim new file mode 100644 index 000000000..b082b1d3f --- /dev/null +++ b/tests/run/tinterf.nim @@ -0,0 +1,20 @@ +discard """ + output: '''56''' +""" + +type + ITest = tuple[ + setter: proc(v: int) {.closure.}, + getter: proc(): int {.closure.}] + +proc getInterf(): ITest = + var shared: int + + return (setter: proc (x: int) = shared = x, + getter: proc (): int = return shared) + +var i = getInterf() +i.setter(56) + +echo i.getter() + |