macros: Add test for node comparsion
This commit is contained in:
parent
6ecce2941e
commit
b49c75c82a
1 changed files with 39 additions and 0 deletions
39
tests/macros/tnodecompare.nim
Normal file
39
tests/macros/tnodecompare.nim
Normal file
|
|
@ -0,0 +1,39 @@
|
||||||
|
discard """
|
||||||
|
output: '''1
|
||||||
|
0
|
||||||
|
1
|
||||||
|
0
|
||||||
|
1
|
||||||
|
0
|
||||||
|
1
|
||||||
|
0'''
|
||||||
|
"""
|
||||||
|
|
||||||
|
import macros
|
||||||
|
|
||||||
|
macro test(a: typed, b: typed): expr =
|
||||||
|
newLit(a == b)
|
||||||
|
|
||||||
|
echo test(1, 1)
|
||||||
|
echo test(1, 2)
|
||||||
|
|
||||||
|
type
|
||||||
|
Obj = object of RootObj
|
||||||
|
Other = object of RootObj
|
||||||
|
|
||||||
|
echo test(Obj, Obj)
|
||||||
|
echo test(Obj, Other)
|
||||||
|
|
||||||
|
var a, b: int
|
||||||
|
|
||||||
|
echo test(a, a)
|
||||||
|
echo test(a, b)
|
||||||
|
|
||||||
|
macro test2: expr =
|
||||||
|
newLit(bindSym"Obj" == bindSym"Obj")
|
||||||
|
|
||||||
|
macro test3: expr =
|
||||||
|
newLit(bindSym"Obj" == bindSym"Other")
|
||||||
|
|
||||||
|
echo test2()
|
||||||
|
echo test3()
|
||||||
Loading…
Add table
Add a link
Reference in a new issue