shithub: mc

Download patch

ref: 53f1619831b9695c7b28a4949c7a2f6c177a8392
parent: 6095d59f1bcd58c59ad3ac4271172c7037c6bda0
author: Ori Bernstein <[email protected]>
date: Mon Jul 30 21:39:01 EDT 2012

Add fmt.myr

--- /dev/null
+++ b/fmt.myr
@@ -1,0 +1,34 @@
+use "die.use"
+use "sys.use"
+use "types.use"
+use "str.use"
+
+pkg std =
+	const bfmt	: (buf : byte[,], fmt : byte[,], args:... -> size)
+	const fmt	: (fmt : byte[,], args:... -> size)
+;;
+
+const fmt = {fmt, args
+	var c
+	var s
+	var n
+
+	n = 0
+	for (c, s) = striter(fmt); s.len; (c, s) = striter(s)
+		if c == '%'
+			(c, s) = striter(s)
+			match c
+			's':
+				write(1, "str")
+				;;
+			'd':
+				write(1, "int")
+				;;
+			'p':
+				write(1, "ptr")
+				;;
+			;;
+		;;
+	;;
+	-> n
+}