Example #1
0
ResUse
Query::use(const SQLString& str)
{
	if ((parse_elems_.size() == 2) && !def.processing_) {
		// We're a template query and we haven't gone through this path
		// before, so take str to be a lone parameter for the query.
		// We will come back through this function with a completed
		// query, but the processing_ flag will be reset, allowing us to
		// take the 'else' path, avoiding an infinite loop.
		AutoFlag<> af(def.processing_);
		return use(SQLQueryParms() << str);
	}
	else {
		// Take str to be the entire query string
		return use(str.data(), str.length());
	}
}
/* {{{ LibmysqlDynamicProxy::LibmysqlDynamicProxy() */
LibmysqlDynamicProxy::LibmysqlDynamicProxy(const SQLString & dir2look, const SQLString & libFileName)
	: LibraryLoader(dir2look.asStdString(), libFileName.length() > 0 ? libFileName.asStdString() : baseName)
{
	init_loader();
}
/* {{{ LibmysqlDynamicProxy::LibmysqlDynamicProxy() */
LibmysqlDynamicProxy::LibmysqlDynamicProxy(const SQLString & path2libFile)
	: LibraryLoader(path2libFile.length() > 0 ? path2libFile.asStdString() : baseName)
{
	init_loader();
}