GString.opApply

Enables the use of foreach (Grapheme; ...) statements.

  1. int opApply(int delegate(Grapheme) @(safe) dg)
    struct GString(CharT)
    int
    opApply
    (
    scope int delegate
    (
    Grapheme
    )
    @safe
    dg
    )
    if (
    isSomeChar!CharT
    )
  2. int opApply(int delegate(size_t index, Grapheme) @(safe) dg)

Examples

auto t1 = typeof(this)("Test R̆ȧm͆b̪õ");
StringT nakedString;
StringT nakedExpected = "Test Rambo";
foreach (g; t1) {
  nakedString ~= g[0];
}
assert(nakedString == nakedExpected);

Meta