extending 'import' using 'with'
w0rp via Digitalmars-d
digitalmars-d at puremagic.com
Wed Apr 1 05:09:23 PDT 2015
On Wednesday, 1 April 2015 at 10:21:46 UTC, Mike James wrote:
> Just a thought...
>
> How about adding the keyword 'with' to 'import' to save on
> typing :-)
>
> import org.eclipse.swt.widgets.Canvas,
> org.eclipse.swt.widgets.Composite,
> org.eclipse.swt.events.DisposeListener,
> org.eclipse.swt.events.DisposeEvent,
> org.eclipse.swt.events.PaintListener,
> org.eclipse.swt.events.PaintEvent;
>
> import with (org.eclipse.swt) {
> widgets.Canvas,
> widgets.Composite,
> events.DisposeListener,
> events.DisposeEvent,
> events.PaintListener,
> events.PaintEvent;
> }
>
>
> Regards,
>
> -=mike=-
string importSubmodules(string rootModuleName, string[]
subModuleNames) {
import std.algorithm;
import std.array;
string prefix = "import " ~ rootModuleName ~ '.';
return subModuleNames.map!(name => prefix ~ name ~ ';').join
}
mixin(importSubmodules("org.eclipse.swt", [
"widgets.Canvas",
"widgets.Composite",
"events.DisposeListener",
"events.DisposeEvent",
"events.PaintListener",
"events.PaintEvent"
]));
Of course, why be clever here at all and do such things? It's an
editor problem. Write the full import lines out, and if you hate
typing out the path each time, use tricks in your editor to make
that easier, or use an IDE.
More information about the Digitalmars-d
mailing list