From 5318a1b5b12d2836b23eb6b706f96f0247f2144a Mon Sep 17 00:00:00 2001 From: Russ Cox Date: Wed, 15 Oct 2014 13:10:14 -0400 Subject: database/sql: add Drivers, returning list of registered drivers Fixes #7969. LGTM=bradfitz R=bradfitz CC=golang-codereviews https://golang.org/cl/158950043 --- src/database/sql/sql.go | 11 +++++++++++ 1 file changed, 11 insertions(+) (limited to 'src/database/sql/sql.go') diff --git a/src/database/sql/sql.go b/src/database/sql/sql.go index 731b7a7f79..ad9179cf7d 100644 --- a/src/database/sql/sql.go +++ b/src/database/sql/sql.go @@ -18,6 +18,7 @@ import ( "fmt" "io" "runtime" + "sort" "sync" ) @@ -36,6 +37,16 @@ func Register(name string, driver driver.Driver) { drivers[name] = driver } +// Drivers returns a sorted list of the names of the registered drivers. +func Drivers() []string { + var list []string + for name := range drivers { + list = append(list, name) + } + sort.Strings(list) + return list +} + // RawBytes is a byte slice that holds a reference to memory owned by // the database itself. After a Scan into a RawBytes, the slice is only // valid until the next call to Next, Scan, or Close. -- cgit v1.3