Report a bug
If you spot a problem with this page, click here to create a Bugzilla issue.
Improve this page
Quickly fork, edit online, and submit a pull request for this page.
Requires a signed-in GitHub account. This works well for small changes.
If you'd like to make larger changes you may want to consider using
a local clone.
rt.dmain2
Contains druntime startup and shutdown routines.
License:
Distributed under the
Boost Software License 1.0.
(See accompanying file LICENSE)
Authors:
Walter Bright, Sean Kelly
Source rt/dmain2.d
- void*
gc_getProxy
(); - These are a temporary means of providing a GC hook for DLL use. They may be replaced with some other similar functionality later.
- void
gc_setProxy
(void*p
); - These are a temporary means of providing a GC hook for DLL use. They may be replaced with some other similar functionality later.
- void
gc_clrProxy
(); - These are a temporary means of providing a GC hook for DLL use. They may be replaced with some other similar functionality later.
- alias
gcGetFn
= extern (C) void* function(); - These are a temporary means of providing a GC hook for DLL use. They may be replaced with some other similar functionality later.
- alias
gcSetFn
= extern (C) void function(void*); - These are a temporary means of providing a GC hook for DLL use. They may be replaced with some other similar functionality later.
- alias
gcClrFn
= extern (C) void function(); - These are a temporary means of providing a GC hook for DLL use. They may be replaced with some other similar functionality later.
- shared size_t
_initCount
; - Keep track of how often rt_init/rt_term were called.
- int
rt_init
(); - Initialize druntime. If a C program wishes to call D code, and there's no D main(), then it must call rt_init() and rt_term().
- int
rt_term
(); - Terminate use of druntime.
- alias
TraceHandler
= TraceInfo function(void* ptr); - Trace handler
- void
rt_setTraceHandler
(TraceHandlerh
); - Overrides the default trace hander with a user-supplied version.Parameters:
TraceHandler h
The new trace handler. Set to null to use the default handler. - TraceHandler
rt_getTraceHandler
(); - Return the current trace handler
- Throwable.TraceInfo
_d_traceContext
(void*ptr
= null); - This function will be called when an exception is constructed. The user-supplied trace handler will be called if one has been supplied, otherwise no trace will be generated.Parameters:
void* ptr
A pointer to the location from which to generate the trace, or null if the trace should be generated from within the trace handler itself. Returns:An object describing the current calling context or null if no handler is supplied. - struct
CArgs
; - Provide out-of-band access to the original C argc/argv passed to this program via main(argc,argv).
- int
_d_run_main
(intargc
, char**argv
, MainFuncmainFunc
); - Sets up the D char[][] command-line args, initializes druntime, runs embedded unittests and then runs the given D main() function, optionally catching and printing any unhandled exceptions.
Copyright © 1999-2022 by the D Language Foundation | Page generated by
Ddoc on (no date time)