Source File
levelhandler.go
Belonging Package
oss.terrastruct.com/d2/lib/log
// Copied from https://pkg.go.dev/log/slog#Handlerpackage logimport ()// A LevelHandler wraps a Handler with an Enabled method// that returns false for levels below a minimum.type LevelHandler struct {level slog.Levelerhandler slog.Handler}// NewLevelHandler returns a LevelHandler with the given level.// All methods except Enabled delegate to h.func ( slog.Leveler, slog.Handler) *LevelHandler {// Optimization: avoid chains of LevelHandlers.if , := .(*LevelHandler); {= .Handler()}return &LevelHandler{, }}// Enabled implements Handler.Enabled by reporting whether// level is at least as large as h's level.func ( *LevelHandler) ( context.Context, slog.Level) bool {return >= .level.Level()}// Handle implements Handler.Handle.func ( *LevelHandler) ( context.Context, slog.Record) error {return .handler.Handle(, )}// WithAttrs implements Handler.WithAttrs.func ( *LevelHandler) ( []slog.Attr) slog.Handler {return NewLevelHandler(.level, .handler.WithAttrs())}// WithGroup implements Handler.WithGroup.func ( *LevelHandler) ( string) slog.Handler {return NewLevelHandler(.level, .handler.WithGroup())}// Handler returns the Handler wrapped by h.func ( *LevelHandler) () slog.Handler {return .handler}
![]() |
The pages are generated with Golds v0.8.2. (GOOS=linux GOARCH=amd64) Golds is a Go 101 project developed by Tapir Liu. PR and bug reports are welcome and can be submitted to the issue list. Please follow @zigo_101 (reachable from the left QR code) to get the latest news of Golds. |