summary refs log tree commit diff stats
path: root/tests/method/tvarious.nim
diff options
context:
space:
mode:
Diffstat (limited to 'tests/method/tvarious.nim')
-rw-r--r--tests/method/tvarious.nim83
1 files changed, 0 insertions, 83 deletions
diff --git a/tests/method/tvarious.nim b/tests/method/tvarious.nim
deleted file mode 100644
index fd022717b..000000000
--- a/tests/method/tvarious.nim
+++ /dev/null
@@ -1,83 +0,0 @@
-discard """
-  output: '''
-do nothing
-HELLO WORLD!
-'''
-"""
-
-
-# tmethods1
-method somethin(obj: RootObj) {.base.} =
-  echo "do nothing"
-
-type
-  TNode* = object {.inheritable.}
-  PNode* = ref TNode
-
-  PNodeFoo* = ref object of TNode
-
-  TSomethingElse = object
-  PSomethingElse = ref TSomethingElse
-
-method foo(a: PNode, b: PSomethingElse) {.base.} = discard
-method foo(a: PNodeFoo, b: PSomethingElse) = discard
-
-var o: RootObj
-o.somethin()
-
-
-
-# tmproto
-type
-  Obj1 = ref object {.inheritable.}
-  Obj2 = ref object of Obj1
-
-method beta(x: Obj1): int {.base.}
-
-proc delta(x: Obj2): int =
-  beta(x)
-
-method beta(x: Obj2): int
-
-proc alpha(x: Obj1): int =
-  beta(x)
-
-method beta(x: Obj1): int = 1
-method beta(x: Obj2): int = 2
-
-proc gamma(x: Obj1): int =
-  beta(x)
-
-doAssert alpha(Obj1()) == 1
-doAssert gamma(Obj1()) == 1
-doAssert alpha(Obj2()) == 2
-doAssert gamma(Obj2()) == 2
-doAssert delta(Obj2()) == 2
-
-
-
-# tsimmeth
-import strutils
-var x = "hello world!".toLowerAscii.toUpperAscii
-x.echo()
-
-
-
-# trecmeth
-# Note: We only compile this to verify that code generation
-# for recursive methods works, no code is being executed
-type Obj = ref object of RootObj
-
-# Mutual recursion
-method alpha(x: Obj) {.base.}
-method beta(x: Obj) {.base.}
-
-method alpha(x: Obj) =
-  beta(x)
-
-method beta(x: Obj) =
-  alpha(x)
-
-# Simple recursion
-method gamma(x: Obj) {.base.} =
-  gamma(x)