diff options
Diffstat (limited to 'src/main.zig')
| -rw-r--r-- | src/main.zig | 13 |
1 files changed, 5 insertions, 8 deletions
diff --git a/src/main.zig b/src/main.zig index 61ab139..9e74016 100644 --- a/src/main.zig +++ b/src/main.zig @@ -130,14 +130,11 @@ fn ref_name(_: std.mem.Allocator, w: std.io.AnyWriter, refname: []const u8) anye } fn template(allocator: std.mem.Allocator, w: std.io.AnyWriter, refname: []const u8) anyerror!void { - if (std.mem.startsWith(u8, refname, "/")) { - return try portal(allocator, w, refname[1..], false); - } else if (std.mem.startsWith(u8, refname, "@")) { - return try ref_link(allocator, w, refname[1..]); - } else if (std.mem.startsWith(u8, refname, "+")) { - return try ref_name(allocator, w, refname[1..]); - } else { - return try ref(allocator, w, refname); + switch (refname[0]) { + '/' => return try portal(allocator, w, refname[1..], false), + '@' => return try ref_link(allocator, w, refname[1..]), + '+' => return try ref_name(allocator, w, refname[1..]), + else => return try ref(allocator, w, refname), } } |