mirror of
https://github.com/nim-lang/Nim.git
synced 2025-12-30 01:44:37 +00:00
40 lines
466 B
Nim
40 lines
466 B
Nim
discard """
|
|
output: '''0 -2 0
|
|
0 -2'''
|
|
"""
|
|
|
|
{.this: self.}
|
|
|
|
type
|
|
Foo {.partial.} = object
|
|
a, b: int
|
|
|
|
type
|
|
tupcomingfeatures.Foo = object
|
|
x: int
|
|
|
|
proc yay(self: Foo) =
|
|
echo a, " ", b, " ", x
|
|
|
|
proc footest[T](self: var Foo, a: T) =
|
|
b = 1+a
|
|
yay()
|
|
|
|
proc nongeneric(self: Foo) =
|
|
echo a, " ", b
|
|
|
|
var ff: Foo
|
|
footest(ff, -3)
|
|
ff.nongeneric
|
|
|
|
{.experimental.}
|
|
using
|
|
c: Foo
|
|
x, y: int
|
|
|
|
proc usesSig(c) =
|
|
echo "yummy"
|
|
|
|
proc foobar(c, y) =
|
|
echo "yay"
|