summaryrefslogtreecommitdiffstats
blob: 955227f68430225f4909087a7e2386f452ce23ce (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
/*
 * Copyright (c) 2010-2012 Remko Tronçon
 * Licensed under the GNU General Public License v3.
 * See Documentation/Licenses/GPLv3.txt for more information.
 */

#pragma once

#include <iostream>

namespace Swift {
	extern bool logging;
	namespace LogDetail {
		// Only here to be able to statically check the correctness of the severity levers
		namespace Severity {
			enum {
				debug, warning, error
			};
		}
	}
}

#define SWIFT_LOG(severity) \
	if (!Swift::logging) {} else (void) LogDetail::Severity::severity, std::cerr << "[" << #severity << "] " << __FILE__ << ":" << __LINE__ << " " << __FUNCTION__ << ": "