Files
Nim/tests/concepts/t5983.nim
Zahary Karadjov 07d50cedf0 Fix #5983
2017-06-20 11:29:42 +02:00

23 lines
422 B
Nim

discard """
output: "20.0 USD"
"""
import typetraits
const currencies = ["USD", "EUR"] # in real code 120 currencies
type USD* = distinct float # in real code 120 types generates using macro
type EUR* = distinct float
type CurrencyAmount = concept c
type t = c.type
const name = c.type.name
name in currencies
proc `$`(x: CurrencyAmount): string =
$float(x) & " " & x.name
let amount = 20.USD
echo amount