shithub: mc

ref: 937e5e744d303c722c7782209f94c706b8f4c22a
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][:]))
}