Support printing Regular_Expression in fmt

This commit is contained in:
Feoramund
2024-07-21 23:17:18 -04:00
parent cb0704d51c
commit 730e10bd6f

View File

@@ -9,6 +9,7 @@ import "core:io"
import "core:reflect"
import "core:strconv"
import "core:strings"
import "core:text/regex"
import "core:time"
import "core:unicode/utf8"
@@ -2405,6 +2406,21 @@ fmt_named :: proc(fi: ^Info, v: any, verb: rune, info: runtime.Type_Info_Named)
write_padded_number(fi, (ns), 9)
io.write_string(fi.writer, " +0000 UTC", &fi.n)
return
case regex.Regular_Expression:
io.write_byte(fi.writer, '/')
for r in a.original_pattern {
if r == '/' {
io.write_string(fi.writer, `\/`)
} else {
io.write_rune(fi.writer, r)
}
}
io.write_byte(fi.writer, '/')
for flag in a.flags {
io.write_byte(fi.writer, regex.Flag_To_Letter[flag])
}
return
}
}