package godebug
import "internal/godebug"
Package godebug makes the settings in the $GODEBUG environment variable available to other packages. These settings are often used for compatibility tweaks, when we need to change a default behavior but want to let users opt back in to the original. For example GODEBUG=http2server=0 disables HTTP/2 support in the net/http server.
In typical usage, code should declare a Setting as a global and then call Value each time the current setting value is needed:
var http2server = godebug.New("http2server") func ServeConn(c net.Conn) { if http2server.Value() == "0" { disallow HTTP/2 ... } ... }
Index ¶
Types ¶
type Setting ¶
type Setting struct {
// contains filtered or unexported fields
}
A Setting is a single setting in the $GODEBUG environment variable.
func New ¶
New returns a new Setting for the $GODEBUG setting with the given name.
func (*Setting) Name ¶
Name returns the name of the setting.
func (*Setting) String ¶
String returns a printable form for the setting: name=value.
func (*Setting) Value ¶
Value returns the current value for the GODEBUG setting s.
Value maintains an internal cache that is synchronized with changes to the $GODEBUG environment variable, making Value efficient to call as frequently as needed. Clients should therefore typically not attempt their own caching of Value's result.
Source Files ¶
- Version
- v1.20.13
- Published
- Jan 4, 2024
- Platform
- linux/amd64
- Imports
- 3 packages
- Last checked
- 1 minute ago –
Tools for package owners.