InversionList.this

Construct a set from plain values of code point intervals.

  1. this(Set set)
  2. this(Range intervals)
  3. this(uint[] intervals)
    struct InversionList(SP = GcPolicy)
    this
    ()
    ()

Examples

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]);

Meta

Suggestion Box / Bug Report