/* ====================================================================
* Copyright (c) 2003-2006, Martin Hauner
* http://subcommander.tigris.org
*
* Subcommander is licensed as described in the file doc/COPYING, which
* you should have received as part of this distribution.
* ====================================================================
*/
#ifndef _SC_UTIL_ERRORIMPL_H
#define _SC_UTIL_ERRORIMPL_H
// sc
#include "Error.h"
namespace sc
{
/**
* an implementation of \sa sc::Error
*/
class ErrorImpl : public Error
{
public:
ErrorImpl( const ErrorImpl& );
ErrorImpl( long code, const String& msg );
ErrorImpl( long code, const String& msg, const Error* nested );
// @{
long getCode() const;
String getMessage() const;
String getMessages() const;
const Error* getNested() const;
// @}
private:
long _code;
String _msg;
const Error* _nested;
};
} // namespace
#if 0
/** factory "methods" for Errors with file and line information */
#define createError(code,msg) (new sc::Error(code,msg,__FILE__,__LINE__))
#define createErrorW(code,msg,nested) (new sc::Error(code,msg,nested,__FILE__,__LINE__))
#endif
#endif // _SC_UTIL_ERRORIMPL_H
syntax highlighted by Code2HTML, v. 0.9.1