Nim/tests/typerel/t2plus.nim
Miran 749dbce4c6 Merge tests into a larger file (part 5 of ∞) (#9368)
* merge magics

* merge metatype tests

* merge method tests

* merge objects tests

* change `import future` to `import sugar`

Nim in Action tests are left with `import future`, to ensure compatibility.

* merge overload tests

* merge proc tests

* merge procvar tests

* merge range tests

* merge seq tests

* merge sets tests

* remove wrong assert from `tsets3`

* fix `jsTests`

* better fix
2018-10-16 10:50:10 +02:00

22 lines
387 B
Nim

discard """
output: "2.0"
"""
{.warning[TypelessParam]: off.}
import sugar
# bug #3329
proc foldRight[T,U](lst: seq[T], v: U, f: (T, U) -> U): U =
result = v
for x in lst:
result = f(x, result)
proc mean[T: SomeNumber](xs: seq[T]): T =
xs.foldRight(0.T, (xBAZ: auto, yBAZ: auto) => xBAZ + yBAZ) / T(xs.len)
when isMainModule:
let x = mean(@[1.float, 2, 3])
echo x