mirror of
https://github.com/xomboverlord/ldc.git
synced 2026-08-05 22:10:04 +02:00
[svn r136] MAJOR UNSTABLE UPDATE!!!
Initial commit after moving to Tango instead of Phobos. Lots of bugfixes... This build is not suitable for most things.
This commit is contained in:
42
tango/example/external/GlueFlectioned.d
vendored
Normal file
42
tango/example/external/GlueFlectioned.d
vendored
Normal file
@@ -0,0 +1,42 @@
|
||||
import tango.core.Exception;
|
||||
import cn.kuehne.flectioned;
|
||||
|
||||
|
||||
TracedExceptionInfo traceHandler( void* ptr = null )
|
||||
{
|
||||
class FlectionedTrace :
|
||||
TracedExceptionInfo
|
||||
{
|
||||
this( void* ptr = null )
|
||||
{
|
||||
if( ptr )
|
||||
m_trace = Trace.getTrace( cast(size_t) ptr );
|
||||
else
|
||||
m_trace = Trace.getTrace();
|
||||
}
|
||||
|
||||
int opApply( int delegate( inout char[] ) dg )
|
||||
{
|
||||
int ret = 0;
|
||||
foreach( t; m_trace )
|
||||
{
|
||||
char[] buf = t.toString;
|
||||
ret = dg( buf );
|
||||
if( ret != 0 )
|
||||
break;
|
||||
}
|
||||
return ret;
|
||||
}
|
||||
|
||||
private:
|
||||
Trace[] m_trace;
|
||||
}
|
||||
|
||||
return new FlectionedTrace( ptr );
|
||||
}
|
||||
|
||||
|
||||
static this()
|
||||
{
|
||||
setTraceHandler( &traceHandler );
|
||||
}
|
||||
Reference in New Issue
Block a user