DMDComponent

Undocumented in source.

Members

Functions

measure
Future!DMDMeasureReturn measure(const(char)[] code, string[] dmdArguments, int count, int timeoutMsecs)
measureSync
DMDMeasureReturn measureSync(const(char)[] code, string[] dmdArguments, int count, int timeoutMsecs)

Tries to compile a snippet of code with the import paths in the current directory. The arguments -c -o- are implicit. The sync function may be used to prevent other measures from running while this is running.

path
string path()
Undocumented in source. Be warned that the author may not have intended to support it.

Mixins

__anonymous
mixin DefaultComponentWrapper
Undocumented in source.

Mixed In Members

From mixin DefaultComponentWrapper

workspaced
WorkspaceD workspaced;
Undocumented in source.
refInstance
WorkspaceD.Instance refInstance;
Undocumented in source.
_threads
TaskPool _threads;
Undocumented in source.
~this
~this()
Undocumented in source.
gthreads
TaskPool gthreads()
Undocumented in source. Be warned that the author may not have intended to support it.
threads
TaskPool threads(int minSize, int maxSize)
Undocumented in source. Be warned that the author may not have intended to support it.
instance
inout(WorkspaceD.Instance) instance()
Undocumented in source. Be warned that the author may not have intended to support it.
instance
WorkspaceD.Instance instance(WorkspaceD.Instance instance)
Undocumented in source. Be warned that the author may not have intended to support it.
importPaths
string[] importPaths()
Undocumented in source. Be warned that the author may not have intended to support it.
stringImportPaths
string[] stringImportPaths()
Undocumented in source. Be warned that the author may not have intended to support it.
importFiles
string[] importFiles()
Undocumented in source. Be warned that the author may not have intended to support it.
projectVersions
string[] projectVersions()

Lists the project defined version identifiers, if provided by any identifier

debugSpecifications
string[] debugSpecifications()

Lists the project defined debug specification identifiers, if provided by any provider

importPathProvider
inout(ImportPathProvider) importPathProvider()
Undocumented in source. Be warned that the author may not have intended to support it.
stringImportPathProvider
inout(ImportPathProvider) stringImportPathProvider()
Undocumented in source. Be warned that the author may not have intended to support it.
importFilesProvider
inout(ImportPathProvider) importFilesProvider()
Undocumented in source. Be warned that the author may not have intended to support it.
projectVersionsProvider
inout(IdentifierListProvider) projectVersionsProvider()
Undocumented in source. Be warned that the author may not have intended to support it.
debugSpecificationsProvider
inout(IdentifierListProvider) debugSpecificationsProvider()
Undocumented in source. Be warned that the author may not have intended to support it.
config
inout(Configuration) config()
Undocumented in source. Be warned that the author may not have intended to support it.
has
bool has()
Undocumented in source. Be warned that the author may not have intended to support it.
get
T get()
Undocumented in source. Be warned that the author may not have intended to support it.
cwd
string cwd()
Undocumented in source. Be warned that the author may not have intended to support it.
shutdown
void shutdown(bool dtor)
Undocumented in source. Be warned that the author may not have intended to support it.
bind
void bind(WorkspaceD workspaced, WorkspaceD.Instance instance)
Undocumented in source. Be warned that the author may not have intended to support it.

Inherited Members

From ComponentWrapper

bind
void bind(WorkspaceD workspaced, WorkspaceD.Instance instance)
Undocumented in source.
shutdown
void shutdown(bool dtor)
Undocumented in source.

Examples

scope backend = new WorkspaceD();
auto workspace = makeTemporaryTestingWorkspace;
auto instance = backend.addInstance(workspace.directory);
backend.register!DMDComponent;
auto measure = backend.get!DMDComponent(workspace.directory)
	.measure("import std.stdio;", null, 100).getBlocking;
assert(measure.success);
assert(measure.duration < 5.seconds);

Meta