Documentation
¶
Overview ¶
Package memlint implements a static analyzer that enforces MemPipe's zero-allocation invariants on functions annotated with //mem:hot and //mem:nogc directives.
Rules:
ML001: No interface{}/any parameters or variables in //mem:hot functions
ML002: No make/new/append calls in //mem:nogc functions
ML003: No reflect usage in //mem:hot functions
ML004: No closures or defer in //mem:nogc functions (likely heap escape)
ML005: No ReadField/WriteField calls (use typed API instead)
Index ¶
Constants ¶
This section is empty.
Variables ¶
View Source
var Analyzer = &analysis.Analyzer{ Name: "memlint", Doc: "enforces MemPipe zero-allocation invariants on //mem:hot and //mem:nogc functions", Requires: []*analysis.Analyzer{inspect.Analyzer}, Run: run, }
Analyzer is the memlint analysis pass.
Functions ¶
This section is empty.
Types ¶
This section is empty.
Click to show internal directories.
Click to hide internal directories.