Templates with strings

Mike Linford mike.linford.reg at gmail.com
Sat Jul 3 16:23:15 PDT 2010


I'm trying to compile the following file. Can somebody explain to me how 
I can rewrite it so that I don't get "Error: non-constant expression"? 
All I'm trying to do is create, using templates, a string of all 
characters between two given characters:

  1 module ua;
  2 
  3 template dcharInterval(immutable(dchar) start, immutable(dchar) stop)
  4 {
  5    static assert(stop >= start);
  6    static if(start == stop)
  7       dstring dcharInterval = [start];
  8    else
  9       dstring dcharInterval = [start] ~ dcharInterval!(start + 1, 
stop);
 10 }
 11 
 12 dstring LATIN = "\u00AA"d ~ "\u00BA"d ~ dcharInterval!(0x00C0, 
0x00D6);
 13 

Thanks.

-- 
Mike Linford


More information about the Digitalmars-d-learn mailing list