shithub: mc

ref: 58c27b2d8d021d485feb47aeb9744c7ae27d9112
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][:]))
}