shithub: mc

ref: a94f75ac8f6a6365182191a55fad1e5723411457
dir: /test/genericimpl.myr/

View raw version
use std

trait gimpl @a =
	desc	: (x : @a -> byte[:])
;;

impl gimpl int =
	desc = {x
		-> "int"
	}
;;

impl gimpl byte[:] =
	desc = {x
		-> "string"
	}
;;

impl gimpl @a =
	desc = {x
		-> "@a"
	}
;;

impl gimpl @b[:] =
	desc = {x
		-> "@a[:]"
	}
;;

const main = {
	std.put("{} {} {} {}\n", desc(123), desc("foo"), desc('x'), desc([true][:]))
}