mirror of
https://github.com/nim-lang/Nim.git
synced 2025-12-28 17:04:41 +00:00
51 lines
772 B
Nim
51 lines
772 B
Nim
type TFoo{.exportc.} = object
|
|
x:int
|
|
|
|
var s{.exportc.}: seq[TFoo] = @[]
|
|
|
|
s.add TFoo(x: 42)
|
|
|
|
echo s[0].x
|
|
|
|
|
|
# bug #563
|
|
type
|
|
Foo =
|
|
object {.inheritable.}
|
|
x: int
|
|
|
|
Bar =
|
|
object of Foo
|
|
y: int
|
|
|
|
var a = Bar(y: 100, x: 200) # works
|
|
var b = Bar(x: 100, y: 200) # used to fail
|
|
|
|
# bug 1275
|
|
|
|
type
|
|
Graphic = object of RootObj
|
|
case kind: range[0..1]
|
|
of 0:
|
|
radius: float
|
|
of 1:
|
|
size: tuple[w, h: float]
|
|
|
|
var d = Graphic(kind: 1, size: (12.9, 6.9))
|
|
|
|
# bug #1274
|
|
type
|
|
K = enum Koo, Kar
|
|
Graphic2 = object of RootObj
|
|
case kind: K
|
|
of Koo:
|
|
radius: float
|
|
of Kar:
|
|
size: tuple[w, h: float]
|
|
|
|
type NamedGraphic = object of Graphic2
|
|
name: string
|
|
|
|
var ngr = NamedGraphic(kind: Koo, radius: 6.9, name: "Foo")
|
|
echo ngr.name
|