class

Analyzer::Go::Pocketbase

Inherits Analyzer::Go::GoEngine < Analyzer::Go::GoTestPath < Analyzer < FileHelper < Reference < Object

Pocketbase ships its own HTTP router under github.com/pocketbase/pocketbase/tools/router. The DSL mirrors Echo/Gin (rg.GET("/x", handler), rg.Group("/api")), so the shared TreeSitterGoRouteExtractor already handles the call shapes — this analyzer just wires the import marker so noir opts the framework's source files into the same pipeline. The marker is the module root: a stock app imports only pocketbase and core and registers on se.Router inside app.OnServe().BindFunc(...).

Constants

BUILDER_TYPE = "*router.RouterGroup"

func bindBackupApi(app core.App, rg *router.RouterGroup[*core.RequestEvent]).

IMPORT_MARKER = "github.com/pocketbase/pocketbase"
LITERAL = /"(?:[^"\\]|\\.)*"|`[^`]*`|'(?:[^'\\]|\\.)*'/

A Go string or rune literal on one line.

Class methods

tech_name
Source

Instance methods

analyze
Source
tech

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.

Source