Mercurial > projects > ldc
view gen/logger.h @ 32:a86fe7496b58 trunk
[svn r36] * Fixed a bug where passing a regular argument to a ref argument did not allocate storage
author | lindquist |
---|---|
date | Thu, 04 Oct 2007 18:24:05 +0200 |
parents | c53b6e3fe49a |
children | 27b2f40bdb58 |
line wrap: on
line source
#ifndef _llvmd_gen_logger_h_ #define _llvmd_gen_logger_h_ #include <iostream> namespace Logger { #ifndef LLVMD_NO_LOGGER void indent(); void undent(); std::ostream& cout(); void println(const char* fmt,...); void print(const char* fmt,...); #else inline void indent() {} inline void undent() {} inline std::ostream& cout() { return std::cout; } inline void println(const char* fmt, ...) {} inline void print(const char* fmt, ...) {} #endif struct LoggerScope { LoggerScope() { #ifndef LLVMD_NO_LOGGER //std::cout << "-->indented\n"; Logger::indent(); #endif } ~LoggerScope() { #ifndef LLVMD_NO_LOGGER //std::cout << "<--undented\n"; Logger::undent(); #endif } }; } #ifndef LLVMD_NO_LOGGER #define LOG_SCOPE Logger::LoggerScope _logscope; #else #define LOG_SCOPE #endif #endif