Open
Description
Issue description
I'd like to know if the maintainers of this package would be open to expose internal types to allow the driver to be integrated with more than the standard database/sql package?
One of the upsides would be the ability to bypass database/sql on hot code paths to work around the inefficiencies of its design (using interfaces causes massive amounts of extra dynamic memory allocations).
I'll be happy to submit a pull request to make this change if you guys feel like this would be a good change to make.
Example code
Here's how I imagine one could use it:
// Adding this method to the driver would allow the program to open a MySQL connection
// which it would have to maintain, but now it has access to a concrete type which gives
// opportunities for the compiler to generate more efficient code wherever it is used.
func (MySQLDriver) OpenConn(ctx context.Context, dsn string) (*Conn, error) {
...
}