File indexing completed on 2025-02-23 05:15:17
0001 // 0002 // Copyright (C) 2004-2006 Maciej Sobczak, Stephen Hutton 0003 // MySQL backend copyright (C) 2006 Pawel Aleksander Fedorynski 0004 // Distributed under the Boost Software License, Version 1.0. 0005 // (See accompanying file LICENSE_1_0.txt or copy at 0006 // http://www.boost.org/LICENSE_1_0.txt) 0007 // 0008 0009 #define SOCI_MYSQL_SOURCE 0010 #include "soci/mysql/soci-mysql.h" 0011 #include "soci/backend-loader.h" 0012 #include <ciso646> 0013 0014 #ifdef _MSC_VER 0015 #pragma warning(disable:4355) 0016 #endif 0017 0018 using namespace soci; 0019 using namespace soci::details; 0020 0021 0022 // concrete factory for MySQL concrete strategies 0023 mysql_session_backend * mysql_backend_factory::make_session( 0024 connection_parameters const & parameters) const 0025 { 0026 return new mysql_session_backend(parameters); 0027 } 0028 0029 mysql_backend_factory const soci::mysql; 0030 0031 extern "C" 0032 { 0033 0034 // for dynamic backend loading 0035 SOCI_MYSQL_DECL backend_factory const * factory_mysql() 0036 { 0037 return &soci::mysql; 0038 } 0039 0040 SOCI_MYSQL_DECL void register_factory_mysql() 0041 { 0042 soci::dynamic_backends::register_backend("mysql", soci::mysql); 0043 } 0044 0045 } // extern "C"