Files
wren/builtin/io.wren
T

102 lines
2.4 KiB
Plaintext
Raw Normal View History

2014-02-04 08:44:59 -08:00
class IO {
2014-04-19 11:44:51 -07:00
static print {
2015-07-18 14:09:00 -07:00
writeString_("\n")
2014-04-19 11:44:51 -07:00
}
2014-02-04 08:44:59 -08:00
static print(obj) {
2015-07-18 14:09:00 -07:00
writeObject_(obj)
writeString_("\n")
2014-02-04 08:44:59 -08:00
return obj
}
2014-04-09 07:48:35 -07:00
static print(a1, a2) {
2015-07-18 14:09:00 -07:00
printAll([a1, a2])
2014-04-09 07:48:35 -07:00
}
static print(a1, a2, a3) {
2015-07-18 14:09:00 -07:00
printAll([a1, a2, a3])
2014-04-09 07:48:35 -07:00
}
static print(a1, a2, a3, a4) {
2015-07-18 14:09:00 -07:00
printAll([a1, a2, a3, a4])
2014-04-09 07:48:35 -07:00
}
static print(a1, a2, a3, a4, a5) {
2015-07-18 14:09:00 -07:00
printAll([a1, a2, a3, a4, a5])
2014-04-09 07:48:35 -07:00
}
static print(a1, a2, a3, a4, a5, a6) {
2015-07-18 14:09:00 -07:00
printAll([a1, a2, a3, a4, a5, a6])
2014-04-09 07:48:35 -07:00
}
static print(a1, a2, a3, a4, a5, a6, a7) {
2015-07-18 14:09:00 -07:00
printAll([a1, a2, a3, a4, a5, a6, a7])
2014-04-09 07:48:35 -07:00
}
static print(a1, a2, a3, a4, a5, a6, a7, a8) {
2015-07-18 14:09:00 -07:00
printAll([a1, a2, a3, a4, a5, a6, a7, a8])
2014-04-09 07:48:35 -07:00
}
static print(a1, a2, a3, a4, a5, a6, a7, a8, a9) {
2015-07-18 14:09:00 -07:00
printAll([a1, a2, a3, a4, a5, a6, a7, a8, a9])
2014-04-09 07:48:35 -07:00
}
static print(a1, a2, a3, a4, a5, a6, a7, a8, a9, a10) {
2015-07-18 14:09:00 -07:00
printAll([a1, a2, a3, a4, a5, a6, a7, a8, a9, a10])
2014-04-09 07:48:35 -07:00
}
static print(a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11) {
2015-07-18 14:09:00 -07:00
printAll([a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11])
2014-04-09 07:48:35 -07:00
}
static print(a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11, a12) {
2015-07-18 14:09:00 -07:00
printAll([a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11, a12])
2014-04-09 07:48:35 -07:00
}
static print(a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11, a12, a13) {
2015-07-18 14:09:00 -07:00
printAll([a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11, a12, a13])
2014-04-09 07:48:35 -07:00
}
static print(a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11, a12, a13, a14) {
2015-07-18 14:09:00 -07:00
printAll([a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11, a12, a13, a14])
2014-04-09 07:48:35 -07:00
}
static print(a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11, a12, a13, a14, a15) {
2015-07-18 14:09:00 -07:00
printAll([a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11, a12, a13, a14, a15])
2014-04-09 07:48:35 -07:00
}
static print(a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11, a12, a13, a14, a15, a16) {
2015-07-18 14:09:00 -07:00
printAll([a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11, a12, a13, a14, a15, a16])
2014-04-09 07:48:35 -07:00
}
2015-07-18 14:09:00 -07:00
static printAll(sequence) {
for (object in sequence) writeObject_(object)
writeString_("\n")
2014-04-09 07:48:35 -07:00
}
2014-02-04 08:44:59 -08:00
static write(obj) {
2015-07-18 14:09:00 -07:00
writeObject_(obj)
2014-02-04 08:44:59 -08:00
return obj
}
2015-01-02 11:07:43 -05:00
static read(prompt) {
2015-01-11 21:47:29 -08:00
if (!(prompt is String)) Fiber.abort("Prompt must be a string.")
2015-07-18 14:09:00 -07:00
write(prompt)
return read()
2015-01-02 11:07:43 -05:00
}
static writeObject_(obj) {
var string = obj.toString
if (string is String) {
2015-07-18 14:09:00 -07:00
writeString_(string)
} else {
2015-07-18 14:09:00 -07:00
writeString_("[invalid toString]")
}
}
foreign static writeString_(string)
foreign static clock
foreign static time
2015-07-18 14:09:00 -07:00
foreign static read()
2014-02-04 08:44:59 -08:00
}