1 alias T = string; // expected type
2 alias E = byte;
3
4 alias Esi = Expected!(T, byte);
5
6 // equality checks
7 assert(Esi("abc") == Esi("abc"));
8 assert(Esi("abcabc"[0 .. 3]) ==
9 Esi("abcabc"[3 .. 6]));
10
11 auto x = Esi("abc");
12 assert(x.hasExpectedValue);
13 assert(!x.empty);
14 assert(x.apply!(threeUnderscores) == Esi("___"));
15
16 x.popFront();
17 assert(!x.hasExpectedValue);
18 assert(x.empty);
19
20 auto y = unexpected!(T, byte)(byte.init);
21 assert(!y.hasExpectedValue);
22 assert(x.empty);
23 assert(y.apply!(threeUnderscores) == Esi(Unexpected!byte(byte.init)));
Insantiator for Expected from an unexpected value unexpectedValue.