15 #ifndef LUA_JAILBREAK_EXCEPTION
16 #define LUA_JAILBREAK_EXCEPTION
32 void store()
const throw();
49 static
void clear() throw();
88 #define IMPLEMENT_LUA_JAILBREAK_EXCEPTION(type) \
90 virtual type* clone() const { return new type(*this); } \
92 virtual void execute() \
94 type exception(dynamic_cast<type&>(*jailbreak_exception)); \
void store() const
Stores a copy the current exception to be rethrown.
virtual tlua_jailbreak_exception * clone() const =0
Creates a copy of the current exception.
static void clear()
Clears the current exception.
static tlua_jailbreak_exception * jailbreak_exception
The exception to be rethrown.
static void rethrow()
Rethrows the stored exception.
Base class for exceptions that want to be thrown 'through' lua.
virtual ~tlua_jailbreak_exception()
virtual void execute()=0
Executes the exception.