Analyzer::Zig::Httpz
Inherits Analyzer < FileHelper < Reference < Object
http.zig (httpz) registers routes on a router object:
router.get("/api/user/:id", getUser, .{}); router.post("/api/users", createUser, .{}); router.all("/*", notFound, .{}); router.method("TEA", "/", teaList, .{});
Prefixed groups compose: var admin = router.group("/admin", .{});
followed by admin.get("/users", …) yields /admin/users. The handler
is the second argument; its function body supplies the callees.
Constants
The handler is the 2nd argument. It can be a plain/qualified identifier
(getUser, Users.list) or a @"…" quoted identifier — Zig spells a
reserved word used as a name that way, so router.get("/error", @"error")
is idiomatic. The @"…" alternative keeps that form from being dropped.
Cheap routing-signal gate: one precompiled Regex.union scan (PCRE2
JIT) instead of two naive String#includes? char scans. Equivalent to
includes?("(\"/") || includes?(".group(").
Class methods
Instance methods
Instance-side view of the same declaration. The per-file rescues live on
this base class, which has no way to name the analyzer that is running
inside them, so a skipped file could not be attributed to a tech.
Deriving it from analyzer_for keeps the name written exactly once.