
See script directory for method. The script to run in the top level MaxScale directory is called maxscale-uncrustify.sh, which uses another script, list-src, from the same directory (so you need to set your PATH). The uncrustify version was 0.66.
52 lines
1.2 KiB
C++
52 lines
1.2 KiB
C++
/*
|
|
* Copyright (c) 2018 MariaDB Corporation Ab
|
|
*
|
|
* Use of this software is governed by the Business Source License included
|
|
* in the LICENSE.TXT file and at www.mariadb.com/bsl11.
|
|
*
|
|
* Change Date: 2022-01-01
|
|
*
|
|
* On the date above, in accordance with the Business Source License, use
|
|
* of this software will be governed by version 2 or later of the General
|
|
* Public License.
|
|
*/
|
|
|
|
#pragma once
|
|
|
|
#include <stdexcept>
|
|
#include <sstream>
|
|
|
|
namespace base
|
|
{
|
|
|
|
// TODO Add back trace.
|
|
class AppException : public std::runtime_error
|
|
{
|
|
public:
|
|
AppException(const std::string& msg,
|
|
const std::string& file,
|
|
int line)
|
|
: std::runtime_error(msg)
|
|
, m_file(file)
|
|
, m_line(line)
|
|
{
|
|
}
|
|
private:
|
|
std::string m_file;
|
|
int m_line;
|
|
};
|
|
} // base
|
|
|
|
#define DEFINE_EXCEPTION(Type) \
|
|
struct Type : public base::AppException { \
|
|
Type(const std::string& msg, \
|
|
const char* file, \
|
|
int line) \
|
|
: AppException(msg, file, line) {} }
|
|
|
|
#define THROW(Type, msg_str) \
|
|
do { \
|
|
std::ostringstream os; \
|
|
os << __FILE__ << ':' << __LINE__ << '\n' << msg_str; \
|
|
throw Type(os.str(), __FILE__, __LINE__);} while (false)
|