summary refs log tree commit diff stats
path: root/tests/tuples/tuple_subscript.nim
diff options
context:
space:
mode:
Diffstat (limited to 'tests/tuples/tuple_subscript.nim')
-rw-r--r--tests/tuples/tuple_subscript.nim40
1 files changed, 0 insertions, 40 deletions
diff --git a/tests/tuples/tuple_subscript.nim b/tests/tuples/tuple_subscript.nim
deleted file mode 100644
index 021793dc3..000000000
--- a/tests/tuples/tuple_subscript.nim
+++ /dev/null
@@ -1,40 +0,0 @@
-discard """
-  output: '''5
-5
-str2
-str2
-4'''
-"""
-
-proc`[]` (t: tuple, key: string): string =
-  for name, field in fieldPairs(t):
-    if name == key: 
-      return $field
-  return ""
-
-
-proc`[]` [A,B](t: tuple, key: string, op: (proc(x: A): B)): B =
-  for name, field in fieldPairs(t):
-    when field is A:
-      if name == key: 
-        return op(field)
-
-proc`[]=`[T](t: var tuple, key: string, val: T) =
-  for name, field in fieldPairs(t):
-    when field is T:
-      if name == key: 
-        field = val
-
-var tt = (a: 1, b: "str1")
-
-# test built in operator
-tt[0] = 5
-echo tt[0] 
-echo `[]`(tt, 0)
-
-
-# test overloaded operator
-tt["b"] = "str2"
-echo tt["b"] 
-echo `[]`(tt, "b")
-echo tt["b", proc(s: string) : int = s.len]
\ No newline at end of file