1 import std.algorithm.comparison : equal; 2 3 auto set = CodepointSet('a', 'z'+1, 'а', 'я'+1); 4 foreach (v; 'a'..'z'+1) 5 assert(set[v]); 6 // Cyrillic lowercase interval 7 foreach (v; 'а'..'я'+1) 8 assert(set[v]); 9 //specific order is not required, intervals may interesect 10 auto set2 = CodepointSet('а', 'я'+1, 'a', 'd', 'b', 'z'+1); 11 //the same end result 12 assert(set2.byInterval.equal(set.byInterval)); 13 // test constructor this(Range)(Range intervals) 14 auto chessPiecesWhite = CodepointInterval(9812, 9818); 15 auto chessPiecesBlack = CodepointInterval(9818, 9824); 16 auto set3 = CodepointSet([chessPiecesWhite, chessPiecesBlack]); 17 foreach (v; '♔'..'♟'+1) 18 assert(set3[v]);
Construct a set from plain values of code point intervals.