On Saturday, August 20, 2011 18:10:01 Nick Sabalausky wrote: > From: "Dmitry Olshansky" <[email protected]> > > > On 20.08.2011 12:39, Rainer Schuetze wrote: > >> 3. I tried to remove some more (currently soft) deprecation messages > >> regarding std.ctype, and it turned out that it was a bit of a hassle > >> to get it to compile because I had to mix both std.ascii and std.uni. > >> This is happening because I'd like to use the isAlpha from std.uni, > >> but there are other functions missing from std.uni (like isDigit, > >> isHexDigit, etc.). > >> > >> I think this was discussed before, but I'm not sure what the > >> conclusion was. I suggest adding some forwarding aliases to std.uni > >> for function that have identical implementation, and ensure that the > >> compiler does not complain about ambiguities if these are just aliases > >> to the same symbol. > > > > Recalling last discussion on this, the users have to solve this on their > > own. Be it use unicode everywhere or full std.ascii.xxx/std.uni.xxx or > > whatever. I ended up using renamed imports. > > There's a simple alias trick that works very well for that sort of thing: > > ------------------------ > module m1; > void a() {}; > void b() {}; > ------------------------ > module m2; > void b() {}; > void c() {}; > ------------------------ > module main; > import m1 > import m2; > > // Nifty trick: Pull m1's b() into local scope, > // effectively"prioritizing" it. > private alias m1.b b; > > void main() { > b(); // Works: Calls m1.b() > } > ------------------------
In theory, that's a great solution, but it doesn't work right now: http://d.puremagic.com/issues/show_bug.cgi?id=6013 - Jonathan M Davis _______________________________________________ dmd-beta mailing list [email protected] http://lists.puremagic.com/mailman/listinfo/dmd-beta
