Imports #
"strings"
"strings"
var allImplementations []implementation
type implementation struct {
Package string
Name string
Available bool
Toggle *bool
}
List returns the names of all alternative implementations registered for the given package, whether available or not. The implicit base implementation is not included.
func List(pkg string) []string
Register records an alternative implementation of a cryptographic primitive. The implementation might be available or not based on CPU support. If available is false, the implementation is unavailable and can't be tested on this machine. If available is true, it can be set to false to disable the implementation. If all alternative implementations but one are disabled, the remaining one must be used (i.e. disabling one implementation must not implicitly disable any other). Each package has an implicit base implementation that is selected when all alternatives are unavailable or disabled. pkg must be the package name, not path (e.g. "aes" not "crypto/aes").
func Register(pkg string, name string, available *bool)
func Reset(pkg string)
Select disables all implementations for the given package except the one with the given name. If name is empty, the base implementation is selected. It returns whether the selected implementation is available.
func Select(pkg string, name string) bool
func available(pkg string, name string) bool
Generated with Arrow